mcp-of-mcps

MCP of MCPs é um meta-servidor que mescla todos os seus servidores MCP em um único endpoint inteligente. Ele oferece aos agentes de IA descoberta instantânea de ferramentas, carregamento seletivo de esquemas e execução massivamente mais barata, para que você pare de desperdiçar tokens e tempo. Com metadados persistentes de ferramentas, busca semântica e execução direta de código entre ferramentas, ele transforma configurações caóticas de múltiplos servidores em um fluxo de trabalho rápido, eficiente e livre de alucinações. Ele também analisa automaticamente os esquemas de saída das ferramentas, caso não existam, e os preserva entre sessões para um comportamento consistente.

Documentação

MCP de MCPs

MCP de MCPs é um meta-servidor que une todos os seus servidores MCP em um único endpoint inteligente. Ele dá aos agentes de IA descoberta instantânea de ferramentas, carregamento seletivo de esquemas e execução massivamente mais barata, para que você pare de desperdiçar tokens e tempo.

Com metadados persistentes de ferramentas, busca semântica e execução direta de código entre ferramentas, ele transforma configurações caóticas de múltiplos servidores em um fluxo de trabalho rápido, eficiente e livre de alucinações. Ele também analisa automaticamente os esquemas de saída das ferramentas, se necessário, e os preserva entre sessões para um comportamento consistente.

Em resumo:
🚀 Automação mais rápida
🧠 Raciocínio mais limpo
💰 Drasticamente menos tokens
📦 Metadados de esquema persistentes e analisados

alt text

Ferramenta 1: semantic_search_tools

Ferramenta de Descoberta Semântica - Pesquise ferramentas descrevendo a tarefa que você deseja realizar. Em vez de navegar por todos os nomes de ferramentas—ou quando os nomes das ferramentas não indicam claramente o que elas fazem—basta descrever sua intenção em inglês simples (por exemplo, "enviar notificações", "consultar banco de dados", "processar imagens") e receber apenas as ferramentas mais relevantes instantaneamente. Isso fornece uma abordagem rápida e leve para investigar quais ferramentas estão disponíveis em todos os servidores conectados, sem carregar definições completas de ferramentas.

// Search by task/intent, not by tool names:
// Input: { query: "send notifications to a channel", limit: 5 }
// Returns only relevant matches (ranked by similarity):
// [
//   {
//     serverName: "slack",
//     toolName: "post_message",
//     description: "Post a message to a Slack channel",
//     similarityScore: 0.94,
//     fullPath: "slack/post_message"
//   },
// ....
//   // Only 5 most relevant tools returned - fast and lightweight!
// ]

Perfeito para investigação rápida:

  • Descreva o que você precisa fazer, não qual ferramenta você precisa
  • Obtenha resultados instantâneos sem carregar esquemas completos
  • Descubra capacidades em todos os servidores em milissegundos
  • Sem custo extra de tokens - apenas nomes e descrições leves de ferramentas

Ferramenta 2: get_mcps_servers_overview

Ferramenta de Descoberta - Esta ferramenta retorna apenas nomes de ferramentas sem esquemas completos, dando aos agentes uma visão geral leve em segundos, em vez de carregar centenas de definições detalhadas antecipadamente. Ao mostrar apenas o que está disponível sem detalhes excessivos, ela previne confusão e alucinações, eliminando atrasos de carregamento.

// Returns:
// google_drive/download_file
// google_drive/upload_file
// slack/send_message
// database/execute_query
// ...

Ferramenta 3: get_tools_overview

Ferramenta de Introspecção - Carregue apenas as ferramentas que você realmente precisa, em vez de todas as 30+ ferramentas, economizando milhares de tokens por meio de carregamento seletivo. Essa abordagem sob demanda fornece respostas mais rápidas e contexto focado, reduzindo confusão e melhorando a precisão.

// Input: ["google_drive/download_file", "slack/send_message"]
// Returns: Full tool definitions with:
// - Parameter schemas
// - Required vs optional fields
// - Example usage code

Ferramenta 4: run_functions_code

Ferramenta de Execução - Os dados fluem diretamente entre as ferramentas sem idas e voltas pelo modelo, então uma transferência de arquivo de 2MB usa ~100 tokens em vez de 50.000+. O modelo vê apenas resultados finais limpos, em vez de dados intermediários ruidosos, executando fluxos de trabalho complexos de uma só vez, sem atrasos de processamento.

// Write code that:
// - Calls multiple tools in sequence or parallel
// - Processes and transforms data
// - Implements complex logic and error handling
// - Returns only final results to the model

Como o Fluxo Completo Resolve Todos os Problemas

Quando você precisa realizar uma tarefa, comece usando get_mcps_servers_overview para obter uma lista leve de todos os nomes de ferramentas disponíveis nos servidores—isso dá uma varredura rápida do que está disponível sem carregar esquemas. Se você não encontrar as ferramentas necessárias para sua tarefa ou se os nomes das ferramentas não forem claros, use semantic_search_tools para pesquisar descrevendo sua intenção em inglês simples (por exemplo, "enviar notificações para um canal"), que usa compreensão semântica baseada em IA para retornar instantaneamente apenas as ferramentas mais relevantes classificadas por similaridade. Depois de identificar as ferramentas específicas que você precisa, use get_tools_overview para carregar apenas essas definições de ferramentas com seus esquemas e parâmetros completos—economizando milhares de tokens ao evitar ferramentas irrelevantes e dando ao modelo contexto focado. Finalmente, use run_functions_code para executar seu fluxo de trabalho, onde os dados fluem diretamente entre as ferramentas na memória, mantendo resultados intermediários como objetos nativos em vez de serializá-los em tokens, com apenas o resultado final retornado ao modelo. Esse padrão reduz drasticamente o uso de tokens, acelera a execução evitando processamento desnecessário do modelo e elimina alucinações mostrando apenas informações relevantes em cada etapa.

Exemplo do Mundo Real

Abordagem Tradicional:

TOOL CALL: gdrive.getDocument(documentId: "abc123")
  → returns full transcript text (loads into context: 50,000 tokens)
  
TOOL CALL: salesforce.updateRecord(...)
  → model writes entire transcript again (doubles the tokens: +50,000 tokens)

Total: 100.000+ tokens processados, tempo de resposta lento

Com MCP de MCPs:

const transcript = (await gdrive.getDocument({ documentId: 'abc123' })).content;
await salesforce.updateRecord({
  objectType: 'SalesMeeting',
  data: { Notes: transcript }
});

O código executa em uma única operação. Os dados fluem diretamente entre as ferramentas. Apenas o resultado final retorna ao modelo.

Total: 2.000 tokens processados (redução de 98,7%) ⚡

Principais Benefícios

Tempo de Resposta Mais Rápido - Sem necessidade de carregar todas as ferramentas antecipadamente
Menos Alucinações - O modelo vê apenas informações relevantes
Divulgação Progressiva - Carregue ferramentas sob demanda conforme necessário
Composição de Código - Orquestre fluxos de trabalho complexos com JavaScript familiar
Metadados Persistentes de Ferramentas - Preserva automaticamente os esquemas de saída das ferramentas entre sessões

Configuração

Pré-requisitos

  • Node.js
  • npm ou yarn
  • Servidores MCP configurados que você deseja agregar

Adicionar ao Cline

Adicione isto ao seu arquivo de configurações MCP do Cline:

Opção 1: Usando configuração inline

{
  "mcpServers": {
    "mcp-of-mcps": {
      "autoApprove": [],
      "disabled": false,
      "timeout": 60,
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@dbestai/mcp-of-mcps",
        "--config",
        "[{\"name\":\"weather\",\"command\":\"npx\",\"args\":[\"-y\",\"@h1deya/mcp-server-weather\"]},{\"name\":\"time\",\"command\":\"uvx\",\"args\":[\"mcp-server-time\"]}]"
      ]
    }
  }
}

Opção 2: Usando um arquivo de configuração

Primeiro, crie um arquivo config.json que especifica a quais servidores MCP conectar:

[
  {
    "name": "weather",
    "command": "npx",
    "args": ["-y", "@h1deya/mcp-server-weather"]
  },
  {
    "name": "time",
    "command": "uvx",
    "args": ["mcp-server-time"]
  }
]

Depois, referencie este arquivo nas suas configurações do Cline:

{
  "mcpServers": {
    "mcp-of-mcps": {
      "autoApprove": [],
      "disabled": false,
      "timeout": 60,
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@dbestai/mcp-of-mcps",
        "--config-file",
        "/absolute/path/to/your/config.json"
      ]
    }
  }
}

Opções de Configuração:

  • autoApprove: Matriz de nomes de ferramentas que não exigem aprovação (por exemplo, ["get_mcps_servers_overview"])
  • disabled: Defina como false para habilitar o servidor
  • timeout: Tempo limite em segundos para execução de ferramentas (padrão: 60)
  • type: Tipo de conexão, sempre "stdio" para servidores MCP

Saiba Mais

Esta implementação segue os padrões descritos no artigo da Anthropic sobre execução de código com MCP:
📖 Execução de código com MCP: Construindo agentes mais eficientes

Contribuindo

Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.

Licença

ISC