使用说明(Markdown格式)
-
项目简介
- 该项目实现了一个 MCP 服务器,核心职责是向 LLM 客户端提供可检索的资源、可执行的工具,以及可渲染的 Prompt/模板等。通过 JSON-RPC 与客户端通信,支持会话管理与能力声明,并以多种传输方式(以标准输入输出为中心的 Stdio 传输为示例)对外提供服务。
-
主要功能点
- 注册并暴露多种工具(Tools)供 LLM 调用,例如:
- search_rimworld_source:基于正则表达式在 RimWorld 源代码中进行搜索
- read_rimworld_file:按相对路径读取文件内容,支持分页
- list_directory:列出指定目录内容,支持分页
- get_def_details:获取定义(Def)数据的详细信息
- search_defs:在 Def 索引中按关键字搜索
- read_csharp_type:读取并渲染 C# 类型的定义
- 内部资源与索引:
- RimWorld 源码(Source)、Def 数据(Defs)、C# 类型索引等,提供数据访问与查询能力
- 安全与扩展性:
- 路径沙箱(PathSandbox)用于保护文件系统访问
- 通过数据库(bun:sqlite)存储 Def 信息和 C# 索引,支持快速查询
- 传输协议示例:
- 使用 StdioServerTransport 作为传输实现,方便与命令行/管道式客户端集成;理论上也支持其他传输实现(如 SSE、WebSocket 等,依据 MCP 库的扩展能力)
- 注册并暴露多种工具(Tools)供 LLM 调用,例如:
-
安装步骤
- 安装 Bun 运行时与相关依赖(示例:bun install)
- 构建 Defs 索引(示例:bun run index),生成必要的数据库/索引
- 启动服务(示例:bun run start),以 MCP 服务器形式对外提供服务
- 参考客户端配置,按需将服务器接入到对应的 MCP 客户端(如 Claude Code、Gemini CLI)
-
服务器配置(给 MCP 客户端的启动信息,JSON 格式)
- server_name: rimworld-source
- command: bun
- args: ["run", "start"] 说明:该配置指定使用 Bun 启动服务器,执行 start 脚本来正式运行 MCP 服务。实际命令路径可根据部署环境调整;客户端需要的仅是服务器名称、启动命令与参数用于建立连接。
-
基本使用方法
- 客户端通过 MCP 协议连接服务器后,可以按需求调用工具,获取文本内容、代码片段、定义信息等;开发者可通过 README 中的例子了解如何配置客户端与服务器的对接
信息
分类
AI与计算