Mongo Mcp

Mongo Mcp

🚀 🗄️ MongoDB MCP 服务器用于 LLM

这是一个模型上下文协议(MCP)服务器,它能让大型语言模型(LLMs)直接与 MongoDB 数据库进行交互。借助该服务器,用户可以通过自然语言对集合进行查询、检查模式、分析数据以及进行管理。

Node.js 18+ License: MIT smithery badge

🚀 快速开始

要开始使用,请找到 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://:@:/?authSource=admin"
]
}
}
}

通过 Smithery 安装

要通过 Smithery 安装:

smithery install --package mongo-mcp

然后在 smithery.toml 中添加以下内容:

[mongo-mcp]
command = "node"
args = ["index.js"]

✨ 主要特性

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

🎥 演示视频

点击查看

📦 安装指南

📦 先决条件

  • Node.js(版本 18+)
  • npm 或 yarn
  • Docker(用于可选的沙箱环境)

安装依赖项

使用以下命令安装项目依赖:

npm install

yarn install

启动服务器

要启动 MCP 服务器,请运行:

npm start

yarn start

🔧 测试环境设置

使用 Docker 启动 MongoDB

您可以使用以下命令在 Docker 中启动 MongoDB:

docker run --name mcp-mongo -d mongo:latest

然后,您可以通过以下命令连接到 MongoDB 实例:

mongo --host localhost --port 27017

创建测试数据

要填充测试数据,请运行以下命令:

npx mongo-mcp create-users-collection

🛠️ 配置 Claude Desktop

要配置 Claude Desktop 使用此 MCP 服务器,请编辑 smithery.toml 文件并添加以下内容:

[mongo-mcp]
command = "node"
args = ["index.js"]

💻 使用示例

测试沙箱数据结构

用户集合

用户集合包含以下字段:

  • _id:文档 ID
  • username:用户名
  • email:电子邮件地址
  • password:密码哈希
  • created_at:创建时间戳
  • updated_at:更新时间戳

示例文档:

{
"_id": "63b4d207f8dfg5c1a7b1",
"username": "exampleuser",
"email": "user@example.com",
"password": "$2y$10$92IXUNpkjO0rOQ5byMi.Ye4oKfW3p2.tU6VNU.0oGoeHabKN0u8F",
"created_at": "2023-07-20T12:00:00Z",
"updated_at": "2023-07-20T12:00:00Z"
}

产品集合

产品集合包含以下字段:

  • _id:文档 ID
  • name:产品名称
  • price:价格(货币单位)
  • description:描述
  • category:分类
  • stock:库存数量
  • created_at:创建时间戳

示例文档:

{
"_id": "63b4d207f8dfg5c1a7b2",
"name": "Example Product",
"price": 9.99,
"description": "This is an example product.",
"category": "electronics",
"stock": 10,
"created_at": "2023-07-20T12:00:00Z"
}

订单集合

订单集合包含以下字段:

  • _id:文档 ID
  • user_id:用户 ID(引用用户集合的 _id)
  • products:订单中的产品列表(数组,包含产品 ID 和数量)
  • total_price:总价格(货币单位)
  • order_date:下单日期时间戳
  • status:订单状态(如 "pending", "processing", "shipped", "delivered")

示例文档:

{
"_id": "63b4d207f8dfg5c1a7b3",
"user_id": "63b4d207f8dfg5c1a7b1",
"products": [
{
"product_id": "63b4d207f8dfg5c1a7b2",
"quantity": 2
}
],
"total_price": 19.98,
"order_date": "2023-07-20T12:00:00Z",
"status": "pending"
}

🛠️ 可用工具

命令列表

以下是一些可用的命令及其功能:

索引管理

  • create-collection:创建一个新的 MongoDB 集合。
  • drop-collection:删除指定的 MongoDB 集合。
  • add-index:为指定集合添加索引。
  • remove-index:从指定集合中删除索引。

数据操作

  • insert-doc:插入单个文档到指定集合。
  • batch-insert:批量插入多个文档到指定集合。
  • find-docs:查询指定集合中的所有文档(可选条件)。
  • update-doc:更新指定集合中的一个或多个文档。
  • delete-doc:删除指定集合中的一个或多个文档。

📄 许可证

本项目受 MIT License 保护。


如需进一步了解,请参考项目的完整文档。

  • 0 关注
  • 0 收藏,19 浏览
  • system 提出于 2025-09-18 20:36

相似服务问题

相关AI产品