dice-roller について
dice-rollerは、テーブルトップゲームやランダムな選択に使えるMCPサーバーです。専用ツールで標準的なダイス表記、D&Dの能力値生成、コイン投げ、ランダム選択に対応します。
主な機能
- 01標準ダイス表記と修正値
- 02最高値または最低値を保持
- 03D&D能力値の生成
- 04コイン投げの単発・複数回実行
- 05選択肢からのランダム選択
- 06パーセンテージダイス
活用シーン
- 01テーブルトップゲーム中のダイスロール
- 02D&D 5eのキャラクター能力値生成
- 03複数の選択肢からランダムに決定
- 04ロールを繰り返して統計を確認
MCP 対応
MCPクライアントに、ダイスロール、D&D能力値生成、コイン投げ、ランダム選択、パーセンテージダイスのツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Dice Roller 🎲
サイコロを振るためのシンプルなMCP(Model Context Protocol)サーバーです。テーブルトークゲームやランダムな決定などに最適です!
機能
- 標準的なダイス表記 -
2d6、1d20+5、3d8-2のような表記で、任意のダイスを振れます - 最高値/最低値を残す -
4d6kh3(最高値の3個を残す)や2d20kl1(最低値を残す)に対応しています - D&Dの能力値ロール - 4d6を振って最低値を除外し、キャラクターの能力値をすばやく生成します
- コイン投げ - 表か裏を簡単に選びます
- ランダム選択 - 選択肢のリストからランダムに選びます
- パーセンタイルダイス - 10の位と1の位のダイスでd100を振ります
インストール
pip install mcp-dice-roller
使い方
Claude Desktopでの使用
Claude Desktopの設定に追加します(macOSの場合は~/Library/Application Support/Claude/claude_desktop_config.json)。
{
"mcpServers": {
"dice-roller": {
"command": "python",
"args": ["-m", "mcp_dice_roller"]
}
}
}
VS Codeでの使用
VS CodeのMCP設定に追加します。
{
"mcp.servers": {
"dice-roller": {
"command": "python",
"args": ["-m", "mcp_dice_roller"]
}
}
}
ツール
roll_dice
標準的な表記でダイスを振ります。
roll_dice("2d6") → Roll two 6-sided dice
roll_dice("1d20+5") → Roll d20 and add 5
roll_dice("4d6kh3") → Roll 4d6, keep highest 3
roll_dice("2d20kl1") → Roll 2d20, keep lowest (disadvantage)
応答例:
{
"notation": "2d6+3",
"rolls": [4, 6],
"kept": [4, 6],
"subtotal": 10,
"modifier": 3,
"total": 13
}
roll_multiple
同じダイスを統計情報とともに複数回振ります。
roll_multiple("1d20", 5) → Roll d20 five times
応答例:
{
"notation": "1d20",
"times": 5,
"totals": [15, 8, 20, 3, 12],
"statistics": {
"min": 3,
"max": 20,
"sum": 58,
"average": 11.6
}
}
roll_dnd_stats
D&D 5eのキャラクターの能力値を生成します。
応答例:
{
"method": "4d6 drop lowest",
"stats": [
{"rolls": [4, 3, 5, 6], "kept": [4, 5, 6], "total": 15},
{"rolls": [2, 4, 4, 3], "kept": [3, 4, 4], "total": 11},
...
],
"totals": [15, 11, 14, 13, 10, 16],
"sum": 79
}
flip_coin
コインを投げます。
flip_coin() → Flip once
flip_coin(10) → Flip 10 times
pick_random
選択肢からランダムに選びます。
pick_random("pizza, burger, sushi, tacos")
応答例:
{
"options": ["pizza", "burger", "sushi", "tacos"],
"selected": "sushi",
"total_options": 4
}
roll_percentile
d100(パーセンタイルダイス)を振ります。
応答例:
{
"tens_die": 7,
"ones_die": 3,
"result": 73
}
開発
セットアップ
# Clone the repository
git clone https://github.com/vandewilly/mcp-dice-roller.git
cd mcp-dice-roller
# Install dependencies
pip install -e ".[dev]"
# Run tests
pytest
ローカルでの実行
python -m mcp_dice_roller
MCP Registry
MCP名: io.github.vandewilly/dice-roller
このサーバーはMCP Registryに公開されています。
ライセンス
MIT License - 詳細はLICENSEを参照してください。
作者
Vandewilly Silva (@vandewilly)
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。