ndb-mcp-server

ndb-mcp-serverは、TypeScriptで構築されたサーバーアプリケーションで、データベースとの連携を容易にし、効率的なデータ処理を実現します。特に、非同期処理やAPIとの統合が得意で、開発者にとって使いやすいインターフェースを提供します。

GitHubスター

0

ユーザー評価

未評価

お気に入り

0

閲覧数

50

フォーク

0

イシュー

0

README
NDB MCP Server

A Model Context Protocol server that enables Claude Desktop and other MCP-compatible AI assistants to manage Nutanix Database Service (NDB) environments through natural language.

Transform complex database operations into simple conversations: "Create a clone of the sales database for testing" or "Show me all databases with backup issues".

Quick Start
Prerequisites
  • Node.js 18.0.0 or later
  • NDB Environment with API access
  • Valid credentials with appropriate permissions
Installation
  1. Clone and setup:

    git clone https://github.com/rouxton/ndb-mcp-server.git
    cd ndb-mcp-server
    
    # Run the automated setup script
    ./scripts/setup.sh                                    # Unix/Linux/macOS
    # or
    PowerShell -ExecutionPolicy Bypass -File scripts/setup.ps1  # Windows PowerShell
    

    The setup script handles everything: dependencies, building, configuration, testing, and prepares for Claude Desktop integration.

  2. Configure Claude Desktop:

    ./scripts/configure-claude.sh                      # Unix/Linux/macOS
    # or  
    .\scripts\configure-claude.ps1                    # Windows PowerShell
    
  3. Start using:

    • Restart Claude Desktop to load the new configuration
    • Try asking Claude: "List all databases in NDB"

    Manual configuration (if needed):

    npm run configure         # Interactive configuration wizard
    npm run test:connection   # Test NDB connectivity
    npm run test:mcp         # Test MCP functionality
    
Example Conversations

🗣️ "Show me all PostgreSQL databases in production"
📋 Lists all PostgreSQL databases with production status and health indicators

🗣️ "Create a clone of the customer-data database for testing"
🔄 Creates a fresh clone using the latest snapshot, ready for development use

🗣️ "Take a snapshot of the critical-app database"
📸 Creates an immediate backup snapshot with automatic retention policies

🗣️ "Check which time machines had backup failures"
🚨 Analyzes time machine health and reports any backup issues

What You Can Do
Databases Clones Backups Infrastructure
List & monitor Create & refresh Snapshots & recovery Cluster monitoring
Provision new Manage lifecycle Time machine status Server health
Register existing Resource allocation Retention policies Alerts & operations
Update properties Cleanup & removal Health monitoring Capacity planning
Documentation

📖 Complete Setup Guide - Detailed installation, configuration, and security

🔧 Tools Reference - Complete documentation of all available tools

💡 Usage Examples - Real-world scenarios and workflows

Architecture Overview
High-Level Architecture
┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│ Conversational  │◄──►│        MCP      │◄──►│       NDB       │
│      Agent      │    │      Server     │    │                 │
└─────────────────┘    └─────────────────┘    └─────────────────┘
        │                        │                        │
        │                        │                        │
    MCP Protocol           NDB REST API              Database
 (stdio/websocket)         (HTTP/HTTPS)             Operations
Core Components
  1. MCP Server Core (src/index.ts)

    • Protocol handling and tool registration
    • Request/response management
    • Error handling and logging
  2. NDB Client (src/ndb-client.ts)

    • HTTP client for NDB API
    • Authentication management
    • Request retries and error handling
  3. Tool Definitions (src/tools.ts)

    • 30+ tool implementations
    • Parameter validation
    • Response formatting
  4. Type Definitions (src/types.ts)

    • TypeScript interfaces
    • API response types
    • Configuration schemas
  5. Utilities (src/utils.ts)

    • Helper functions
    • Data transformations
    • Validation logic
Project Structure
ndb-mcp-server/
├── src/                     # Source code
│   ├── index.ts            # Main server entry point
│   ├── ndb-client.ts       # NDB API client
│   ├── tools.ts            # MCP tool implementations
│   ├── types.ts            # TypeScript type definitions
│   └── utils.ts            # Utility functions
├── docs/                    # Documentation
├── examples/                # Usage examples
├── scripts/                 # Setup and utility scripts
├── tests/                   # Test files (when implemented)
├── dist/                    # Compiled JavaScript (build output)
├── .env.example            # Environment template
├── package.json            # Dependencies and scripts
├── tsconfig.json           # TypeScript configuration
└── README.md               # Project overview
Support & Contributing
License

MIT License - see LICENSE for details.


Ready to transform your database management with AI? 🚀

Start with the setup guide for detailed instructions.