Content
# MongoDB MCP Server
A Model Context Protocol server that provides read-only access to MongoDB databases through standardized MCP tools and resources.
<a href="https://glama.ai/mcp/servers/cmywezu1sn">
<img width="380" height="200" src="https://glama.ai/mcp/servers/cmywezu1sn/badge" alt="MongoDB Server MCP server" />
</a>
## Overview
This MongoDB MCP server enables AI assistants to directly query and analyze MongoDB databases without write access, maintaining data safety while providing powerful data exploration capabilities.
## Features
### MongoDB Operations
- **Database Exploration**: List databases and collections
- **Schema Discovery**: Infer collection schemas from sample documents
- **Querying**: Execute MongoDB queries with filtering, projection, sorting, and limiting
- **Aggregation**: Run read-only aggregation pipelines with safety validation
- **Text Search**: Perform full-text search on collections with text indexes
- **Geospatial Queries**: Find locations near points, within polygons, or intersecting geometries
- **Document Operations**: Count documents, sample random documents, find documents by IDs
- **Data Analysis**: Get collection statistics, index information, and query execution plans
- **Performance Insights**: Examine query execution plans to optimize performance
- **Data Exploration**: Get distinct values, field distributions, and data samples
- **Format Conversion**: Export query results as JSON or CSV formats
### Enhanced Capabilities
- **Schema Inference**: Automatically detect data types and structure from documents
- **Visualization Hints**: Intelligent suggestions for data visualization based on result content
- **Safety Validation**: Prevents write operations in aggregation pipelines
- **Example-Rich Documentation**: Each tool includes detailed examples in its description
## Requirements
### Environment Variables
- `MONGODB_URI` (required): MongoDB connection string with authentication if needed
- `MONGODB_DEFAULT_DATABASE` (optional): Default database name when not specified in queries
### Prerequisites
- Network access to MongoDB server
- Authentication credentials if required by MongoDB instance
- Appropriate read permissions on target databases
## Installation
### Building from Source
Install dependencies:
```bash
npm install
```
Build the server:
```bash
npm run build
```
For development with auto-rebuild:
```bash
npm run watch
```
### Integration with Claude Desktop
To use with Claude Desktop, add the server configuration:
On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
On Windows: `%APPDATA%/Claude/claude_desktop_config.json`
```json
{
"mcpServers": {
"mongodb": {
"command": "/path/to/mongodb-server/build/index.js",
"env": {
"MONGODB_URI": "mongodb://username:password@hostname:port/database",
"MONGODB_DEFAULT_DATABASE": "your_default_db"
}
}
}
}
```
### Integration with Claude Web
For Claude Web via the MCP Chrome extension, add configuration to Cline MCP settings:
```json
{
"mcpServers": {
"mongodb": {
"command": "node",
"args": ["/path/to/mongodb-server/build/index.js"],
"env": {
"MONGODB_URI": "mongodb://username:password@hostname:port/database",
"MONGODB_DEFAULT_DATABASE": "your_default_db"
}
}
}
}
```
### Integration with Claude Code
To use with Claude Code, use the following commands:
```bash
cd /path/to/my/project
claude mcp add mongo-server /path/to/mongodb-mcp/build/index.js -e "MONGODB_URI=mongodb://user@password:27017/dbname?authSource=authDbName" -e MONGO_DEFAULT_DATABASE=dbname
```
Make sure to replace the placeholders with your actual MongoDB connection string and default database name.
If configured correctly, you should see the following when you run `claude`:
```bash
╭───────────────────────────────────────────────────────╮
│ ✻ Welcome to Claude Code research preview! │
│ │
│ /help for help │
│ │
│ cwd: <path-to-project-directory> │
│ │
│ ─────────────────────────────────────────────────── │
│ │
│ MCP Servers: │
│ │
│ • mongo-server connected │
╰───────────────────────────────────────────────────────╯
```
If you run into issues, see the Claude Code [documentation](https://docs.anthropic.com/en/docs/agents-and-tools/claude-code/tutorials#set-up-model-context-protocol-mcp-servers).
## Security Considerations
- This server provides read-only access by design
- Connection strings may contain sensitive authentication information
- Store connection strings securely in environment variables
- Use a MongoDB user with read-only permissions
## Debugging
Since MCP servers communicate over stdio, debugging can be challenging. Use the [MCP Inspector](https://github.com/modelcontextprotocol/inspector), which is available as a package script:
```bash
npm run inspector
```
The Inspector will provide a URL to access debugging tools in your browser.
Connection Info
You Might Also Like
MarkItDown MCP
Python tool for converting files and office documents to Markdown.
Sequential Thinking
Model Context Protocol Servers
Fetch
Model Context Protocol Servers
Filesystem
Model Context Protocol Servers
TrendRadar
🎯 Say goodbye to information overload. AI helps you understand news and...
Github
GitHub's official MCP Server