MCP Create Server
Um serviço para criar, executar e gerenciar dinamicamente servidores do Model Context Protocol (MCP).
GitHub
98
Experimente este MCPPatrocinadoDocumentação
MCP Create Server
Um serviço dinâmico de gerenciamento de servidores MCP que cria, executa e gerencia servidores do Model Context Protocol (MCP) dinamicamente. Este serviço funciona como um servidor MCP e inicia/gerencia outros servidores MCP como processos filhos, permitindo um ecossistema MCP flexível.
Principais Recursos
- Criação e execução dinâmica de código de servidor MCP
- Suporte apenas para TypeScript (suporte a JavaScript e Python planejado para versões futuras)
- Execução de ferramentas em servidores MCP filhos
- Atualizações e reinicializações de código do servidor
- Remoção de servidores desnecessários
Instalação
Nota: Docker é a forma recomendada de executar este serviço
Instalação com Docker (Recomendada)
# Build Docker image
docker build -t mcp-create .
# Run Docker container
docker run -it --rm mcp-create
Instalação Manual (Somente TypeScript)
# 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
Integração com Claude Desktop
Adicione o seguinte ao seu arquivo de configuração do Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"mcp-create": {
"command": "docker",
"args": ["run", "-i", "--rm", "mcp-create"]
}
}
}
Ferramentas Disponíveis
| Nome da Ferramenta | Descrição | Parâmetros de Entrada | Saída |
|---|---|---|---|
| create-server-from-template | Criar servidor MCP a partir de modelo | language: string | { serverId: string, message: string } |
| execute-tool | Executar ferramenta no servidor | serverId: string toolName: string args: object | Resultado da execução da ferramenta |
| get-server-tools | Obter lista de ferramentas do servidor | serverId: string | { tools: ToolDefinition[] } |
| delete-server | Excluir servidor | serverId: string | { success: boolean, message: string } |
| list-servers | Obter lista de servidores em execução | nenhum | { servers: string[] } |
Exemplos de Uso
Criando um Novo Servidor
{
"name": "create-server-from-template",
"arguments": {
"language": "typescript"
}
}
Executando uma Ferramenta
{
"name": "execute-tool",
"arguments": {
"serverId": "ba7c9a4f-6ba8-4cad-8ec8-a41a08c19fac",
"toolName": "echo",
"args": {
"message": "Hello, dynamic MCP server!"
}
}
}
Especificações Técnicas
- Node.js 18 ou superior
- TypeScript (obrigatório)
- Dependências:
- @modelcontextprotocol/sdk: implementação de cliente/servidor MCP
- child_process (integrado ao Node.js): gerenciamento de processos filhos
- fs/promises (integrado ao Node.js): operações de arquivo
- uuid: geração de IDs únicos de servidor
Considerações de Segurança
- Restrições de Execução de Código: Considere o uso de sandbox, pois o serviço executa código arbitrário
- Limitações de Recursos: Defina limites de memória, uso de CPU, número de arquivos, etc.
- Monitoramento de Processos: Monitore e encerre à força processos zumbis ou fora de controle
- Validação de Caminhos: Valide adequadamente os caminhos de arquivo para prevenir ataques de travessia de diretório
Licença
MIT