A MCP server for Godot RAG

A MCP server for Godot RAG

site icon
2025.04.08 3
Python文档检索RAG 模型支持开发效率
mcp_godot_rag 是一个为 Godot RAG 模型提供 Godot 文档支持的 MCP 服务器。它通过处理文档数据、创建向量数据库,并启动服务来支持 Godot 文档的检索和查询。
View on GitHub

Overview

基本能力

产品定位

mcp_godot_rag 是一个为 Godot RAG 模型提供 Godot 文档支持的 MCP 服务器。

核心功能

  1. 文档处理:下载 Godot 文档,将 RST 格式转换为 Markdown,并进行分块处理。
  2. 向量数据库创建:将处理后的文档数据转换为向量并存储在 ChromaDB 中。
  3. 服务启动:启动 MCP 服务器以支持文档检索和查询。
  4. 多模型支持:支持多种预训练模型(如 all-MiniLM-L6-v2、bge-m3、bge-large-zh-v1.5)用于向量化。

适用场景

  1. Godot 开发支持:为 Godot 开发者提供快速访问和检索文档的能力。
  2. RAG 模型集成:为基于 RAG 的问答系统提供文档数据支持。
  3. 自然语言处理:支持使用不同预训练模型进行文档向量化。

工具列表

  1. download_godot_docs.py:下载 Godot 文档。
  2. convert_rst2md.py:将 RST 格式文档转换为 Markdown。
  3. chunker.py:对 Markdown 文件进行分块处理。
  4. vectorizer.py:创建向量数据库。
  5. main.py:启动 MCP 服务器。

常见问题解答

  1. 如何更换模型?:在 vectorizer.pymain.py 中指定不同的模型名称(如 BAAI/bge-m3)。
  2. 如何调试?:使用 npx @modelcontextprotocol/inspector 工具进行调试。

使用教程

使用依赖

uv venv --python 3.12
source ./.venv/bin/activate
uv sync
cp .env.example .env.local

安装教程

  1. 克隆 Godot 文档: bash python download_godot_docs.py
  2. 转换 RST 为 Markdown: bash python convert_rst2md.py
  3. 分块处理 Markdown 文件: bash python chunker.py -i artifacts
  4. 创建向量数据库: bash python vectorizer.py -i artifacts/chunks/artifacts_chunks_SZ_400_O_20.jsonl
  5. 启动 MCP 服务器: bash python main.py -d artifacts/vector_stores/chroma_db -c artifacts_chunks_SZ_400_O_20_all-MiniLM-L6-v2

调试方式

npx @modelcontextprotocol/inspector \
  uv \
  --directory . \
  run \
  main.py \
  --chromadb-path artifacts/vector_stores/chroma_db \
  --collection-name artifacts_chunks_SZ_400_O_20_all-MiniLM-L6-v2

许可证

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