Loading languages...
MC

mcp-mongo-server

@kiliczsh276

A Model Context Protocol Server for MongoDB

mongodb
database
llm-integration
context-protocol

MCP MongoDB Server


NPM Version NPM Downloads NPM License smithery badge Verified on MseeP

A Model Context Protocol server that enables LLMs to interact with MongoDB databases. This server provides capabilities for inspecting collection schemas and executing MongoDB operations through a standardized interface.

Demo

MCP MongoDB Server Demo | Claude Desktop

Key Features

  • Smart ObjectId Handling - Configurable auto/none/force modes for string-to-ObjectId conversion
  • Read-Only Mode - Protection against write operations, uses secondary read preference
  • Schema Inference - Automatic collection schema detection from document samples
  • Query & Aggregation - Full MongoDB query and aggregation pipeline support with optional explain plans
  • Write Operations - Insert, update, and index creation (when not in read-only mode)
  • Collection Completions - Auto-complete collection names for LLM integration

Installation

npx -y mcp-mongo-server mongodb://localhost:27017/database

Usage

# Start server with MongoDB URI
npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database

# Connect in read-only mode
npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database --read-only

Environment Variables

Variable Description
MCP_MONGODB_URI MongoDB connection URI
MCP_MONGODB_READONLY Enable read-only mode ("true")

Documentation

License

MIT - see LICENSE for details.

# mcpServer Config

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database"
      ]
    },
    "mongodb-readonly": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database",
        "--read-only"
      ]
    }
  }
}

# stdio

npx -y mcp-mongo-server mongodb://<user>:<password>@<host>:<port>/<database>
Transport:
stdio
Language:
TypeScript
Created: 12/4/2024
Updated: 3/22/2026