nabid-pf

MongoDB Mongoose MCP

Community nabid-pf
Updated

MongoDB Mongoose MCP

An MCP (Model Context Protocol) server that enables Claude to interact with MongoDB databases, with optional Mongoose schema support.

npm versionLicense: MIT

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:

  1. Go to Settings > Developer > Edit config
  2. 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

# 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 varMake 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

MCP Server · Populars

MCP Server · New

    appwrite

    Appwrite MCP server

    Appwrite’s MCP server. Operating your backend has never been easier.

    Community appwrite
    pydantic

    Pydantic Validation

    Data validation using Python type hints

    Community pydantic
    arangodb

    Python-Arango

    The official ArangoDB Python driver.

    Community arangodb
    probelabs

    Probe

    Probe is an AI-friendly, fully local, semantic code search engine which which works with for large codebases. The final missing building block for next generation of AI coding tools.

    Community probelabs
    probelabs

    Docs MCP Server

    Turn any github repo to MCP server, and chat with code or docs

    Community probelabs