MongoDB

MongoDB

一个模型上下文协议(MCP)服务器,使大型语言模型(LLM)能够直接与 MongoDB 数据库交互。通过自然语言无缝地查询集合、检查模式和管理数据。

数据库交互
AI集成系统
数据与应用分析
访问服务器

README

🗄️ 用于 LLM 的 MongoDB MCP 服务器

Node.js 18+ License: MIT smithery badge

一个模型上下文协议 (MCP) 服务器,使 LLM 能够直接与 MongoDB 数据库交互。通过自然语言无缝查询集合、检查模式和管理数据。

✨ 特性

  • 🔍 集合模式检查
  • 📊 文档查询和过滤
  • 📈 索引管理
  • 📝 文档操作(插入、更新、删除)

演示视频

https://github.com/user-attachments/assets/2389bf23-a10d-49f9-bca9-2b39a1ebe654

🚀 快速开始

要开始使用,请找到您的 MongoDB 连接 URL,并将此配置添加到您的 Claude Desktop 配置文件:

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

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "mongo-mcp",
        "mongodb://<username>:<password>@<host>:<port>/<database>?authSource=admin"
      ]
    }
  }
}

通过 Smithery 安装

要通过 Smithery 自动为 Claude Desktop 安装 MongoDB MCP 服务器:

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

前提条件

  • Node.js 18+
  • npx
  • Docker 和 Docker Compose(仅用于本地沙箱测试)
  • MCP 客户端(例如 Claude Desktop App)

测试沙箱设置

如果您没有要连接的 MongoDB 服务器,并且想要创建一个示例沙箱,请按照以下步骤操作

  1. 使用 Docker Compose 启动 MongoDB:
docker-compose up -d
  1. 使用测试数据填充数据库:
npm run seed

配置 Claude Desktop

将此配置添加到您的 Claude Desktop 配置文件:

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

本地开发模式:

{
  "mcpServers": {
    "mongodb": {
      "command": "node",
      "args": [
        "dist/index.js",
        "mongodb://root:example@localhost:27017/test?authSource=admin"
      ]
    }
  }
}

测试沙箱数据结构

种子脚本创建三个包含示例数据的集合:

Users

  • 个人信息(姓名、电子邮件、年龄)
  • 带有坐标的嵌套地址
  • 兴趣数组
  • 会员日期

Products

  • 产品详细信息(名称、SKU、类别)
  • 嵌套规格
  • 价格和库存信息
  • 标签和评分

Orders

  • 包含项目的订单详细信息
  • 用户引用
  • 运输和付款信息
  • 状态跟踪

🎯 示例提示

尝试使用 Claude 的这些提示来探索功能:

基本操作

"数据库中有哪些集合?"
"显示 users 集合的模式"
"查找旧金山的所有用户"

高级查询

"查找所有有库存且价格低于 1000 美元的电子产品"
"显示来自用户 john@example.com 的所有订单"
"列出评分高于 4.5 的产品"

索引管理

"users 集合上存在哪些索引?"
"在 products 集合上为 'category' 字段创建一个索引"
"列出所有集合中的所有索引"

文档操作

"在 products 集合中插入一个名为 'Gaming Laptop' 的新产品"
"将 ID 为 X 的订单状态更新为 '已发货'"
"查找并删除所有缺货的产品"

📝 可用工具

服务器提供以下工具用于数据库交互:

查询工具

  • find: 使用过滤和投影查询文档
  • listCollections: 列出可用的集合
  • insertOne: 插入单个文档
  • updateOne: 更新单个文档
  • deleteOne: 删除单个文档

索引工具

  • createIndex: 创建新索引
  • dropIndex: 删除索引
  • indexes: 列出集合的索引

📜 许可证

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅 LICENSE 文件。

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选
mcp-server-qdrant

mcp-server-qdrant

这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。

官方
精选
AIO-MCP Server

AIO-MCP Server

🚀 集成了 AI 搜索、RAG 和多服务(GitLab/Jira/Confluence/YouTube)的一体化 MCP 服务器,旨在增强 AI 驱动的开发工作流程。来自 Folk。

精选
本地
Knowledge Graph Memory Server

Knowledge Graph Memory Server

为 Claude 实现持久性记忆,使用本地知识图谱,允许 AI 记住用户的信息,并可在自定义位置存储,跨对话保持记忆。

精选
本地
Hyperbrowser

Hyperbrowser

欢迎来到 Hyperbrowser,人工智能的互联网。Hyperbrowser 是下一代平台,旨在增强人工智能代理的能力,并实现轻松、可扩展的浏览器自动化。它专为人工智能开发者打造,消除了本地基础设施和性能瓶颈带来的麻烦,让您能够:

精选
本地
https://github.com/Streen9/react-mcp

https://github.com/Streen9/react-mcp

react-mcp 与 Claude Desktop 集成,能够根据用户提示创建和修改 React 应用程序。

精选
本地
MCP Atlassian

MCP Atlassian

适用于 Atlassian Cloud 产品(Confluence 和 Jira)的 Model Context Protocol (MCP) 服务器。此集成专为 Atlassian Cloud 实例设计,不支持 Atlassian Server 或 Data Center 部署。

精选