基本能力
产品定位
mcp_godot_rag 是一个为 Godot RAG 模型提供 Godot 文档支持的 MCP 服务器。
核心功能
- 文档处理:下载 Godot 文档,将 RST 格式转换为 Markdown,并进行分块处理。
- 向量数据库创建:将处理后的文档数据转换为向量并存储在 ChromaDB 中。
- 服务启动:启动 MCP 服务器以支持文档检索和查询。
- 多模型支持:支持多种预训练模型(如 all-MiniLM-L6-v2、bge-m3、bge-large-zh-v1.5)用于向量化。
适用场景
- Godot 开发支持:为 Godot 开发者提供快速访问和检索文档的能力。
- RAG 模型集成:为基于 RAG 的问答系统提供文档数据支持。
- 自然语言处理:支持使用不同预训练模型进行文档向量化。
工具列表
- download_godot_docs.py:下载 Godot 文档。
- convert_rst2md.py:将 RST 格式文档转换为 Markdown。
- chunker.py:对 Markdown 文件进行分块处理。
- vectorizer.py:创建向量数据库。
- main.py:启动 MCP 服务器。
常见问题解答
- 如何更换模型?:在
vectorizer.py
或main.py
中指定不同的模型名称(如BAAI/bge-m3
)。 - 如何调试?:使用
npx @modelcontextprotocol/inspector
工具进行调试。
使用教程
使用依赖
bash
uv venv --python 3.12
source ./.venv/bin/activate
uv sync
cp .env.example .env.local
安装教程
- 克隆 Godot 文档:
bash
python download_godot_docs.py - 转换 RST 为 Markdown:
bash
python convert_rst2md.py - 分块处理 Markdown 文件:
bash
python chunker.py -i artifacts - 创建向量数据库:
bash
python vectorizer.py -i artifacts/chunks/artifacts_chunks_SZ_400_O_20.jsonl - 启动 MCP 服务器:
bash
python main.py -d artifacts/vector_stores/chroma_db -c artifacts_chunks_SZ_400_O_20_all-MiniLM-L6-v2
调试方式
bash
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