MongoDB

by kiliczsh
Verified
MIT License
1,002
167
  • Apple

Integrations

  • Provides access to MongoDB databases, allowing LLMs to inspect collection schemas and execute MongoDB operations like queries, aggregations, updates, inserts, and creating indexes

MCP MongoDB 服务器


模型上下文协议 (MLM) 服务器,使 LLM 能够与 MongoDB 数据库交互。该服务器提供通过标准化接口检查集合架构和执行 MongoDB 操作的功能。

演示

主要特点

智能 ObjectId 处理

  • 字符串ID与MongoDB ObjectId之间的智能转换
  • 可使用objectIdMode参数配置:
    • "auto" :根据字段名称转换(默认)
    • "none" :无转换
    • "force" :强制所有字符串 ID 字段为 ObjectId

灵活配置

  • 环境变量
    • MCP_MONGODB_URI :MongoDB 连接 URI
    • MCP_MONGODB_READONLY :设置为“true”时启用只读模式
  • 命令行选项
    • --read-only-r :以只读模式连接

只读模式

  • 防止写入操作(更新、插入、创建索引)
  • 使用 MongoDB 的辅助读取偏好来获得最佳性能
  • 非常适合安全连接到生产数据库

MongoDB 操作

  • 读取操作
    • 查询文档并进行可选的执行计划分析
    • 执行聚合管道
    • 统计符合条件的文档数量
    • 获取集合架构信息
  • 写入操作(不处于只读模式时):
    • 更新文档
    • 插入新文档
    • 创建索引

LLM 整合

  • 收集完成以增强 LLM 交互
  • 模式推理可改善上下文理解
  • 收集分析以获取数据洞察

安装

全局安装

npm install -g mcp-mongo-server

为了发展

# Clone repository git clone https://github.com/kiliczsh/mcp-mongo-server.git cd mcp-mongo-server # Install dependencies npm install # Build npm run build # Development with auto-rebuild npm run watch

用法

基本用法

# Start server with MongoDB URI npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database # Connect in read-only mode npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database --read-only

环境变量

您可以使用环境变量配置服务器,这对于 CI/CD 管道、Docker 容器或当您不想在命令参数中公开连接详细信息时特别有用:

# Set MongoDB connection URI export MCP_MONGODB_URI="mongodb://muhammed:kilic@localhost:27017/database" # Enable read-only mode export MCP_MONGODB_READONLY="true" # Run server (will use environment variables if no URI is provided) npx -y mcp-mongo-server

在 Claude Desktop 配置中使用环境变量:

{ "mcpServers": { "mongodb-env": { "command": "npx", "args": [ "-y", "mcp-mongo-server" ], "env": { "MCP_MONGODB_URI": "mongodb://muhammed:kilic@localhost:27017/database", "MCP_MONGODB_READONLY": "true" } } } }

在 Docker 中使用环境变量:

docker run -e MCP_MONGODB_URI="mongodb://muhammed:kilic@localhost:27017/database" \ -e MCP_MONGODB_READONLY="true" \ mcp-mongo-server

与 Claude Desktop 集成

手动配置

将服务器配置添加到 Claude Desktop 的配置文件中:

MacOS~/Library/Application Support/Claude/claude_desktop_config.json Windows%APPDATA%/Claude/claude_desktop_config.json

命令行参数方法:

{ "mcpServers": { "mongodb": { "command": "npx", "args": [ "-y", "mcp-mongo-server", "mongodb://muhammed:kilic@localhost:27017/database" ] }, "mongodb-readonly": { "command": "npx", "args": [ "-y", "mcp-mongo-server", "mongodb://muhammed:kilic@localhost:27017/database", "--read-only" ] } } }

环境变量方法:

{ "mcpServers": { "mongodb": { "command": "npx", "args": [ "-y", "mcp-mongo-server" ], "env": { "MCP_MONGODB_URI": "mongodb://muhammed:kilic@localhost:27017/database" } }, "mongodb-readonly": { "command": "npx", "args": [ "-y", "mcp-mongo-server" ], "env": { "MCP_MONGODB_URI": "mongodb://muhammed:kilic@localhost:27017/database", "MCP_MONGODB_READONLY": "true" } } } }

GitHub 包使用情况:

{ "mcpServers": { "mongodb": { "command": "npx", "args": [ "-y", "github:kiliczsh/mcp-mongo-server", "mongodb://muhammed:kilic@localhost:27017/database" ] }, "mongodb-readonly": { "command": "npx", "args": [ "-y", "github:kiliczsh/mcp-mongo-server", "mongodb://muhammed:kilic@localhost:27017/database", "--read-only" ] } } }

与 Windsurf 和 Cursor 集成

MCP MongoDB 服务器可以与 Windsurf 和 Cursor 一起使用,方式与 Claude Desktop 类似。

风帆冲浪配置

将服务器添加到您的 Windsurf 配置:

{ "mcpServers": { "mongodb": { "command": "npx", "args": [ "-y", "mcp-mongo-server", "mongodb://muhammed:kilic@localhost:27017/database" ] } } }

游标配置

对于 Cursor,将服务器配置添加到您的设置中:

{ "mcpServers": { "mongodb": { "command": "npx", "args": [ "-y", "mcp-mongo-server", "mongodb://muhammed:kilic@localhost:27017/database" ] } } }

您还可以将环境变量方法与 Windsurf 和 Cursor 一起使用,遵循 Claude Desktop 配置中显示的相同模式。

自动安装

使用 Smithery

npx -y @smithery/cli install mcp-mongo-server --client claude

使用 mcp-get

npx @michaellatman/mcp-get@latest install mcp-mongo-server

可用工具

查询操作

  • 查询:执行 MongoDB 查询
    { collection: "users", filter: { age: { $gt: 30 } }, projection: { name: 1, email: 1 }, limit: 20, explain: "executionStats" // Optional }
  • 聚合:运行聚合管道
    { collection: "orders", pipeline: [ { $match: { status: "completed" } }, { $group: { _id: "$customerId", total: { $sum: "$amount" } } } ], explain: "queryPlanner" // Optional }
  • count :统计匹配的文档数量
    { collection: "products", query: { category: "electronics" } }

写入操作

  • 更新:修改文档
    { collection: "posts", filter: { _id: "60d21b4667d0d8992e610c85" }, update: { $set: { title: "Updated Title" } }, upsert: false, multi: false }
  • 插入:添加新文档
    { collection: "comments", documents: [ { author: "user123", text: "Great post!" }, { author: "user456", text: "Thanks for sharing" } ] }
  • createIndex :创建集合索引
    { collection: "users", indexes: [ { key: { email: 1 }, unique: true, name: "email_unique_idx" } ] }

系统操作

  • serverInfo :获取 MongoDB 服务器详细信息
    { includeDebugInfo: true // Optional }

调试

由于 MCP 服务器通过 stdio 进行通信,调试起来可能比较困难。使用 MCP 检查器可以更好地了解情况:

npm run inspector

这将提供一个 URL 来访问浏览器中的调试工具。

执照

此 MCP 服务器采用 MIT 许可证。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

模型上下文协议 (MLM) 服务器,使 LLM 能够与 MongoDB 数据库交互。该服务器提供通过标准化接口检查集合架构和执行 MongoDB 操作的功能。

  1. Demo
    1. Key Features
      1. Smart ObjectId Handling
      2. Flexible Configuration
      3. Read-Only Mode
      4. MongoDB Operations
      5. LLM Integration
    2. Installation
      1. Global Installation
      2. For Development
    3. Usage
      1. Basic Usage
      2. Environment Variables
    4. Integration with Claude Desktop
      1. Manual Configuration
      2. GitHub Package Usage:
    5. Integration with Windsurf and Cursor
      1. Windsurf Configuration
      2. Cursor Configuration
      3. Automated Installation
    6. Available Tools
      1. Query Operations
      2. Write Operations
      3. System Operations
    7. Debugging
      1. License
        ID: zc7f7d53hc