骰子滚动服务

一个提供骰子滚动功能的MCP服务器,支持单次和多次骰子滚动操作,适用于RPG游戏等场景。

  • by ariane-emory
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 ariane-emory/dice-roller-mcp

使用说明

骰子滚轮mcp

掷骰子的MCP服务器。

描述

这是一个模型上下文协议(MCP)服务器,提供掷骰子工具。它实现了两个工具:

  1. roll:用于掷一组骰子
  2. multi_roll:用于在一次呼叫中滚动多组骰子

这两个工具都采用以下参数:

  • num_dice:要掷的骰子数
  • sides:每个模具上的边数
  • modifier:要添加到结果总数中的可选整数

这允许以与RPG骰子符号(如“3d6”或“2d6+1”)等效的方式掷骰子。

安装

npm install
npm run build

用法

要启动服务器,请执行以下操作:

npm start

要在开发模式下运行:

npm run dev

测试

要运行测试,请执行以下操作:

npm test

例子

TypeScript客户端

看 src/client-example.ts 以TypeScript客户端为例。

运行它:

npm run client

Python客户端

看 example-python-client.py 以Python客户端为例。

运行它:

python3 example-python-client.py

工具

服务器提供两个工具:

1. roll

使用可选的修改器滚动一组骰子。

工具调用示例:

  • roll(num_dice=2, sides=6) -掷2个六面骰子
  • roll(num_dice=3, sides=6, modifier=1) -掷3个六面骰子,总数加1

2. multi_roll

在一次调用中滚动多组骰子,这对于生成D&D角色统计等场景更有效。

工具调用示例:

  • multi_roll(rolls=[{num_dice=3, sides=6}, {num_dice=3, sides=6}, ...]) -六次滚动3d6以获取D&D角色统计数据
  • multi_roll(rolls=[{num_dice=2, sides=6, modifier=1}, {num_dice=1, sides=20, modifier=-2}]) -辊2d6+1和1d20-2