MongoDB MCP Server

MongoDB MCP Server
官方

为LLM提供对MongoDB数据库的只读访问权限,以检查集合模式并执行聚合管道。

数据库
JavaScript
访问服务器

README

MongoDB MCP 服务器

一个模型上下文协议服务器,提供对 MongoDB 数据库的只读访问。该服务器使 LLM 能够检查集合模式并执行聚合管道。

组件

工具

  • aggregate

    • 对连接的数据库执行 MongoDB 聚合管道
    • 输入:
      • collection (字符串): 要查询的集合
      • pipeline (数组): MongoDB 聚合管道阶段
      • options (对象): 可选的聚合设置
        • allowDiskUse (布尔值): 允许需要磁盘使用的操作
        • maxTimeMS (数字): 最大执行时间,以毫秒为单位
        • comment (字符串): 用于标识操作的注释
    • 如果未指定 limit 阶段,则默认限制为 1000 个文档
    • 默认超时时间为 30 秒
  • explain

    • 获取聚合管道的执行计划
    • 输入:
      • collection (字符串): 要分析的集合
      • pipeline (数组): MongoDB 聚合管道阶段
      • verbosity (字符串): 解释的详细程度
        • 选项: "queryPlanner", "executionStats", "allPlansExecution"
        • 默认: "queryPlanner"

资源

服务器为数据库中的每个集合提供模式信息:

  • 集合模式 (mongodb://<host>/<collection>/schema)
    • 每个集合的推断 JSON 模式信息
    • 包括字段名称和数据类型
    • 模式源自采样集合文档

与 Claude Desktop 一起使用

要将此服务器与 Claude Desktop 应用程序一起使用,请将以下配置添加到 claude_desktop_config.json 的 "mcpServers" 部分:

"mongodb": {
      "command": "npx",
      "args": [
        "-y" ,
        "@pash1986/mcp-server-mongodb"
      ],
     "env" : {
	"MONGODB_URI" : "mongodb+srv://<yourcluster>" // 'mongodb://localhost:27017'
	}
    }

mydb 替换为您的数据库名称,并根据需要调整连接字符串。

使用示例

基本聚合

{
  "collection": "users",
  "pipeline": [
    { "$match": { "age": { "$gt": 21 } } },
    { "$group": {
      "_id": "$city",
      "avgAge": { "$avg": "$age" },
      "count": { "$sum": 1 }
    }},
    { "$sort": { "count": -1 } },
    { "$limit": 10 }
  ],
  "options": {
    "allowDiskUse": true,
    "maxTimeMS": 60000,
    "comment": "City-wise user statistics"
  }
}

查询解释

{
  "collection": "users",
  "pipeline": [
    { "$match": { "age": { "$gt": 21 } } },
    { "$sort": { "age": 1 } }
  ],
  "verbosity": "executionStats"
}

安全特性

  • 如果管道中未指定 limit,则自动限制为 1000 个文档
  • 所有操作的默认超时时间为 30 秒
  • 仅只读操作
  • 从集合样本进行安全模式推断

许可证

此 MCP 服务器在 MIT 许可证下获得许可。 这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。 有关更多详细信息,请参阅项目存储库中的 LICENSE 文件。

推荐服务器

Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
Supabase MCP Server

Supabase MCP Server

一个模型上下文协议(MCP)服务器,它提供对 Supabase 管理 API 的编程访问。该服务器允许 AI 模型和其他客户端通过标准化的接口来管理 Supabase 项目和组织。

精选
JavaScript
@kazuph/mcp-gmail-gas

@kazuph/mcp-gmail-gas

用于 Gmail 集成的模型上下文协议 (Model Context Protocol, MCP) 服务器。它允许 Claude Desktop(或任何 MCP 客户端)通过 Google Apps Script 与您的 Gmail 帐户进行交互。

精选
JavaScript
MCP DuckDB Knowledge Graph Memory Server

MCP DuckDB Knowledge Graph Memory Server

一个为 Claude 设计的记忆服务器,它使用 DuckDB 存储和检索知识图谱数据,从而增强了对话的性能和查询能力,并能持久保存用户信息。

精选
TypeScript
Metabase MCP Server

Metabase MCP Server

使人工智能助手能够与 Metabase 数据库和仪表板进行交互,允许用户通过自然语言列出和执行查询、访问数据可视化以及与数据库资源进行交互。

精选
JavaScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Airtable MCP Server

Airtable MCP Server

一个模型上下文协议(Model Context Protocol,MCP)服务器,通过 Claude Desktop 或其他 MCP 客户端,为以编程方式管理 Airtable 数据库、表格、字段和记录提供工具。

精选
JavaScript
mcp-shodan

mcp-shodan

用于查询 Shodan API 和 Shodan CVEDB 的 MCP 服务器。该服务器提供 IP 查询、设备搜索、DNS 查询、漏洞查询、CPE 查询等工具。

精选
JavaScript
Verodat MCP Server

Verodat MCP Server

一个 MCP 服务器,集成了 Verodat 的数据管理功能和像 Claude Desktop 这样的人工智能系统,使用户能够管理账户、工作区和数据集,并能对他们的数据执行人工智能驱动的查询。

官方
本地
TypeScript
Tembo MCP Server

Tembo MCP Server

一个 MCP 服务器,它使 Claude 能够与 Tembo Cloud 平台 API 交互,从而允许用户通过自然语言管理 Tembo Cloud 资源。

官方
TypeScript