mcp-create

説明なし

GitHubスター

82

ユーザー評価

未評価

フォーク

14

イシュー

5

閲覧数

2

お気に入り

0

README
MCP Create Server

A dynamic MCP server management service that creates, runs, and manages Model Context Protocol (MCP) servers dynamically. This service itself functions as an MCP server and launches/manages other MCP servers as child processes, enabling a flexible MCP ecosystem.

Create Server MCP server
Key Features
  • Dynamic creation and execution of MCP server code
  • Support for TypeScript only (JavaScript and Python support planned for future releases)
  • Tool execution on child MCP servers
  • Server code updates and restarts
  • Removal of unnecessary servers
Installation

Note: Docker is the recommended way to run this service

Docker Installation (Recommended)
# Build Docker image
docker build -t mcp-create .

# Run Docker container
docker run -it --rm mcp-create
Manual Installation (TypeScript Only)
# Clone repository
git clone https://github.com/tesla0225/mcp-create.git
cd mcp-create

# Install dependencies
npm install

# Build
npm run build

# Run
npm start
Integration with Claude Desktop

Add the following to your Claude Desktop configuration file (claude_desktop_config.json):

{
  "mcpServers": {
    "mcp-create": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp-create"]
    }
  }
}
Available Tools
Tool Name Description Input Parameters Output
create-server-from-template Create MCP server from template language: string { serverId: string, message: string }
execute-tool Execute tool on server serverId: string
toolName: string
args: object
Tool execution result
get-server-tools Get list of server tools serverId: string { tools: ToolDefinition[] }
delete-server Delete server serverId: string { success: boolean, message: string }
list-servers Get list of running servers none { servers: string[] }
Usage Examples
Creating a New Server
{
  "name": "create-server-from-template",
  "arguments": {
    "language": "typescript"
  }
}
Executing a Tool
{
  "name": "execute-tool",
  "arguments": {
    "serverId": "ba7c9a4f-6ba8-4cad-8ec8-a41a08c19fac",
    "toolName": "echo",
    "args": {
      "message": "Hello, dynamic MCP server!"
    }
  }
}
Technical Specifications
  • Node.js 18 or higher
  • TypeScript (required)
  • Dependencies:
    • @modelcontextprotocol/sdk: MCP client/server implementation
    • child_process (Node.js built-in): Child process management
    • fs/promises (Node.js built-in): File operations
    • uuid: Unique server ID generation
Security Considerations
  • Code Execution Restrictions: Consider sandboxing as the service executes arbitrary code
  • Resource Limitations: Set limits on memory, CPU usage, number of files, etc.
  • Process Monitoring: Monitor and forcibly terminate zombie or runaway processes
  • Path Validation: Properly validate file paths to prevent directory traversal attacks
License

MIT

作者情報

5

フォロワー

34

リポジトリ

0

Gist

10

貢献数

トップ貢献者

スレッド