Dice MCP服务器
用于跨多个游戏系统滚动TRPG骰子的模型上下文协议(MCP)服务器。
快速开始
uvx(推荐)
{
"mcpServers": {
"dice": {
"command": "uvx",
"args": ["roleplaying-dice-mcp"]
}
}
}
配置:macOS ~/Library/Application Support/Claude/claude_desktop_config.json /窗户 %APPDATA%\Claude\claude_desktop_config.json
pip/Docker
pip install roleplaying-dice-mcp
roleplaying-dice-mcp
docker build -t dice-mcp-server . && docker run -i dice-mcp-server
工具
| 工具 | 目的 | 关键参数 |
|---|
roll_dice | 使用标准符号(NdM+X,kh/kl,dF)掷骰子 | notation, advantage, bonus_dice, target, degrees |
roll_pool | 骰子池成功计数(WoD、Shadowrun) | pool, target, explode, count_ones |
reroll | 用相同的参数重新滚动最后一卷 | -- |
get_history | 检索最近的滚动日志 | limit |
clear_history | 清除滚动历史记录 | -- |
看 内容.md 用于系统特定的参数映射和不变量。
______________________________________________________________________
参数参考
roll_dice
| 参数 | 类型 | 默认值 | 说明 |
|---|
notation | 字符串 | *必需的* | 骰子表达式: 1d20+5, 4d6kh3, 4dF+2, 1d100 |
advantage bool的。 false | 滚动d20两次,取更高的(仅限1d20) |
disadvantage bool的。 false | 滚动d20两次,取较低的(仅1d20) |
bonus_dice | int | 0 | CoC奖励骰子(0–2,仅1d100)-额外十个,保持最低 |
penalty_dice | int | 0 | CoC惩罚骰子(0–2,仅1d100)-额外的十分,保持最高 |
target | int | -- | DC/AC/技能值用于成功检查 |
target_mode | enum | "at_least" | "at_least" (D&D:≥)或 "at_most" (CoC:≤) |
critical bool的。 false | Nat 20/1检测。随着 degrees="pf2e",偏移度±1步 |
degrees | 枚举 | -- | "coc" / "pf2e" / "pbta" --启用学位计算 |
roll_pool
| 参数 | 类型 | 默认值 | 说明 |
|---|
pool | int | *必需的* | 骰子数量(1-50) |
sides | int | 10 | 每个模具的侧面 |
target | int | 8 | 成功的最小值(≥) |
explode bool的。 false | 重新滚动到最大值 |
double_on | int | -- | 在该值或更高值下加倍成功(必须≥target) |
count_ones bool的。 false | 启用僵尸/故障检测 |
get_history
| 参数 | 类型 | 默认值 | 说明 |
|---|
limit | int | 10 | 要检索的最近卷数(1-100) |
系统覆盖范围
| 系统 | 覆盖范围 | 使用的主要功能 |
|---|
| D&D 5e | 95% | 符号、优势、关键、目标、4d6kh3 |
| CoC 7e | 85% | d100,加/罚骰子,度数=CoC,最大值 |
| PF2e | 85% | d20+mod,度数=PF2e,临界(nat 20/1偏移) |
| PbtA | 90% | 2d6+mod,度数=PbtA |
| 死亡率 | 95% | 4dF+mod |
| WoD | 90% | 滚池、爆炸、计数一(botch) |
| Shadowrun | 85% | roll_pool(d6),计数1(故障) |
| 野蛮世界 | 50% | 爆炸性工作,但没有野生死亡或饲养计数 |
项目结构
├── server.py # MCP server — tools & handlers
├── dice_parser.py # Notation parser (NdM, NdF, kh/kl)
├── history.py # Roll history manager
├── src/roleplaying_dice_mcp/ # PyPI package
├── tests/test_trpg_scenario.py
├── pyproject.toml
├── Dockerfile
└── README.md
许可证
麻省理工学院