What is An MCP server that enables Claude to interact with MongoDB databases, with optional Mongoose schema support.?
MongoDB Mongoose MCP is an MCP (Model Context Protocol) server that enables Claude to interact with MongoDB databases, with optional Mongoose schema support. It allows for querying, aggregation, inserting, updating, and managing MongoDB collections directly from Claude, along with features like soft delete implementation and a clean separation between schema-based and schemaless operations.
Documentation
MongoDB Mongoose MCP
An MCP (Model Context Protocol) server that enables Claude to interact with MongoDB databases, with optional Mongoose schema support.
Features
Query, aggregation, insert, update, and manage MongoDB collections directly from Claude
Optional Mongoose schema support for data validation and hooks
Soft delete implementation for document safety
Clean separation between schema-based and schemaless operations
Prerequisites
Node.js (v18 or higher)
MongoDB
Integrating with Claude Desktop
To add the MCP server to Claude Desktop:
Go to Settings > Developer > Edit config
Add the following to your claude_desktop_config.json file:
{
"mcpServers": {
"mongodb-mongoose": {
"command": "npx",
"args": [
"-y",
"mongo-mongoose-mcp",
],
"env": {
"MONGODB_URI": "<your mongodb uri>",
"SCHEMA_PATH" : "<path to the root folder of all your mongoose schema objects>"
}
}
}
}
Available MCP Commands
When integrated with Claude, the following commands become available:
Query Tools
find: Query documents with filtering and projection
listCollections: List available collections
insertOne: Insert a single document
updateOne: Update a single document
deleteOne: Soft delete a single document
count: Count documents with filtering
aggregate: Query documents with aggregation pipeline
Index Tools
createIndex: Create a new index
dropIndex: Remove an index
indexes: List indexes for a collection
Example Usage
Once integrated with Claude Desktop, you can use natural language to interact with your MongoDB database:
"Show me all users in my database who are older than 30"
"Insert a new product with name 'Widget X', price $29.99, and category 'Electronics'"
"Count all completed orders from the past week"
"Create an index on the email field of the users collection"
For Developers# Building from Source
git clone https://github.com/nabid-pf/mongo-mongoose-mcp.git
cd mongo-mongoose-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Test with the MCP inspector
npx @modelcontextprotocol/inspector node dist/index.js
Creating Mongoose Schemas
Place your Mongoose schema object files in the a directory and specify that path in SCHEMA_PATH var
Make sure file names reflect the collection name