MongoDB Mongoose
An MCP server for MongoDB with optional Mongoose schema support.
Install
Install and configure the MCP from https://github.com/nabid-pf/mongo-mongoose-mcp now. Follow the repository's installation instructions, ask me for anything you can't complete yourself, and verify its tools load.README
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 projectionlistCollections: List available collectionsinsertOne: Insert a single documentupdateOne: Update a single documentdeleteOne: Soft delete a single documentcount: Count documents with filteringaggregate: Query documents with aggregation pipeline
Index Tools
createIndex: Create a new indexdropIndex: Remove an indexindexes: 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
# Clone the repository
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
// models/users.js (for users collection)
export default {
name: { type: String, required: true },
email: { type: String, required: true, unique: true },
age: Number,
createdAt: { type: Date, default: Date.now },
isDeleted: { type: Boolean, default: false },
deletedAt: Date
};
How It Works
This project uses:
- MongoDB native driver for direct database operations
- Mongoose for schema-based operations when schemas are available
- The Model Context Protocol (MCP) to communicate with Claude
License
MIT
Related servers
YouTube Video Summarizernabid-pf63Fetch and summarize YouTube videos by extracting titles, descriptions, and transcripts.Everythingmodelcontextprotocol91KReference / test server with prompts, resources, and toolsFetchmodelcontextprotocol91KWeb content fetching and conversion for efficient LLM usageFilesystemmodelcontextprotocol91KSecure file operations with configurable access controls
