harryelv/mongodb-mcp-server
3.1
If you are the rightful owner of mongodb-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
A Model Context Protocol (MCP) server that enables Cursor IDE to query MongoDB databases for debugging and development.
Tools
3
Resources
0
Prompts
0
MongoDB MCP Server
A Model Context Protocol (MCP) server that enables Cursor IDE to query MongoDB databases for debugging and development.
Features
- List Collections: See all collections in your database
- Find Documents: Query documents with filters and limits
- Count Documents: Count documents matching specific criteria
Installation for Cursor IDE
Option 1: NPX (Recommended - No local installation needed)
Add to your .cursor/mcp.json:
{
"mcpServers": {
"mongodb": {
"command": "npx",
"args": ["-y", "@harryelv/mongodb-mcp-server"],
"env": {
"MONGODB_CONNECTION_STRING": "mongodb://localhost:27017",
"MONGODB_DATABASE": "your_database_name"
}
}
}
}
Option 2: Local Development
If you want to modify the source code:
git clone https://github.com/harryelv/mongodb-mcp-server.git
cd mongodb-mcp-server
npm install
npm run build
Then add to your .cursor/mcp.json:
{
"mcpServers": {
"mongodb": {
"command": "node",
"args": ["/path/to/mongodb-mcp-server/dist/server.js"],
"env": {
"MONGODB_CONNECTION_STRING": "mongodb://localhost:27017",
"MONGODB_DATABASE": "your_database_name"
}
}
}
}
Configuration
Environment Variables
MONGODB_CONNECTION_STRING: MongoDB connection string (default:mongodb://localhost:27017)MONGODB_DATABASE: Database name to connect to (default:test)
Usage in Cursor
After configuration, restart Cursor and use Agent Mode to ask questions like:
- "List all collections in my database"
- "Find users where age is greater than 25"
- "Count how many orders have status pending"
- "Show me 10 products from the products collection"
Tools Available
listCollections
Lists all collections in the database.
- No parameters required
findDocuments
collection(string): Collection namefilter(object, optional): MongoDB filter querylimit(number, optional): Max documents to return (default: 10)
countDocuments
collection(string): Collection namefilter(object, optional): MongoDB filter query
Example Usage
// In Cursor Agent Mode, you can ask:
"Show me all collections"
"Find 5 users from the users collection"
"Count documents in orders collection where status is 'pending'"
Security
- This server is read-only by design - it only provides query capabilities
- No write, update, or delete operations are supported
- Use MongoDB user accounts with read-only permissions for additional security
Development
Prerequisites
- Node.js 18+
- MongoDB server
- TypeScript
Build Commands
npm run build # Compile TypeScript
npm run dev # Run in development mode
npm start # Run compiled server
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the file for details.