/ Diretório / Playground / MongoDB MCP Server
● Comunidade kiliczsh 🔑 Requer sua chave

MongoDB MCP Server

por kiliczsh · kiliczsh/mcp-mongo-server

Passe ao Claude uma connection string do MongoDB e deixe-o consultar, agregar e inspecionar schemas — com uma flag --read-only para segurança em produção.

mcp-mongo-server é um servidor MCP direto para MongoDB. Passe uma URI de conexão como único argumento e o Claude ganha find, aggregate, índices, inferência de schema e introspecção de coleções. Tem uma flag --read-only que desabilita todas as ferramentas mutáveis — use quando quiser que o Claude explore a produção sem tocá-la.

Por que usar

Principais recursos

Demo ao vivo

Como fica na prática

mongo-mcp-kiliczsh.replay ▶ pronto
0/0

Instalar

Escolha seu cliente

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Abra Claude Desktop → Settings → Developer → Edit Config. Reinicie após salvar.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Cursor usa o mesmo esquema mcpServers que o Claude Desktop. Config de projeto vence a global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Clique no ícone MCP Servers na barra lateral do Cline, depois "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "mongo-mcp-kiliczsh": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  }
}

Mesmo formato do Claude Desktop. Reinicie o Windsurf para aplicar.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "mongo-mcp-kiliczsh",
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://localhost:27017/mydb"
      ]
    }
  ]
}

O Continue usa um array de objetos de servidor em vez de um map.

~/.config/zed/settings.json
{
  "context_servers": {
    "mongo-mcp-kiliczsh": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-mongo-server",
          "mongodb://localhost:27017/mydb"
        ]
      }
    }
  }
}

Adicione em context_servers. Zed recarrega automaticamente ao salvar.

claude mcp add mongo-mcp-kiliczsh -- npx -y mcp-mongo-server mongodb://localhost:27017/mydb

Uma linha só. Verifique com claude mcp list. Remova com claude mcp remove.

Casos de uso

Usos do mundo real: MongoDB MCP Server

Explorar um banco de dados MongoDB desconhecido sem escrever nada

👤 Devs fazendo onboarding em um novo serviço ⏱ ~15 min beginner

Quando usar: Você herdou uma instância do Mongo e o schema não está documentado.

Pré-requisitos
  • Usuário Mongo somente leituradb.createUser({user:'reader', roles:[{role:'read', db:'mydb'}]})
Fluxo
  1. Conectar somente leitura
    Use o MCP do mongo. Liste todas as coleções e infira o schema das 3 maiores por tamanho.✓ Copiado
    → Lista de coleções + JSON schema por coleção
  2. Verificar amostras
    Mostre-me 5 documentos de exemplo da coleção orders — anonimize os e-mails.✓ Copiado
    → 5 documentos, PII redigida
  3. Mapear relacionamentos
    Quais coleções se referenciam por ObjectId? Desenhe um diagrama de texto rápido.✓ Copiado
    → Diagrama ER em texto simples

Resultado: Modelo mental funcional do banco de dados em 10 minutos, sem precisar de um DBA.

Armadilhas
  • Amostragem pode perder campos de alta cardinalidade — Aumente o tamanho da amostra na chamada de inferência; amostre por data se os dados forem assimétricos no tempo
Combine com: filesystem

Otimizar uma aggregation lenta com conselhos de índice do Claude

👤 Devs de backend ⏱ ~25 min intermediate

Quando usar: Um pipeline de aggregation leva 30s e você não sabe qual estágio é o custo.

Fluxo
  1. Perfilar
    Execute esta aggregation com explain=true. Mostre o plano vencedor.✓ Copiado
    → Saída do explain com documentos examinados por estágio
  2. Diagnosticar
    Qual estágio é o gargalo? Qual índice ajudaria?✓ Copiado
    → Sugestão de índice concreto com justificativa
  3. Verificar
    Re-explique após adicionar o índice. O totalDocsExamined caiu?✓ Copiado
    → Sim/não com números

Resultado: Aggregation 10x mais rápida com um índice direcionado.

Armadilhas
  • O Claude sugere um índice que sobrecarrega as escritas — Pergunte: 'Qual penalidade de escrita este índice adiciona?' antes de aplicar

Encontrar documentos que violam um schema implícito

👤 Engenheiros de dados ⏱ ~20 min intermediate

Quando usar: DBs sem schema acumulam deriva; você precisa encontrar os infratores.

Fluxo
  1. Amostrar
    Amostre 1000 documentos de users. Quais campos estão faltando ou têm tipos inesperados?✓ Copiado
    → Tabela de nulidade / frequência de tipo por campo
  2. Encontrar
    Encontre todos os usuários onde email é nulo ou não é uma string.✓ Copiado
    → Contagem + _ids de amostra

Resultado: Relatório concreto de dados sujos que você pode passar para scripts de migração.

Armadilhas
  • Coleções grandes atingem timeouts — Use $sample e então restrinja os acompanhamentos por intervalos

Combinações

Combine com outros MCPs para 10× de alavancagem

mongo-mcp-kiliczsh + filesystem

Exportar resultados de aggregation para JSON para ferramentas downstream

Execute a aggregation e salve os resultados em /tmp/orders-by-month.json.✓ Copiado
mongo-mcp-kiliczsh + github

Abrir um PR com um script de migração após detectar deriva

Encontramos 1200 usuários sem e-mail. Abra um PR com uma migração de backfill.✓ Copiado

Ferramentas

O que este MCP expõe

FerramentaEntradasQuando chamarCusto
find collection, filter, projection?, limit? Buscar documentos específicos 1 query
aggregate collection, pipeline[], explain? Agrupar/transformar dados 1 query
list_collections (nenhum) Descobrir o que há no banco de dados free
schema collection, sample_size? Inferir shape a partir de documentos amostrados 1 leitura de amostra
list_indexes collection Conversas de otimização free
insert_one collection, document Apenas quando não estiver no modo --read-only 1 escrita

Custo e limites

O que custa rodar

Cota de API
Limitado pelas RU/IOPS do seu cluster Mongo
Tokens por chamada
200–5000 dependendo do tamanho do resultado
Monetário
Gratuito (open source)
Dica
Projete apenas os campos que você precisa; limite o limit antecipadamente

Segurança

Permissões, segredos, alcance

Escopos mínimos: read no banco de dados alvo
Armazenamento de credenciais: URI passada como argumento CLI — mantenha fora do histórico do shell
Saída de dados: Apenas para o seu host Mongo
Nunca conceda: dbAdmin root

Solução de problemas

Erros comuns e correções

MongoServerSelectionError

Verifique conectividade, lista de IPs permitidos, configurações TLS

Verificar: mongosh com a mesma URI
Falha na autenticação

Verifique authSource na URI (geralmente admin); confirme que o usuário existe nesse banco de dados

Ferramenta não encontrada no modo somente leitura

Remova --read-only se precisar de escritas; caso contrário, use um MCP diferente para escritas

Alternativas

MongoDB MCP Server vs. outros

AlternativaQuando usarTroca
MongoDB CompassExploração via GUI, sem IA envolvidaSem integração com agentes; queries manuais
mongosh em um MCP de shellVocê quer o poder bruto do mongoshMais perigoso; este MCP fornece ferramentas delimitadas

Mais

Recursos

📖 Leia o README oficial no GitHub

🐙 Ver issues abertas

🔍 Ver todos os 400+ servidores MCP e Skills