Back to MCP Servers
🧩

mongodb-mcp-server

API key required

MongoDB Model Context Protocol Server

To add mongodb-mcp-server to Claude, run the install command below or copy the ready-made config for Claude Code, Claude Desktop, Cursor and VS Code further down. Restart your client after adding it and its tools show up in your next conversation. It needs 51 environment variables, listed below.

DatabaseAIDevTools

Install

npx -y mongodb-mcp-server@3.2.1

Environment variables

MDB_MCP_AGGREGATION_COUNT_MAX_TIME_MS_CAPSet in your MCP config
MDB_MCP_AGGREGATION_COUNT_TIMEOUT_MSSet in your MCP config
MDB_MCP_ALLOW_REQUEST_OVERRIDESSet in your MCP config
MDB_MCP_API_CLIENT_IDSet in your MCP config
MDB_MCP_API_CLIENT_SECRETSet in your MCP config
MDB_MCP_ASSISTANT_BASE_URLSet in your MCP config
MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MSSet in your MCP config
MDB_MCP_CONFIRMATION_REQUIRED_TOOLSSet in your MCP config
MDB_MCP_CONNECTION_IDLE_TIMEOUT_MSSet in your MCP config
MDB_MCP_CONNECTION_SCOPESet in your MCP config
MDB_MCP_CONNECTION_STRINGSet in your MCP config
MDB_MCP_DANGEROUS_HOST_BINDINGSet in your MCP config
MDB_MCP_DISABLE_SERVER_SIDE_JSSet in your MCP config
MDB_MCP_DISABLE_UNTRUSTED_DATA_WARNINGSet in your MCP config
MDB_MCP_DISABLED_TOOLSSet in your MCP config
MDB_MCP_DRY_RUNSet in your MCP config
MDB_MCP_ELICITATION_TIMEOUT_MSSet in your MCP config
MDB_MCP_EVICTION_IDLE_GRACE_M_SSet in your MCP config
MDB_MCP_EXPORT_CLEANUP_INTERVAL_MSSet in your MCP config
MDB_MCP_EXPORT_TIMEOUT_MSSet in your MCP config
MDB_MCP_EXPORTS_PATHSet in your MCP config
MDB_MCP_EXTERNALLY_MANAGED_SESSIONSSet in your MCP config
MDB_MCP_HEALTH_CHECK_HOSTSet in your MCP config
MDB_MCP_HEALTH_CHECK_PORTSet in your MCP config
MDB_MCP_HTTP_BODY_LIMITSet in your MCP config
MDB_MCP_HTTP_HEADERSSet in your MCP config
MDB_MCP_HTTP_HOSTSet in your MCP config
MDB_MCP_HTTP_PORTSet in your MCP config
MDB_MCP_HTTP_RESPONSE_TYPESet in your MCP config
MDB_MCP_IDLE_TIMEOUT_MSSet in your MCP config
MDB_MCP_INDEX_CHECKSet in your MCP config
MDB_MCP_LOG_PATHSet in your MCP config
MDB_MCP_LOGGERSSet in your MCP config
MDB_MCP_MAX_ACTIVE_CONNECTIONSSet in your MCP config
MDB_MCP_MAX_BYTES_PER_QUERYSet in your MCP config
MDB_MCP_MAX_DOCUMENTS_PER_QUERYSet in your MCP config
MDB_MCP_MAX_SESSIONSSet in your MCP config
MDB_MCP_MAX_TIME_M_SSet in your MCP config
MDB_MCP_MCP_CLIENT_LOG_LEVELSet in your MCP config
MDB_MCP_MONITORING_SERVER_FEATURESSet in your MCP config
MDB_MCP_MONITORING_SERVER_HOSTSet in your MCP config
MDB_MCP_MONITORING_SERVER_PORTSet in your MCP config
MDB_MCP_NOTIFICATION_TIMEOUT_MSSet in your MCP config
MDB_MCP_PREVIEW_FEATURESSet in your MCP config
MDB_MCP_QUERY_COUNT_MAX_TIME_MS_CAPSet in your MCP config
MDB_MCP_QUERY_COUNT_TIMEOUT_MSSet in your MCP config
MDB_MCP_READ_ONLYSet in your MCP config
MDB_MCP_TELEMETRYSet in your MCP config
MDB_MCP_TIMEOUT_MSSet in your MCP config
MDB_MCP_TRANSPORTSet in your MCP config
MDB_MCP_VOYAGE_API_KEYSet in your MCP config

Install with your client

Terminal
claude mcp add mongodb --env MDB_MCP_AGGREGATION_COUNT_MAX_TIME_MS_CAP=<YOUR_MDB_MCP_AGGREGATION_COUNT_MAX_TIME_MS_CAP> --env MDB_MCP_AGGREGATION_COUNT_TIMEOUT_MS=<YOUR_MDB_MCP_AGGREGATION_COUNT_TIMEOUT_MS> --env MDB_MCP_ALLOW_REQUEST_OVERRIDES=<YOUR_MDB_MCP_ALLOW_REQUEST_OVERRIDES> --env MDB_MCP_API_CLIENT_ID=<YOUR_MDB_MCP_API_CLIENT_ID> --env MDB_MCP_API_CLIENT_SECRET=<YOUR_MDB_MCP_API_CLIENT_SECRET> --env MDB_MCP_ASSISTANT_BASE_URL=<YOUR_MDB_MCP_ASSISTANT_BASE_URL> --env MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS=<YOUR_MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS> --env MDB_MCP_CONFIRMATION_REQUIRED_TOOLS=<YOUR_MDB_MCP_CONFIRMATION_REQUIRED_TOOLS> --env MDB_MCP_CONNECTION_IDLE_TIMEOUT_MS=<YOUR_MDB_MCP_CONNECTION_IDLE_TIMEOUT_MS> --env MDB_MCP_CONNECTION_SCOPE=<YOUR_MDB_MCP_CONNECTION_SCOPE> --env MDB_MCP_CONNECTION_STRING=<YOUR_MDB_MCP_CONNECTION_STRING> --env MDB_MCP_DANGEROUS_HOST_BINDING=<YOUR_MDB_MCP_DANGEROUS_HOST_BINDING> --env MDB_MCP_DISABLE_SERVER_SIDE_JS=<YOUR_MDB_MCP_DISABLE_SERVER_SIDE_JS> --env MDB_MCP_DISABLE_UNTRUSTED_DATA_WARNING=<YOUR_MDB_MCP_DISABLE_UNTRUSTED_DATA_WARNING> --env MDB_MCP_DISABLED_TOOLS=<YOUR_MDB_MCP_DISABLED_TOOLS> --env MDB_MCP_DRY_RUN=<YOUR_MDB_MCP_DRY_RUN> --env MDB_MCP_ELICITATION_TIMEOUT_MS=<YOUR_MDB_MCP_ELICITATION_TIMEOUT_MS> --env MDB_MCP_EVICTION_IDLE_GRACE_M_S=<YOUR_MDB_MCP_EVICTION_IDLE_GRACE_M_S> --env MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS=<YOUR_MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS> --env MDB_MCP_EXPORT_TIMEOUT_MS=<YOUR_MDB_MCP_EXPORT_TIMEOUT_MS> --env MDB_MCP_EXPORTS_PATH=<YOUR_MDB_MCP_EXPORTS_PATH> --env MDB_MCP_EXTERNALLY_MANAGED_SESSIONS=<YOUR_MDB_MCP_EXTERNALLY_MANAGED_SESSIONS> --env MDB_MCP_HEALTH_CHECK_HOST=<YOUR_MDB_MCP_HEALTH_CHECK_HOST> --env MDB_MCP_HEALTH_CHECK_PORT=<YOUR_MDB_MCP_HEALTH_CHECK_PORT> --env MDB_MCP_HTTP_BODY_LIMIT=<YOUR_MDB_MCP_HTTP_BODY_LIMIT> --env MDB_MCP_HTTP_HEADERS=<YOUR_MDB_MCP_HTTP_HEADERS> --env MDB_MCP_HTTP_HOST=<YOUR_MDB_MCP_HTTP_HOST> --env MDB_MCP_HTTP_PORT=<YOUR_MDB_MCP_HTTP_PORT> --env MDB_MCP_HTTP_RESPONSE_TYPE=<YOUR_MDB_MCP_HTTP_RESPONSE_TYPE> --env MDB_MCP_IDLE_TIMEOUT_MS=<YOUR_MDB_MCP_IDLE_TIMEOUT_MS> --env MDB_MCP_INDEX_CHECK=<YOUR_MDB_MCP_INDEX_CHECK> --env MDB_MCP_LOG_PATH=<YOUR_MDB_MCP_LOG_PATH> --env MDB_MCP_LOGGERS=<YOUR_MDB_MCP_LOGGERS> --env MDB_MCP_MAX_ACTIVE_CONNECTIONS=<YOUR_MDB_MCP_MAX_ACTIVE_CONNECTIONS> --env MDB_MCP_MAX_BYTES_PER_QUERY=<YOUR_MDB_MCP_MAX_BYTES_PER_QUERY> --env MDB_MCP_MAX_DOCUMENTS_PER_QUERY=<YOUR_MDB_MCP_MAX_DOCUMENTS_PER_QUERY> --env MDB_MCP_MAX_SESSIONS=<YOUR_MDB_MCP_MAX_SESSIONS> --env MDB_MCP_MAX_TIME_M_S=<YOUR_MDB_MCP_MAX_TIME_M_S> --env MDB_MCP_MCP_CLIENT_LOG_LEVEL=<YOUR_MDB_MCP_MCP_CLIENT_LOG_LEVEL> --env MDB_MCP_MONITORING_SERVER_FEATURES=<YOUR_MDB_MCP_MONITORING_SERVER_FEATURES> --env MDB_MCP_MONITORING_SERVER_HOST=<YOUR_MDB_MCP_MONITORING_SERVER_HOST> --env MDB_MCP_MONITORING_SERVER_PORT=<YOUR_MDB_MCP_MONITORING_SERVER_PORT> --env MDB_MCP_NOTIFICATION_TIMEOUT_MS=<YOUR_MDB_MCP_NOTIFICATION_TIMEOUT_MS> --env MDB_MCP_PREVIEW_FEATURES=<YOUR_MDB_MCP_PREVIEW_FEATURES> --env MDB_MCP_QUERY_COUNT_MAX_TIME_MS_CAP=<YOUR_MDB_MCP_QUERY_COUNT_MAX_TIME_MS_CAP> --env MDB_MCP_QUERY_COUNT_TIMEOUT_MS=<YOUR_MDB_MCP_QUERY_COUNT_TIMEOUT_MS> --env MDB_MCP_READ_ONLY=<YOUR_MDB_MCP_READ_ONLY> --env MDB_MCP_TELEMETRY=<YOUR_MDB_MCP_TELEMETRY> --env MDB_MCP_TIMEOUT_MS=<YOUR_MDB_MCP_TIMEOUT_MS> --env MDB_MCP_TRANSPORT=<YOUR_MDB_MCP_TRANSPORT> --env MDB_MCP_VOYAGE_API_KEY=<YOUR_MDB_MCP_VOYAGE_API_KEY> -- npx -y mongodb-mcp-server@3.2.1

Run this in a terminal to add the server to Claude Code.

What this does

mongodb-mcp-server exposes a set of tools to Claude over the Model Context Protocol. After you add it to claude_desktop_config.json (snippet above) and restart Claude Desktop, those tools become callable inside any conversation.

Requirements

This server needs the following environment variables to be set before it can run:

MDB_MCP_AGGREGATION_COUNT_MAX_TIME_MS_CAP
MDB_MCP_AGGREGATION_COUNT_TIMEOUT_MS
MDB_MCP_ALLOW_REQUEST_OVERRIDES
MDB_MCP_API_CLIENT_ID
MDB_MCP_API_CLIENT_SECRET
MDB_MCP_ASSISTANT_BASE_URL
MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS
MDB_MCP_CONFIRMATION_REQUIRED_TOOLS
MDB_MCP_CONNECTION_IDLE_TIMEOUT_MS
MDB_MCP_CONNECTION_SCOPE
MDB_MCP_CONNECTION_STRING
MDB_MCP_DANGEROUS_HOST_BINDING
MDB_MCP_DISABLE_SERVER_SIDE_JS
MDB_MCP_DISABLE_UNTRUSTED_DATA_WARNING
MDB_MCP_DISABLED_TOOLS
MDB_MCP_DRY_RUN
MDB_MCP_ELICITATION_TIMEOUT_MS
MDB_MCP_EVICTION_IDLE_GRACE_M_S
MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS
MDB_MCP_EXPORT_TIMEOUT_MS
MDB_MCP_EXPORTS_PATH
MDB_MCP_EXTERNALLY_MANAGED_SESSIONS
MDB_MCP_HEALTH_CHECK_HOST
MDB_MCP_HEALTH_CHECK_PORT
MDB_MCP_HTTP_BODY_LIMIT
MDB_MCP_HTTP_HEADERS
MDB_MCP_HTTP_HOST
MDB_MCP_HTTP_PORT
MDB_MCP_HTTP_RESPONSE_TYPE
MDB_MCP_IDLE_TIMEOUT_MS
MDB_MCP_INDEX_CHECK
MDB_MCP_LOG_PATH
MDB_MCP_LOGGERS
MDB_MCP_MAX_ACTIVE_CONNECTIONS
MDB_MCP_MAX_BYTES_PER_QUERY
MDB_MCP_MAX_DOCUMENTS_PER_QUERY
MDB_MCP_MAX_SESSIONS
MDB_MCP_MAX_TIME_M_S
MDB_MCP_MCP_CLIENT_LOG_LEVEL
MDB_MCP_MONITORING_SERVER_FEATURES
MDB_MCP_MONITORING_SERVER_HOST
MDB_MCP_MONITORING_SERVER_PORT
MDB_MCP_NOTIFICATION_TIMEOUT_MS
MDB_MCP_PREVIEW_FEATURES
MDB_MCP_QUERY_COUNT_MAX_TIME_MS_CAP
MDB_MCP_QUERY_COUNT_TIMEOUT_MS
MDB_MCP_READ_ONLY
MDB_MCP_TELEMETRY
MDB_MCP_TIMEOUT_MS
MDB_MCP_TRANSPORT
MDB_MCP_VOYAGE_API_KEY

Set these via the env object in your MCP config (see claude_desktop_config.json snippet above).

Frequently asked questions

How do I install mongodb-mcp-server?

Run the Claude Code command in the install section to add mongodb-mcp-server to Claude Code, or copy the ready-made config for your client from the install section on this page. Restart your client afterwards and the tools appear in your next conversation.

Which clients work with mongodb-mcp-server?

This page carries setup and config for Claude Code, Claude Desktop, Cursor and VS Code. Any other MCP client that accepts a standard server config can connect to mongodb-mcp-server as well.

Does mongodb-mcp-server need an API key?

Yes. Before it can run, set these environment variables: MDB_MCP_AGGREGATION_COUNT_MAX_TIME_MS_CAP, MDB_MCP_AGGREGATION_COUNT_TIMEOUT_MS, MDB_MCP_ALLOW_REQUEST_OVERRIDES, MDB_MCP_API_CLIENT_ID, MDB_MCP_API_CLIENT_SECRET, MDB_MCP_ASSISTANT_BASE_URL, MDB_MCP_ATLAS_TEMPORARY_DATABASE_USER_LIFETIME_MS, MDB_MCP_CONFIRMATION_REQUIRED_TOOLS, MDB_MCP_CONNECTION_IDLE_TIMEOUT_MS, MDB_MCP_CONNECTION_SCOPE, MDB_MCP_CONNECTION_STRING, MDB_MCP_DANGEROUS_HOST_BINDING, MDB_MCP_DISABLE_SERVER_SIDE_JS, MDB_MCP_DISABLE_UNTRUSTED_DATA_WARNING, MDB_MCP_DISABLED_TOOLS, MDB_MCP_DRY_RUN, MDB_MCP_ELICITATION_TIMEOUT_MS, MDB_MCP_EVICTION_IDLE_GRACE_M_S, MDB_MCP_EXPORT_CLEANUP_INTERVAL_MS, MDB_MCP_EXPORT_TIMEOUT_MS, MDB_MCP_EXPORTS_PATH, MDB_MCP_EXTERNALLY_MANAGED_SESSIONS, MDB_MCP_HEALTH_CHECK_HOST, MDB_MCP_HEALTH_CHECK_PORT, MDB_MCP_HTTP_BODY_LIMIT, MDB_MCP_HTTP_HEADERS, MDB_MCP_HTTP_HOST, MDB_MCP_HTTP_PORT, MDB_MCP_HTTP_RESPONSE_TYPE, MDB_MCP_IDLE_TIMEOUT_MS, MDB_MCP_INDEX_CHECK, MDB_MCP_LOG_PATH, MDB_MCP_LOGGERS, MDB_MCP_MAX_ACTIVE_CONNECTIONS, MDB_MCP_MAX_BYTES_PER_QUERY, MDB_MCP_MAX_DOCUMENTS_PER_QUERY, MDB_MCP_MAX_SESSIONS, MDB_MCP_MAX_TIME_M_S, MDB_MCP_MCP_CLIENT_LOG_LEVEL, MDB_MCP_MONITORING_SERVER_FEATURES, MDB_MCP_MONITORING_SERVER_HOST, MDB_MCP_MONITORING_SERVER_PORT, MDB_MCP_NOTIFICATION_TIMEOUT_MS, MDB_MCP_PREVIEW_FEATURES, MDB_MCP_QUERY_COUNT_MAX_TIME_MS_CAP, MDB_MCP_QUERY_COUNT_TIMEOUT_MS, MDB_MCP_READ_ONLY, MDB_MCP_TELEMETRY, MDB_MCP_TIMEOUT_MS, MDB_MCP_TRANSPORT, MDB_MCP_VOYAGE_API_KEY. They go in the env block of your MCP config.

Imported from the Official MCP Registry. The details above come from the registry entry; the maker can claim this listing to correct them, add docs, and see its traffic.

Is this your MCP server?

Claim this listing to see its traffic, fix details yourself, and skip the review queue on future updates.

Listed on clauderules.net

Add this badge to your README

Show visitors this server is listed in the ClaudeRules directory. The badge links straight to this listing.

Markdown
[![Listed on clauderules.net](https://clauderules.net/api/badge/io-github-mongodb-js-mongodb-mcp-server)](https://clauderules.net/mcp/io-github-mongodb-js-mongodb-mcp-server)
HTML
<a href="https://clauderules.net/mcp/io-github-mongodb-js-mongodb-mcp-server" target="_blank" rel="noopener noreferrer"><img src="https://clauderules.net/api/badge/io-github-mongodb-js-mongodb-mcp-server" alt="Listed on clauderules.net" /></a>