MCP MongoDB Server

MCP MongoDB Server

site icon
2025.04.16 0
Python小说内容管理数据库查询自然语言处理内容生成
MCP MongoDB Server 是一个基于 Model Context Protocol (MCP) 的服务,为大型语言模型(LLMs)与 MongoDB 数据库之间提供接口,特别优化了小型上下文窗口(3k tokens)的交互。该服务帮助 LLMs 更好地理解和查询存储在 MongoDB 中的特定领域知识,如小说章节信息、角色详情、作者问答等。
View on GitHub

Overview

基本能力

产品定位

MCP MongoDB Server 是一个为 LLMs 提供与 MongoDB 数据库交互的中间层服务,特别适用于需要高效查询和格式化响应的场景,如小说内容管理、角色信息查询等。

核心功能

  • MCP 协议实现:遵循 Model Context Protocol 规范。
  • 自然语言查询解析:将自然语言查询转换为结构化的数据库操作。
  • MongoDB 集成:查询现有的 MongoDB 集合,并返回优化后的结果。
  • 上下文优化响应:设计用于小型上下文窗口(3k tokens)的格式化响应。
  • 领域特定格式化:针对不同实体类型(小说、章节、角色、问答)的自定义格式化。
  • Python 爬虫:集成的爬虫工具用于从各种来源填充数据库。

适用场景

  • 查询小说章节信息
  • 获取角色详情
  • 访问作者问答
  • 检索领域特定知识

工具列表

  • Python 爬虫:用于从多个网站(如 69Shu.net、BaoBao88、Quanben 等)抓取数据并填充到 MongoDB 中。
  • REST API:提供 CRUD 操作接口,管理小说、章节、角色和问答内容。
  • MCP 端点:支持 JSON-RPC 请求,直接与 LLMs 交互。

常见问题解答

  • 如何更新爬虫库?:进入 scraper_library 目录,执行 git pull 更新。
  • 如何测试服务?:运行 cargo test 执行所有测试。
  • 如何格式化代码?:使用 cargo fmt 检查代码格式。

使用教程

使用依赖

  • Rust(最新稳定版本)
  • MongoDB 实例(包含领域数据)
  • Python 3.7+(用于爬虫)
  • Git(用于克隆和操作仓库)

安装教程

  1. 克隆仓库(包含子模块): bash git clone --recursive https://github.com/SFBB/mcp-mongodb-novel-server.git
  2. 创建 .env 文件并配置 MongoDB 连接信息: MONGODB_URI=mongodb://localhost:27017 DATABASE_NAME=your_database_name PORT=3000
  3. 构建并运行 MCP 服务: bash cargo build --release cargo run --release

调试方式

  1. 运行测试: bash cargo test
  2. 检查代码格式: bash cargo fmt -- --check
  3. 运行 linting: bash cargo clippy

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。