MongoDB

Interactúa con bases de datos MongoDB usando lenguaje natural para consultar colecciones, inspeccionar esquemas y gestionar datos.

Documentación

🗄️ Servidor MCP de MongoDB para LLMS

Node.js 18+ License: MIT smithery badge

Un servidor de Protocolo de Contexto de Modelo (MCP) que permite a los LLMs interactuar directamente con bases de datos MongoDB. Consulta colecciones, inspecciona esquemas y gestiona datos sin problemas mediante lenguaje natural.

✨ Características

  • 🔍 Inspección de esquema de colecciones
  • 📊 Consulta y filtrado de documentos
  • 📈 Gestión de índices
  • 📝 Operaciones de documentos (insertar, actualizar, eliminar)

🚀 Inicio Rápido

Para comenzar, encuentra tu URL de conexión de MongoDB y agrega esta configuración a tu archivo de configuración de Claude Desktop:

MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "mongo-mcp",
        "mongodb://<username>:<password>@<host>:<port>/<database>?authSource=admin"
      ]
    }
  }
}

Requisitos previos

  • Node.js 18+
  • npx
  • Docker y Docker Compose (solo para pruebas locales en sandbox)
  • Cliente MCP (por ejemplo, la aplicación Claude Desktop)

Configuración del Sandbox de Pruebas

Si no tienes un servidor de MongoDB al que conectarte y deseas crear un sandbox de ejemplo, sigue estos pasos

  1. Inicia MongoDB usando Docker Compose:
docker-compose up -d
  1. Siembra la base de datos con datos de prueba:
npm run seed

Configurar Claude Desktop

Agrega esta configuración a tu archivo de configuración de Claude Desktop:

MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

Modo de Desarrollo Local:

{
  "mcpServers": {
    "mongodb": {
      "command": "node",
      "args": [
        "dist/index.js",
        "mongodb://root:example@localhost:27017/test?authSource=admin"
      ]
    }
  }
}

Estructura de Datos del Sandbox de Pruebas

El script de siembra crea tres colecciones con datos de ejemplo:

Usuarios

  • Información personal (nombre, correo electrónico, edad)
  • Dirección anidada con coordenadas
  • Matrices de intereses
  • Fechas de membresía

Productos

  • Detalles del producto (nombre, SKU, categoría)
  • Especificaciones anidadas
  • Información de precio e inventario
  • Etiquetas y calificaciones

Pedidos

  • Detalles del pedido con artículos
  • Referencias de usuario
  • Información de envío y pago
  • Seguimiento de estado

🎯 Ejemplos de Prompts

Prueba estos prompts con Claude para explorar la funcionalidad:

Operaciones Básicas

"What collections are available in the database?"
"Show me the schema for the users collection"
"Find all users in San Francisco"

Consultas Avanzadas

"Find all electronics products that are in stock and cost less than $1000"
"Show me all orders from the user john@example.com"
"List the products with ratings above 4.5"

Gestión de Índices

"What indexes exist on the users collection?"
"Create an index on the products collection for the 'category' field"
"List all indexes across all collections"

Operaciones de Documentos

"Insert a new product with name 'Gaming Laptop' in the products collection"
"Update the status of order with ID X to 'shipped'"
"Find and delete all products that are out of stock"

📝 Herramientas Disponibles

El servidor proporciona estas herramientas para la interacción con la base de datos:

Herramientas de Consulta

  • find: Consulta documentos con filtrado y proyección
  • listCollections: Lista las colecciones disponibles
  • insertOne: Inserta un solo documento
  • updateOne: Actualiza un solo documento
  • deleteOne: Elimina un solo documento

Herramientas de Índices

  • createIndex: Crea un nuevo índice
  • dropIndex: Elimina un índice
  • indexes: Lista los índices de una colección

Certificado por:-

📜 Licencia

Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.

MongoDB-Model-Context-Protocol-MCP-