使用说明(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 库的扩展能力)
  • 安装步骤

    • 安装 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与计算