Fastmcp Godot Rag
MCP server by lvsedeqinglvse
Created 10/12/2025
Updated 2 months ago
README
Repository documentation and setup instructions
FastMCP Godot Documentation RAG
项目简介
FastMCP Godot Documentation RAG 是一个基于检索增强生成(RAG)的命令行助手,用来查询和解读 Godot 引擎的官方文档。项目使用 Hugging Face 语义向量模型和 FAISS 构建向量数据库,再通过 FastMCP 注册工具,结合 DeepSeek Chat API 返回结构化回答。
核心流程
- 文档预处理
rst_to_markdown.py批量将官方.rst文档转换为结构化 Markdown,保留信号、表格和章节信息。markdown_split.py识别 Markdown 中的章节、表格、代码等内容类型,将其切分成适合 RAG 的 JSON 片段。
- 向量化与索引构建
embedding.py读取godot_docs/chunks.json,使用sentence-transformers/all-miniLM-L6-v2生成文本嵌入,并将结果写入本地 FAISS 索引与元数据文件。
- 检索与回答
rag_fastmcp.py加载本地向量库与元数据,注册search_godot_docs和rag_answer两个 FastMCP 工具,实现文档检索与结合 DeepSeek API 的问答。
目录结构
godot_docs/:存放转换后的 Markdown、切分 JSON、FAISS 索引等数据资产。classes/:原始.rst文档集合,可作为数据转换输入。rst_to_markdown.py:批量 rst→md 转换脚本。markdown_split.py:Markdown 智能切分脚本。embedding.py:向量化与索引构建脚本。rag_fastmcp.py:加载索引并提供 FastMCP 工具与命令行入口。
运行概览
- 准备数据:将 Godot
.rst文档放入classes/,执行rst_to_markdown.py输出到godot_docs/md_new/。 - 切分文档:运行
markdown_split.py生成结构化的godot_docs/chunks.json。 - 构建索引:执行
embedding.py产生godot_docs/faiss_db/index.faiss和metadata.pkl。 - 启动助手:配置
DEEPSEEK_API_KEY(或在代码中内置的演示密钥),运行rag_fastmcp.py打开命令行助手。
完成以上步骤后,即可通过 FastMCP 接口或命令行与本地 Godot 文档知识库进行交互式问答。
Quick Setup
Installation guide for this server
Install Package (if required)
uvx -fastmcp-godot-rag-
Cursor configuration (mcp.json)
{
"mcpServers": {
"lvsedeqinglvse-fastmcp-godot-rag": {
"command": "uvx",
"args": [
"-fastmcp-godot-rag-"
]
}
}
}