llmdm
用于D&D活动状态管理、掷骰子和会话内存的Go MCP服务器。
它的作用
- 通过stdio或HTTP提供模型上下文协议(MCP)工具集
- 将活动数据存储在每个活动的SQLite数据库中
- 跟踪角色、情节挂钩、世界旗帜、滚动历史和会话摘要
- 生成会话简报和降价回顾,以快速恢复DM上下文
- 使用带有本地回退的Anthropic API压缩会话日志
如何玩
这 game/ 该目录包含一个用于运行D&D活动的即用型工作区。
设置
- 构建并复制服务器:
make build
cp bin/dnd-mcp game/dnd-mcp- (可选)设置AI会话压缩:
cd game
echo "ANTHROPIC_API_KEY=your-key-here" > .env运行活动
- 导航到游戏目录并启动Claude Code:
cd game
claude- 启动新活动或继续现有活动:
/create-campaign
/continue- 玩!Claude担任DM:
- 通过MCP服务器进行真实骰子掷骰子 - SQLite中的持久字符表 - AI压缩会话历史记录 - 自动跟踪绘图挂钩
- 结束会话:
/end模型建议
- 十四行诗4.5:最适合常规游戏(创意+速度+成本)
- 作品4.5:用于重大故事时刻和老板打架
- 俳句:仅限快速查询(不建议用于游戏)
上下文窗口管理
活动状态在SQLite中持续存在,因此在不损失进度的情况下启动新的Claude Code会话。
何时重新开始:
- 2-3个D&D会话后(每个会话50k-150k代币)
- 当反应变得缓慢或重复时
- 在自然的故事转折点
- 当上下文超过~15万个令牌时
刷新后恢复:
exit
claude
/continue活动数据存储在 ./data/campaigns/ -永远不需要清洁。
文档
完整的文档 docs/:
技术栈
- 转到1.25.6 | MCP SDK:
github.com/modelcontextprotocol/go-sdk - SQLite:
modernc.org/sqlite|配置:.env通过github.com/joho/godotenv
构建与运行
make build
make test
make run看 部署指南 运输方式和配置。
许可证
MIT许可证
