Connect Claude to MongoDB with Mongoose
Connect Claude to MongoDB with this MCP server. Query, insert, update, and manage collections with optional Mongoose schema support.
Why it matters
Enable Claude to directly interact with MongoDB databases, leveraging Mongoose schemas for enhanced data validation and operations. This asset allows for complex data querying, manipulation, and management through natural language.
Outcomes
What it gets done
Query MongoDB collections using natural language commands.
Insert, update, and delete documents with optional Mongoose schema validation.
List collections, manage indexes, and perform aggregation queries.
Integrate with Claude Desktop for seamless database interaction.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-mongodb-mongoose | bash Capabilities
Tools your agent gets
Query documents with filtering and projection
List available collections
Insert a single document
Update a single document
Soft delete a single document
Count documents with filtering
Query documents with aggregation pipeline
Create a new index
Overview
MongoDB & Mongoose MCP Server
What it does
This MCP server enables Claude to interact with MongoDB databases, with optional Mongoose schema support.
How it connects
Integrate with Claude Desktop by adding the provided configuration to your `claude_desktop_config.json` file.
Source 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
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.
