关于 Grimoire for Gamemasters
Grimoire for Gamemasters 是面向 D&D 及其他桌面角色扮演游戏主持人的战役管理器,将世界资料组织为可读写的类型化数据库和知识图谱。其 MCP 服务支持按战役授权,并依据主持人或玩家的可见权限返回内容。
主要功能
- 01管理 NPC、阵营、地点与任务
- 02读取和编辑协作式 Wiki
- 03查询关系、时间线与知识图谱
- 04追踪开放剧情线与会话进展
- 05按角色过滤秘密和可见内容
适用场景
- 01会前查看近期剧情与未解线索
- 02将准备笔记整理为类型化记录
- 03查询 NPC、阵营与地点的关联
- 04撰写并保存会话摘要
MCP 相关
托管的 MCP 服务通过 Streamable HTTP 和 OAuth 2.1 连接客户端,提供战役数据的读取与写入工具,并公开战役 Wiki 资源。访问范围限定于获授权的战役,且按角色过滤可见内容。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://api.ttrpg.bot/mcpclaude mcp add --transport http bot-ttrpg-grimoire https://api.ttrpg.bot/mcp{"mcpServers":{"bot-ttrpg-grimoire":{"type":"http","url":"https://api.ttrpg.bot/mcp"}}}在 Cursor 中打开{"servers":{"bot-ttrpg-grimoire":{"type":"http","url":"https://api.ttrpg.bot/mcp"}}}在 VS Code 中打开{"mcpServers":{"bot-ttrpg-grimoire":{"type":"http","url":"https://api.ttrpg.bot/mcp"}}}{"mcpServers":{"bot-ttrpg-grimoire":{"serverUrl":"https://api.ttrpg.bot/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
Grimoire MCP:面向 Claude 和 ChatGPT 的 D&D 与 TTRPG 战役管理器
Grimoire for Gamemasters 的官方托管 MCP 服务。将你的 D&D 战役作为实时、类型化的数据库,供 AI 读取和写入,而不是由你维护的 Markdown 文件。
| 端点 | https://api.ttrpg.bot/mcp |
| 传输方式 | Streamable HTTP(MCP 规范 2025-06-18) |
| 身份验证 | OAuth 2.1 with PKCE,一键授权流程 |
| 工具 | 52 个,分为 8 组(21 个读取、31 个写入) |
| 注册表 | 官方 MCP Registry 中的 bot.ttrpg/grimoire |
| Web 应用 | https://www.ttrpg.bot |
什么是 Grimoire?
Grimoire for Gamemasters 是一款面向 Dungeon Master 或主持世界的 GM 的《龙与地下城》及其他桌面角色扮演游戏战役管理器。本仓库介绍其官方 MCP 服务,Claude、ChatGPT、Cursor 或任何 MCP 客户端都可以通过它直接读取和写入你的战役。在 Grimoire 中,战役是一个类型化数据库和知识图谱,而不是一堆笔记:NPC、派系、地点、任务、场次摘要和背景设定通过关系相互关联,并由一个协作式 Wiki 提供支持,其中的页面会链接到这些记录。AI 根据你当前的正史回答问题,并在战役于场次之间发生变化时保持内容一致。
它与战役文件夹的区别在于 AI 获取的信息。文件搜索返回的文本可能已经过时。Grimoire 返回的是类型化状态:派系当前的领袖、尚未解决的剧情线及其悬而未决的场次数、提到某个 NPC 的 Wiki 页面,以及游戏桌上标记为正史的事实。写入的内容会回到同一结构中,因此你从聊天中记录的内容不会过时。
它适用于 D&D 5e、Pathfinder 2e、Call of Cthulhu、Shadowdark、自制设定和任何其他系统:记录构成了世界,而不是规则引擎。
如何使用 Grimoire?
点击三次即可,无需安装:
- 添加连接器。 在 Claude.ai(免费套餐包含一个自定义连接器)、ChatGPT(Plus 或 Pro,需启用 Developer Mode)或任何支持自定义连接器的 MCP 客户端中,打开 Settings,然后选择 Connectors,再选择 Add custom connector,并粘贴
https://api.ttrpg.bot/mcp。 - 登录并选择战役。 客户端会打开 Grimoire 授权页面。使用拥有该战役的账户登录,选择允许 AI 查看哪个战役,然后点击 Approve。访问权限仅限于该战役,并由服务器端强制执行。
- 询问有关你的世界的问题。 “谁知道邪教的事?”“女王在第 4 场次有什么反应?”“第 12 场次之后有什么变化?” 客户端会读取实时数据并据此回答。
包含特定客户端说明的完整设置指南:https://www.ttrpg.bot/docs/mcp/
对于通过 JSON 文件而非连接器界面配置的客户端:
{
"mcpServers": {
"grimoire": {
"type": "streamable-http",
"url": "https://api.ttrpg.bot/mcp"
}
}
}
身份验证采用 OAuth 2.1 with PKCE;客户端首次连接时会打开浏览器登录页面。在 https://www.ttrpg.bot 注册免费的 Grimoire 账户,即可提供服务器要读取的战役。
Grimoire 的主要功能
- 实时类型化状态,而非扁平文件。 通过 52 个工具(21 个读取工具、31 个写入工具)访问包含 14 种实体架构的类型化战役数据库。一次叙事状态调用即可返回近期游戏记录、未解决的剧情线索、活跃篇章和正史事实。
- 支持读写,让状态始终保持最新。 通过对话创建和更新 NPC、派系、地点和任务,记录剧情线索进展,并编写维基页面、区块和表格,让正史在你准备游戏时同步更新,而不是在文件中逐渐过时。
- 维基是世界的一部分。 支持全文维基搜索、带有面包屑导航和子页面的页面、可往返转换为 Markdown 网格的表格,以及可解析为真实记录而非字符串匹配结果的实体链接和页面链接。
- 知识图谱查询可涵盖政治、地理和时间线视图,并在服务端应用 GM 可见性筛选。
- GM 秘密由服务端强制执行,分为三个可见性级别(常识、玩家知识、GM 秘密),确保 AI 提供的信息符合玩家的查看权限。
- 也支持玩家连接。 当 GM 为战役启用玩家 AI 后,玩家可以连接自己的 AI,并且只能读取玩家门户中显示的内容,绝不会看到 GM 保密的信息。
- 托管服务,一键 OAuth,无需标记令牌。 使用 OAuth 2.1 的远程流式 HTTP 服务;无需安装或自行托管。免费套餐包含 MCP 访问权限,且 Grimoire 从不收取 AI 令牌费用。
Grimoire 的使用场景
- 在撰写第 13 场游戏前,询问自第 12 场以来发生了哪些变化;答案基于已追踪的状态,而非你对笔记的记忆。
- 在游戏进行中查询信息,从战役正史中获取答案,而不是依赖模型猜测。
- 将今晚的准备笔记解析为类型化的 NPC、派系和剧情线索,无需在每次新聊天中重复粘贴相同的背景设定。
- 按关系查询世界:哪些派系与这座城市利害相关?哪些 NPC 会注意到玩家队伍?
- 搜索维基,找到提及溺亡修道院的讲义,然后阅读相关页面及其链接的实体。
- 起草游戏回顾,并将其保存为结构化实体,供玩家在门户中按其可见性级别查看。
- 将它与其他 MCP 服务串联:把上一场游戏的内容传入幻灯片或配音服务,或者连接日历服务,让机器人提醒你准备游戏。
工具箱
52 个工具,分为八组。
实体(10):search_campaign、get_entity、list_entities、get_field_options、get_tag_options、get_entity_schema、create_entity、update_entity、delete_entity、batch_create_entities。涵盖全部 14 种实体类型:NPC、地点、派系、任务、物品、玩家角色、生物、载具、传说条目、世界规则、位面力量、会话回顾、会话准备、自定义机制。get_entity_schema 会报告某个类别接受的确切字段、原生列、选项,以及战役的自定义字段,确保写入内容落在正确位置,而不是被塞进一个兜底杂项集合。
关系(3):add_relationship、get_relationships、delete_relationship。在任意两个实体之间建立带类型的边。
知识图谱(8):get_constitution、get_entity_catalog、get_knowledge_graph、list_entity_graphs、get_entity_graph、add_to_entity_graph、create_entity_graph_edge、toggle_graph_attention。提供政治、时间线、地理和基础设定视图,并支持可见性筛选。get_constitution 是两个角色读取第 1 层内容的工具:GM 连接可获取完整的宪章层,玩家连接则只能获取 GM 选择分享的部分,响应中会对每项内容标明相应状态。
世界基础设定(6):create_foundation_node、update_foundation_node、delete_foundation_node、create_foundation_edge、delete_foundation_edge、update_world_foundations。用于编写战役基础设定层的工具;该层始终会被加载。基础设定节点是定义世界的概念(如大灾变、隐藏势力或宇宙法则),并通过带标签的边连接;update_world_foundations 用于设置结构化的 World Foundations 文档(魔法体系、神祇层级、基本法则)。这些是世界的机制与宇宙学真相,与 NPC 和地点等数据库实体不同。
未解线索(7):get_open_threads、create_open_thread、resolve_open_thread、unresolve_open_thread、update_open_thread、get_thread_progressions、add_thread_progression。记录悬而未决的事项及其在各次会话间的演变。
Wiki(10):get_wiki_tree、get_wiki_page、search_wiki、create_wiki_page、create_wiki_block、update_wiki_block、move_wiki_block、delete_wiki_block、batch_create_wiki_blocks、batch_reorder_wiki_blocks。基于区块的协作页面,AI 可以像你一样阅读和编辑。search_wiki 会对页面标题和区块文本进行全文搜索(search_campaign 仅涵盖实体)。表格以纯 Markdown 网格的形式读写;实体链接(@[Name](entity://category/uuid))和页面链接(@[Title](page://uuid))可在任何区块中原样往返,包括表格单元格。因此,AI 编写的页面与记录的链接方式,会和你手动输入的完全一样。
战役元数据(5):current_campaign、get_campaign_context、get_narrative_state、get_campaign_bible、update_campaign_bible。get_narrative_state 会将近期会话、未解线索、规范事实和活跃故事线汇总到一个视图中。get_campaign_bible 会向 GM 连接返回所有区块;向玩家连接仅返回 Common Knowledge 区块,而且只有在 GM 开启 Bible 分享后才会返回。
会话观察记录(3):create_session_observation、update_session_observation、delete_session_observation。仅供 GM 查看、用于为会话增添色彩的记录:对值得日后回顾的时刻进行分类和评分。读取这些记录无需专用工具,因为 get_narrative_state 会返回其所总结会话中的观察记录,而 get_knowledge_graph 会返回其绘制时间线中的观察记录。
该服务还提供一个 MCP 资源 campaign://wiki,用于列出战役的 Wiki 页面及其层级结构。
助你熟练使用它的技能
skills/grimoire-campaign-context/ 是一个 Claude Skill(也可作为纯文本指令用于任何客户端),它会教助手如何执行会话开始时的定心流程、该使用哪个读取工具、如何编写类型化实体而不把数据误填到错误字段中,以及如何解析备战笔记、归档回顾和提取会话前所需信息的操作方法。让你的客户端使用它,或将其粘贴到项目指令中。
可见性与安全
所有内容都遵循 Grimoire 的可见性模型:common-knowledge、player-knowledge、dm-secret,以及(仅限 wiki)system;inherit 会沿着链接到 wiki 页面所在的区块及其父级链进行解析。AI 只能看到连接角色获准查看的内容,不多不少。玩家连接会获得经过筛选的视图,而玩家无法访问的页面对该连接而言并不存在:搜索、树形目录和页面读取都会返回未找到。GM 连接则可以看到完整内容。
Campaign Bible 默认设为 GM Secret。玩家可以知晓的内容(如世界机制、日常生活)应将区块标记为 common-knowledge,以此记录为对玩家安全的内容。之后,GM 可以开启 Bible 分享;玩家连接便可通过 get_campaign_bible 和 get_constitution 读取这些 Common Knowledge 区块,而无法读取其他内容。关闭分享时,get_campaign_bible 会返回常规结果 {"shared": false, "message": "..."},而不是错误;get_constitution 会将 shared.bible 报告为 false,并省略 Bible 部分,因此助手会直接向玩家说明情况,而不是重试。Bible 不能重命名。
World Foundations 也以相同方式共享,但由独立的开关控制:只有在 GM 开启 Foundations 分享后,玩家连接才能通过 get_knowledge_graph(graph_type='foundations') 和 get_constitution 的 foundationNodes 访问内容;且只能获得对玩家安全的投影,其中 GM Secret 节点以及与之相连的所有边都会被移除。这两个开关都受战役的门户策略限制:仅限 wiki 的门户会直接拒绝这些读取请求,不受开关设置影响。
OAuth 作用域按战役划分。授予对一个战役的访问权限,不会授予对其他战役的访问权限;访问权限可随时撤销。
定价
可免费体验完整流程。Grimoire 免费版包含一个战役的 MCP 访问权限,最多支持 100 个实体;它也适用于 Claude 免费版,后者支持一个自定义连接器,且无需信用卡。ChatGPT 自定义连接器需要 Plus 或 Pro,并启用 Developer Mode。Pro 解锁无限数量的战役和实体、每个类别的自定义字段,以及更多存储空间。Grimoire 从不收取 AI 令牌费用:你自备客户端。
定价:https://www.ttrpg.bot/#pricing
Grimoire 常见问题
有没有 MCP 服务能让 Claude 或 ChatGPT 读取和编辑我的 D&D 战役?
有。Grimoire 托管的 MCP 服务 https://api.ttrpg.bot/mcp 可让 Claude、ChatGPT、Cursor 和其他 MCP 客户端读写 Grimoire 战役中的 NPC、派系、地点、任务、会话回顾、背景知识、未解开的剧情线索和战役 wiki。你只需点击一次 OAuth 连接,并选择 AI 可以访问的战役。
Grimoire 的源代码在哪里?
MCP 服务作为托管服务运营,源代码不公开。本仓库是公开文档和注册表资源:此处的 server.json 会作为 bot.ttrpg/grimoire 发布到 registry.modelcontextprotocol.io,lhm.plugin.json 是 LobeHub Marketplace 清单,skills/ 则存放 Claude Skill。
Grimoire 是否包含标准 MCP 配置?
是。使用上面的 streamable HTTP 配置块,或者完全跳过配置:支持自定义连接器的客户端只需要 URL https://api.ttrpg.bot/mcp。
免费吗?
可以免费试用。Grimoire 免费套餐包含一个战役的 MCP 访问权限,最多支持 100 个实体;Claude 免费计划支持添加一个自定义连接器,且无需提供银行卡。ChatGPT 需要 Plus 或 Pro,并启用 Developer Mode,才能使用自定义连接器。
哪些客户端可以使用?
Claude(网页版和桌面版)、ChatGPT(Plus 或 Pro,并启用 Developer Mode)、Cursor,以及任何能连接远程可流式传输 HTTP 服务的 MCP 兼容客户端。
它支持 Pathfinder、Call of Cthulhu 或我的自创系统吗?
支持。Grimoire 不绑定特定规则系统。战役可以设置为 D&D 5e、Pathfinder 2e、Call of Cthulhu、Shadowdark、许多其他系统,或自创设定;类型只会改变标签和默认值,不会影响 AI 的能力。工具读取和写入的是世界设定(人物、地点、派系、历史、故事线),而不是角色卡规则。
它能读取和写入我的 wiki 吗?
能。search_wiki 可按文本查找页面和区块,get_wiki_page 会返回包含区块、面包屑导航和子页面的页面,写入工具则可创建页面、区块和表格。表格以 Markdown 网格形式传递,实体和页面链接会保留为令牌,由服务端解析为实际记录。
这和用 Markdown 文件记录战役笔记有什么不同?
文件存放的是散文式内容;AI 必须猜测哪个文件是最新的,并在每次会话中重新读取。Grimoire 存放的是有类型的状态:包含字段和关系的记录、带有时间标记的故事线、标注为正史的事实,以及与记录关联的页面。AI 会查询当前有效的信息,并将更改写回相同结构,因此不同会话之间不会出现信息偏差。
它与用于世界构建的 World Anvil、Obsidian 或 Notion 有何不同?
这些工具存储页面,连接到它们的 AI 会读取页面。Grimoire 存储有类型的记录及其相互关系,因此 AI 可以遍历整个战役:从一座城市,到与之利益相关的派系,再到领导这些派系的 NPC,以及他们涉及的未结故事线;GM 秘密则由服务端过滤。如果你已在其他地方存有笔记,AI 可以在聊天中读取这些内容,并将其作为有类型的实体归档到 Grimoire 中。
连接后会把我的战役共享给 AI 供应商吗?
你可以使用自己的客户端。Grimoire 只会向该客户端开放你批准的一个战役,不会开放其他内容;授权范围会显示在同意屏幕上,且你可以随时撤销访问权限。
链接
- 产品:https://www.ttrpg.bot
- MCP 概览和连接流程:https://www.ttrpg.bot/mcp
- 完整设置指南:https://www.ttrpg.bot/docs/mcp/
- 战役知识图谱:https://www.ttrpg.bot/campaign-knowledge-graph/
- 战役 wiki:https://www.ttrpg.bot/dnd-campaign-wiki/
- 更新日志:https://www.ttrpg.bot/changelog
- 支持:[email protected]
许可证
MIT(适用于本文档仓库)。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。