mcpField
D
Dice Roller

Dice Roller

远程服务
pipeworx.io游戏娱乐06 天前更新

关于 Dice Roller

Dice Roller 是面向桌面角色扮演游戏和概率查询的 MCP 服务,可按骰子记法掷骰、掷硬币并计算结果分布。它支持带种子的结果复现,并对部分骰池精确枚举概率。

主要功能

  1. 01解析多种骰子记法并掷骰
  2. 02重复掷骰并汇总统计
  3. 03掷最多 1,000 枚硬币
  4. 04计算结果分布与目标概率
  5. 05用种子复现随机结果

适用场景

  1. 01进行桌面角色扮演游戏掷骰
  2. 02比较优势骰或保留骰的结果
  3. 03估算掷骰达到指定目标的概率

MCP 相关

向 MCP 客户端提供掷骰、掷硬币和概率计算工具。可通过 Pipeworx 远程端点连接,也可本地运行 stdio MCP 服务。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/dice-roller/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/dice-roller

使用真实且可复现的随机性进行桌面游戏掷骰、抛硬币和精确骰子概率计算:支持任何标准骰子记法(2d6+3、4d6kh3、2d20kl1、3d6!、4dF、d%),最多抛 1,000 枚硬币,或获取一次掷骰的完整概率分布。

属于 Pipeworx — 一个将 AI Agent 连接到 1866+ 个实时数据源的 MCP 网关。这是一个独立的非官方集成,与上游提供方无关联、未经其认可,也非由其发布。

工具

  • roll_dice(notation, times?, seed?) — 按给定记法掷骰,并返回每颗骰子的结果、哪些骰子被保留、每项的小计、总和以及易读的明细。times(最多 100)可重复掷骰,并统计重复结果中的最小值/最大值/平均值。可回答“掷 4d6 并去掉最低点数”“掷骰并取优势”“掷 2d6+3 六次”等请求。
  • flip_coins(count?, seed?) — 最多抛 1,000 枚公平硬币;返回正/反面序列、正面和反面次数以及最长连续序列。
  • dice_odds(notation, target?, comparison?, seed?) — 返回最小值、最大值、平均值、标准差、众数、中位数以及每个总和的概率;指定 target 后,还会计算总和达到 >=(默认)、>、<=、< 或 == 该值的概率。对于普通求和以及最多 1,000,000 种结果的保留/丢弃骰池,通过枚举精确计算;对于其他情况(以及所有爆炸骰),则使用蒙特卡罗估算,并标注 method: "monte_carlo" 及其样本数。可回答“3d6 掷出 15+ 的概率是多少”“优势检定对抗 DC 15 有多大帮助”等请求。

每个响应都包含 seed 和 meta 信封(seed、procedure、deck、source)。省略 seed 可获得新的随机结果;使用相同参数传回返回的种子,即可精确复现结果。结果是随机结果,并非建议;其含义由调用方 Agent 决定。

记法

由 + 或 - 连接的 NdS 项,以及整数常数(1d20+5、2d6+1d4-1)。N 默认为 1。S 可以是数字、%(= 100)或 F(fudge/Fate:-1、0、+1)。修饰符按以下顺序置于骰子之后:!(爆炸:掷出最大面时再掷一颗骰子),然后是 kh/kl/dh/dl,后面可带数量(保留最高、保留最低、丢弃最高、丢弃最低;单独使用 k 表示 kh1)。限制:每种记法最多 1,000 颗骰子,每颗骰子最多 10,000 面,每条爆炸链最多额外掷 100 颗骰子。格式错误或超出限制时,系统会拒绝请求并说明原因和语法。

身份验证

无需密钥。无上游服务,也无出站调用。

数据源

  • Pipeworx dice engine v1(本仓库共享的概率引擎):采用以种子字符串的 cyrb128 哈希值作为种子的 sfc32 伪随机数生成器。不带种子调用时,会从平台的加密随机源获取 128 位种子并返回。骰子点数通过拒绝采样生成,因此无论骰子有多少面,都不会偏向任何点数。

单元测试会固定给定种子对应的生成序列。如果引擎变更导致种子结果发生变化,该测试就会失败,因为有人可能引用过这些结果。

快速开始

添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "dice-roller": {
      "url": "https://gateway.pipeworx.io/dice-roller/mcp"
    }
  }
}
此端点实际提供的内容

https://gateway.pipeworx.io/dice-roller/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、 discover_tools、search_within、remember/recall 和其余网关级工具。因此,你看到的工具数量会多于表格中的数量:目前,单个工具包端点会列出大约 30 个共享工具,以及该工具包自身的工具。连接的 initialize 响应会说明其确切范围,也是当天情况的权威依据。

这是有意为之,并非意外的多路复用。元工具可以让限定范围的连接回答本工具包未涵盖的问题——通过可跨整个目录路由的 ask_pipeworx——无需再添加第二个 MCP 服务。目前无法挂载不包含这些工具的工具包端点;如果额外的架构定义占用的上下文比路由功能带来的价值更多,请只连接一次完整网关,而不要连接多个工具包端点。

或者,连接完整的 Pipeworx 网关,直接列出所有工具包的工具,而不只是此工具包的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

两个 URL 都连接到同一个网关和相同的 1866+ 个数据源。唯一的区别是直接列出哪些工具包的工具;无论连接哪个端点,ask_pipeworx 都可以访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/roll_dice \
  -H 'Content-Type: application/json' \
  -d '{"notation":"4d6kh3","times":6}'

首次调用无需账户。查看任意工具:GET https://gateway.pipeworx.io/v1/tools/roll_dice。查找工具:使用 {"query":"..."} 向 https://gateway.pipeworx.io/v1/tools/search_packs 发送 POST 请求。

独立运行(无需网关账户)

此软件包也可以作为本地 stdio MCP 服务运行——无需 Pipeworx 账户,也无需经由网关往返:

{
  "mcpServers": {
    "dice-roller": {
      "command": "npx",
      "args": ["-y", "@pipeworx/mcp-dice-roller"]
    }
  }
}

或者直接运行它,确认服务能够启动:

npx -y @pipeworx/mcp-dice-roller

它通过 stdin/stdout 使用 MCP,并针对仅限此工具包的工具响应 initialize/tools/list/tools/call——不包含上述网关连接添加的任何共享元工具。源码相同,工具相同,但没有 ask_pipeworx 路由。

使用 ask_pipeworx

除了直接调用工具,你还可以用通俗易懂的英语提问——上述工具包端点和完整网关都支持此功能:

ask_pipeworx({ question: "your question about Dice Roller data" })

网关会自动选择合适的工具并填入参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。