kRPC文档搜索服务器

一个为AI模型提供kRPC Python文档访问的MCP服务器,通过索引和搜索功能帮助AI准确编写kRPC代码。

  • by Ljove02
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 Ljove02/krpc-mcp

使用说明

krpc mcp

一个MCP服务器,允许AI模型访问完整的 kRPC Python文档。

这是什么?

如果你使用人工智能助手(Claude、ChatGPT、Codex等)为Kerbal Space Program编写kRPC Python代码,模型通常会猜测或幻觉API调用,因为kRPC的文档在他们的训练数据中并不常见。这个MCP服务器通过让AI在编写代码之前查询真实文档来解决这个问题。

服务器对所有kRPC Python API页面进行爬网和索引,在本地缓存它们,并通过 模型上下文协议.

快速开始

在下面选择您的AI客户端并运行setup命令。就是这样——人工智能将自动访问kRPC文档。

克劳德代码(CLI)

claude mcp add krpc-mcp -- uvx krpc-mcp

OpenAI Codex命令行界面

codex mcp add krpc-mcp -- uvx krpc-mcp

或手动添加到 ~/.codex/config.toml:

[mcp_servers.krpc-mcp]
command = "uvx"
args = ["krpc-mcp"]

克劳德桌面

将此添加到您的 claude_desktop_config.json:

操作系统 配置文件位置
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
窗户 %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "krpc-mcp": {
      "command": "uvx",
      "args": ["krpc-mcp"]
    }
  }
}

光标

将此添加到 .cursor/mcp.json 在项目根目录中:

{
  "mcpServers": {
    "krpc-mcp": {
      "command": "uvx",
      "args": ["krpc-mcp"]
    }
  }
}

其他MCP客户端

任何支持stdio传输的MCP客户端都可以使用此服务器。命令是:

uvx krpc-mcp

替代安装

如果你没有或不想使用 uvx,还有其他安装方法。

从GitHub安装pip

pip install git+https://github.com/Ljove02/krpc-mcp.git

然后使用 krpc-mcp 作为上述任何配置中的命令(而不是 uvx krpc-mcp).

手动设置(用于开发)

git clone https://github.com/Ljove02/krpc-mcp.git
cd krpc-mcp
python -m venv .venv

激活虚拟环境:

# macOS / Linux
source .venv/bin/activate

# Windows (PowerShell)
.\.venv\Scripts\Activate.ps1

# Windows (cmd)
.venv\Scripts\activate.bat

安装并运行:

pip install -e .
krpc-mcp

可用工具

连接后,您的AI助手将获得以下工具:

工具 参数 说明
search_docs query (str), limit (int,默认值5) 按关键字搜索所有索引的kRPC Python文档。返回包含代码段的匹配页面。
get_doc_page slug_or_url (str) 获取特定文档页面的完整内容。接受类似蛞蝓的 python/api/space-center/vessel.html 或完整的URL
get_api_member service (str), class_name (str), member (str) 查找特定的API成员。例如: service="SpaceCenter", class_name="Vessel", member="orbit"。使用模糊匹配。
reindex_docs force (bool,默认为false) 手动触发对kRPC文档的重新爬网。

示例:实际使用

这是AI助手使用krpc-mcp时的样子。在这次测试中,克劳德·科德被问及船只发射遥测数据。

用户提示

“给我提供有关我们可以从发射船上获得的各种数据的信息——速度、高度、重力。详细给我5个例子,这样我就可以与文档进行交叉检查。”

AI在幕后做了什么

人工智能在回答之前会自动调用MCP工具查找真实文档:

Tool call:  search_docs(query="vessel flight telemetry speed altitude", limit=5)
Result:     3 matching pages found, including Flight and Vessel API references

Tool call:  search_docs(query="g force flight data", limit=5)
Result:     Matched the Flight API page

Tool call:  get_doc_page(slug_or_url="python/api/space-center/flight.html")
Result:     Full Flight class documentation (104 lines of API details)

Tool call:  get_doc_page(slug_or_url="python/api/space-center/vessel.html")
Result:     Full Vessel class documentation (173 lines of API details)

人工智能响应(来源于真实文档)

# 属性 类 返回 描述
1 Flight.speed 航班 float 给定参考系中的速度(m/s)。传递适当的参考系(例如。 vessel.orbit.body.reference_frame)获得有意义的价值。
2 Flight.mean_altitude 航班 float 海拔高度(米)。相关: surface_altitude, bedrock_altitude, elevation.
3 Flight.g_force 航班 float 当前重力为9.81 m/s²的倍数。可用于在发射过程中监测机组人员安全和结构应力。
4 Flight.dynamic_pressure 航班 float 动压(Q),单位为帕斯卡。等于 0.5 * air_density * velocity²对于在上升过程中识别最大Q值至关重要。
5 Flight.mach 航班 float 速度是声速的倍数。相关: speed_of_sound, true_air_speed, terminal_velocity.

所有属性都是 只读 并可在 航班 游戏场景。AI直接从索引文档中提取每一个细节——类型、描述、相关成员,而不是猜测。

运作原理

  1. 首次使用时,服务器会从以下位置抓取所有Python文档页面 https://krpc.github.io/krpc/python.html
  2. 它提取页面内容和API成员签名/描述
  3. 所有内容都缓存在本地 ~/.cache/krpc-mcp/
  4. 缓存每24小时自动刷新一次
  5. 您可以随时使用强制刷新 reindex_docs 工具

许可证

麻省理工学院