mongodb-mcp-server
MongoDB MCP Server
Un servidor del Model Context Protocol para interactuar con bases de datos MongoDB y MongoDB Atlas.
📚 Tabla de contenido
Requisitos previos
Node.js (v20.10.0 o posterior)
node -vUna cadena de conexión de MongoDB o credenciales de la API de Atlas, el servidor no se iniciará a menos que esté configurado.
Se requieren credenciales de cuentas de servicio de la API de Atlas para usar las herramientas de Atlas. Puede crear una cuenta de servicio en MongoDB Atlas y usar sus credenciales para la autenticación. Consulte Acceso a la API de Atlas para más detalles.
Si tiene una cadena de conexión de MongoDB, puede usarla directamente para conectarse a su instancia de MongoDB.
Configuración
Inicio rápido
Nota: Al usar credenciales de la API de Atlas, asegúrese de asignar solo los permisos mínimos necesarios a su cuenta de servicio. Consulte Permisos de la API de Atlas para más detalles.
La mayoría de los clientes MCP requieren que se cree o modifique un archivo de configuración para agregar el servidor MCP.
Nota: La sintaxis del archivo de configuración puede variar según el cliente. Consulte los siguientes enlaces para conocer la sintaxis esperada más reciente:
VSCode: https://code.visualstudio.com/docs/copilot/chat/mcp-servers
Claude Desktop: https://modelcontextprotocol.io/quickstart/user
Cursor: https://docs.cursor.com/context/model-context-protocol
Opción 1: Argumentos de cadena de conexión
Puede pasar su cadena de conexión mediante argumentos; asegúrese de usar un nombre de usuario y una contraseña válidos.
{
"mcpServers": {
"MongoDB": {
"command": "npx",
"args": [
"-y",
"mongodb-mcp-server",
"--connectionString",
"mongodb://localhost:27017/myDatabase"
]
}
}
}NOTA: La cadena de conexión se puede configurar para conectarse a cualquier clúster de MongoDB, ya sea una instancia local o un clúster de Atlas.
Opción 2: Argumentos de credenciales de la API de Atlas
Use las credenciales de cuentas de servicio de la API de Atlas. Debe seguir todos los pasos de la sección Acceso a la API de Atlas.
{
"mcpServers": {
"MongoDB": {
"command": "npx",
"args": [
"-y",
"mongodb-mcp-server",
"--apiClientId",
"your-atlas-service-accounts-client-id",
"--apiClientSecret",
"your-atlas-service-accounts-client-secret"
]
}
}
}Opción 3: Servicio independiente mediante argumentos de comando
Inicie el servidor usando el comando npx:
npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret"Para obtener una lista completa de argumentos, consulte Opciones de configuración
Para configurar las credenciales de sus cuentas de servicio de Atlas, consulte Acceso a la API de Atlas
Opción 4: Servicio independiente mediante variables de entorno
npx -y mongodb-mcp-serverPuede usar variables de entorno en el archivo de configuración o definirlas y ejecutar el servidor mediante npx.
Cadena de conexión mediante variables de entorno en el archivo MCP ejemplo
Credenciales de la API de Atlas mediante variables de entorno en el archivo MCP ejemplo
Opción 5: Uso de Docker
Puede ejecutar el MongoDB MCP Server en un contenedor Docker, lo que proporciona aislamiento y no requiere una instalación local de Node.js.
Ejecutar con variables de entorno
Puede proporcionar una cadena de conexión de MongoDB O credenciales de la API de Atlas:
Opción A: Sin configuración
docker run --rm -i \
mongodb/mongodb-mcp-server:latestOpción B: Con cadena de conexión de MongoDB
docker run --rm -i \
-e MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" \
mongodb/mongodb-mcp-server:latestOpción C: Con credenciales de la API de Atlas
docker run --rm -i \
-e MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id" \
-e MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret" \
mongodb/mongodb-mcp-server:latestDocker en el archivo de configuración MCP
Sin opciones:
{
"mcpServers": {
"MongoDB": {
"command": "docker",
"args": ["run", "--rm", "-i", "mongodb/mongodb-mcp-server:latest"]
}
}
}Con cadena de conexión:
{
"mcpServers": {
"MongoDB": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"MDB_MCP_CONNECTION_STRING=mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
"mongodb/mongodb-mcp-server:latest"
]
}
}
}Con credenciales de la API de Atlas:
{
"mcpServers": {
"MongoDB": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"MDB_MCP_API_CLIENT_ID=your-atlas-service-accounts-client-id",
"-e",
"MDB_MCP_API_CLIENT_SECRET=your-atlas-service-accounts-client-secret",
"mongodb/mongodb-mcp-server:latest"
]
}
}
}🛠️ Herramientas compatibles
Lista de herramientas
Herramientas de MongoDB Atlas
atlas-list-orgs- Listar las organizaciones de MongoDB Atlasatlas-list-projects- Listar los proyectos de MongoDB Atlasatlas-create-project- Crear un nuevo proyecto de MongoDB Atlasatlas-list-clusters- Listar los clústeres de MongoDB Atlasatlas-inspect-cluster- Inspeccionar un clúster específico de MongoDB Atlasatlas-create-free-cluster- Crear un clúster gratuito de MongoDB Atlasatlas-connect-cluster- Conectarse al clúster de MongoDB Atlasatlas-inspect-access-list- Inspeccionar los rangos IP/CIDR con acceso a los clústeres de MongoDB Atlasatlas-create-access-list- Configurar la lista de acceso IP/CIDR para los clústeres de MongoDB Atlasatlas-list-db-users- Listar los usuarios de bases de datos de MongoDB Atlasatlas-create-db-user- Crear un usuario de base de datos de MongoDB Atlasatlas-list-alerts- Listar las alertas de MongoDB Atlas para un proyecto
NOTA: Las herramientas de Atlas solo están disponibles cuando se establecen credenciales en la sección de configuración.
Herramientas de base de datos MongoDB
connect- Conectarse a una instancia de MongoDBfind- Ejecutar una consulta find contra una colección de MongoDBaggregate- Ejecutar una agregación contra una colección de MongoDBcount- Obtener el número de documentos en una colección de MongoDBinsert-one- Insertar un solo documento en una colección de MongoDBinsert-many- Insertar varios documentos en una colección de MongoDBcreate-index- Crear un índice para una colección de MongoDBupdate-one- Actualizar un solo documento en una colección de MongoDBupdate-many- Actualizar varios documentos en una colección de MongoDBrename-collection- Renombrar una colección de MongoDBdelete-one- Eliminar un solo documento de una colección de MongoDBdelete-many- Eliminar varios documentos de una colección de MongoDBdrop-collection- Eliminar una colección de una base de datos de MongoDBdrop-database- Eliminar una base de datos de MongoDBlist-databases- Listar todas las bases de datos para una conexión de MongoDBlist-collections- Listar todas las colecciones para una base de datos determinadacollection-indexes- Describir los índices de una coleccióncollection-schema- Describir el esquema de una coleccióncollection-storage-size- Obtener el tamaño de una colección en MBdb-stats- Devolver estadísticas sobre una base de datos de MongoDB
Configuración
El MongoDB MCP Server se puede configurar mediante varios métodos, con la siguiente precedencia (de mayor a menor):
Argumentos de línea de comandos
Variables de entorno
Opciones de configuración
Opción | Descripción |
| ID de cliente de la API de Atlas para la autenticación. Necesario para ejecutar las herramientas de Atlas. |
| Secreto de cliente de la API de Atlas para la autenticación. Necesario para ejecutar las herramientas de Atlas. |
| Cadena de conexión de MongoDB para conexiones directas a bases de datos. Opcional; si no se establece, deberá llamar a la herramienta |
| Carpeta para almacenar registros. |
| Una matriz de nombres de herramientas, tipos de operación y/o categorías de herramientas que se deshabilitarán. |
| Cuando se establece en true, solo permite operaciones de lectura y metadatos, deshabilitando las operaciones de creación/actualización/eliminación. |
| Cuando se establece en disabled, deshabilita la recopilación de telemetría. |
Ruta de registro
La ubicación predeterminada de los registros es la siguiente:
Windows:
%LOCALAPPDATA%\mongodb\mongodb-mcp\.app-logsmacOS/Linux:
~/.mongodb/mongodb-mcp/.app-logs
Herramientas deshabilitadas
Puede deshabilitar herramientas específicas o categorías de herramientas mediante la opción disabledTools. Esta opción acepta una matriz de cadenas,
donde cada cadena puede ser un nombre de herramienta, un tipo de operación o una categoría.
La forma en que se construye la matriz depende del tipo de método de configuración que utilice:
Para la configuración mediante variables de entorno, use una cadena separada por comas:
export MDB_MCP_DISABLED_TOOLS="create,update,delete,atlas,collectionSchema".Para la configuración mediante argumentos de línea de comandos, use una cadena separada por espacios:
--disabledTools create update delete atlas collectionSchema.
Categorías de herramientas:
atlas- Herramientas de MongoDB Atlas, como listar clústeres, crear clústeres, etc.mongodb- Herramientas de base de datos de MongoDB, como find, aggregate, etc.
Tipos de operación:
create- Herramientas que crean recursos, como crear clúster, insertar documento, etc.update- Herramientas que actualizan recursos, como actualizar documento, renombrar colección, etc.delete- Herramientas que eliminan recursos, como eliminar documento, eliminar colección, etc.read- Herramientas que leen recursos, como find, aggregate, listar clústeres, etc.metadata- Herramientas que leen metadatos, como listar bases de datos, listar colecciones, esquema de colección, etc.
Modo de solo lectura
La opción de configuración readOnly le permite restringir el servidor MCP para que solo utilice herramientas con tipos de operación "read" y "metadata". Cuando está habilitada, todas las herramientas que tengan tipos de operación "create", "update" o "delete" no se registrarán en el servidor.
Esto es útil para escenarios en los que desea proporcionar acceso a los datos de MongoDB para análisis sin permitir modificaciones en los datos o la infraestructura.
Puede habilitar el modo de solo lectura mediante:
Variable de entorno:
export MDB_MCP_READ_ONLY=trueArgumento de línea de comandos:
--readOnly
Cuando el modo de solo lectura está activo, verá un mensaje en los registros del servidor que indica qué herramientas no se registraron debido a esta restricción.
Telemetría
La opción de configuración telemetry le permite deshabilitar la recopilación de telemetría. Cuando está habilitada, el servidor MCP recopilará datos de uso y los enviará a MongoDB.
Puede deshabilitar la telemetría mediante:
Variable de entorno:
export MDB_MCP_TELEMETRY=disabledArgumento de línea de comandos:
--telemetry disabledVariable de entorno DO_NOT_TRACK:
export DO_NOT_TRACK=1
Acceso a la API de Atlas
Para utilizar las herramientas de la API de Atlas, deberá crear una cuenta de servicio en MongoDB Atlas:
ℹ️ Nota: Para obtener un desglose detallado de los permisos mínimos requeridos para cada operación de Atlas, consulte la sección Permisos de la API de Atlas a continuación.
Crear una cuenta de servicio:
Inicie sesión en MongoDB Atlas en cloud.mongodb.com
Navegue a Access Manager > Organization Access
Haga clic en Add New > Applications > Service Accounts
Ingrese el nombre, la descripción y la expiración de su cuenta de servicio (por ejemplo, "MCP, MCP Server Access, 7 days")
Asigne solo los permisos mínimos necesarios para su caso de uso.
Consulte Permisos de la API de Atlas para obtener más detalles.
Haga clic en "Create"
Para obtener más información sobre las cuentas de servicio, consulte la documentación de MongoDB Atlas.
Guardar las credenciales del cliente:
Después de la creación, se le mostrarán el Client ID y el Client Secret
Importante: Copie y guarde el Client Secret inmediatamente, ya que no se mostrará nuevamente
Agregar entrada a la lista de acceso:
Agregue su dirección IP a la lista de acceso de la API
Configurar el servidor MCP:
Use uno de los métodos de configuración a continuación para establecer su
apiClientIdyapiClientSecret
Permisos de la API de Atlas
Advertencia de seguridad: Otorgar el rol de Organization Owner rara vez es necesario y puede ser un riesgo de seguridad. Asigne solo los permisos mínimos necesarios para su caso de uso.
Referencia rápida: Roles requeridos por operación
Lo que desea hacer | Rol más seguro para asignar (dónde) |
Listar organizaciones/proyectos | Org Member o Org Read Only (Org) |
Crear nuevos proyectos | Org Project Creator (Org) |
Ver clústeres/bases de datos en un proyecto | Project Read Only (Project) |
Crear/gestionar clústeres en un proyecto | Project Cluster Manager (Project) |
Gestionar listas de acceso de proyectos | Project IP Access List Admin (Project) |
Gestionar usuarios de bases de datos | Project Database Access Admin (Project) |
Prefiera roles a nivel de proyecto para la mayoría de las operaciones. Asigne solo a los proyectos específicos que necesite gestionar o ver.
Evite Organization Owner a menos que requiera control administrativo completo sobre todos los proyectos y configuraciones de la organización.
Para obtener una lista completa de roles y sus privilegios, consulte la documentación de roles de usuario de Atlas.
Métodos de configuración
Variables de entorno
Establezca variables de entorno con el prefijo MDB_MCP_ seguido del nombre de la opción en mayúsculas y con guiones bajos:
# Set Atlas API credentials (via Service Accounts)
export MDB_MCP_API_CLIENT_ID="your-atlas-service-accounts-client-id"
export MDB_MCP_API_CLIENT_SECRET="your-atlas-service-accounts-client-secret"
# Set a custom MongoDB connection string
export MDB_MCP_CONNECTION_STRING="mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
export MDB_MCP_LOG_PATH="/path/to/logs"
Ejemplos de archivos de configuración de MCP
Cadena de conexión con variables de entorno
{
"mcpServers": {
"MongoDB": {
"command": "npx",
"args": ["-y", "mongodb-mcp-server"],
"env": {
"MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
}
}
}
}Credenciales de la API de Atlas con variables de entorno
{
"mcpServers": {
"MongoDB": {
"command": "npx",
"args": ["-y", "mongodb-mcp-server"],
"env": {
"MDB_MCP_API_CLIENT_ID": "your-atlas-service-accounts-client-id",
"MDB_MCP_API_CLIENT_SECRET": "your-atlas-service-accounts-client-secret"
}
}
}
}Argumentos de línea de comandos
Pase las opciones de configuración como argumentos de línea de comandos al iniciar el servidor:
npx -y mongodb-mcp-server --apiClientId="your-atlas-service-accounts-client-id" --apiClientSecret="your-atlas-service-accounts-client-secret" --connectionString="mongodb+srv://username:password@cluster.mongodb.net/myDatabase" --logPath=/path/to/logsEjemplos de archivos de configuración de MCP
Cadena de conexión con argumentos de línea de comandos
{
"mcpServers": {
"MongoDB": {
"command": "npx",
"args": [
"-y",
"mongodb-mcp-server",
"--connectionString",
"mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
]
}
}
}Credenciales de la API de Atlas con argumentos de línea de comandos
{
"mcpServers": {
"MongoDB": {
"command": "npx",
"args": [
"-y",
"mongodb-mcp-server",
"--apiClientId",
"your-atlas-service-accounts-client-id",
"--apiClientSecret",
"your-atlas-service-accounts-client-secret"
]
}
}
}🤝 Contribuciones
¿Interesado en contribuir? ¡Genial! Consulte nuestra Guía de contribuciones para conocer las pautas sobre contribuciones de código, estándares, adición de nuevas herramientas e información de solución de problemas.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A Model Context Protocol server for Wix AI tools
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/rajath-raman/mongodb-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server