Dice Roll について
Dice Rollは、テーブルトークRPGなどに使えるMCPサイコロサーバーです。標準的な記法とFate/Fudgeダイスに対応し、記法の解析とロールを行うツールを提供します。
主な機能
- 01標準的なサイコロ記法の解析
- 02標準ダイスとFate/Fudgeダイスへの対応
- 03ランダムなロール結果の生成
- 04Zodによる入出力の検証
活用シーン
- 012d6などの記法でサイコロを振る
- 02テーブルトークRPGでFateダイスを振る
- 03式を解析してサイコロ構成を確認する
MCP 対応
記法の解析とサイコロを振るためのツールを、MCP対応クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| notation | string | はい | 解析するダイスロール表記 |
詳細
server-dice-roll
標準的なダイス表記とFate/Fudgeダイスに対応した、ダイスロールをシミュレートするModel Context Protocol(MCP)サーバーです。
機能
- ダイス表記の解析:
2d6、1d20+5、4dFのような標準的なダイス表記文字列を解析します - 複数のダイスタイプ:標準的なダイスとFate/Fudgeダイスの両方に対応します
- ランダムなロール:正確な確率分布に基づいて、真にランダムなダイスロールを生成します
- 検証:Zodスキーマを使用して入力と出力を完全に検証します
- MCP連携:Claude Desktopなど、MCP互換クライアントとシームレスに連携します
使用方法
このMCPサーバーは、次の2つの主要なツールを提供します。
1. ダイス表記を解析する
ダイス表記文字列を解析し、構造化された表現を返します。
parse_dice_roll_notation
input: { notation: "3d6+4" }
output: { type: "standard", count: 3, sides: 6, modifier: 4 }
2. ダイスを振る
ダイスロールの設定に基づいてダイスを振り、結果を返します。
dice_roll
input: { type: "standard", count: 3, sides: 6, modifier: 4 }
output: { rolls: [5, 2, 6], total: 17, original: "3d6+4" }
インストールとセットアップ
Claude Desktopで使用する
このサーバーをClaude Desktopの設定に追加します。
{
"mcpServers": {
"dice": {
"command": "npx",
"args": ["-y", "server-dice-roll"]
}
}
}
npm/npxで使用する
# Install globally
npm install -g server-dice-roll
# Run the server
mcp-server-dice-roll
# Or run directly with npx
npx server-dice-roll
ダイス表記について
ダイス表記は、テーブルトークRPGでさまざまなダイスロールを表すために使用される方式です。
標準表記
標準形式はNdS+Mです。
Nは振るダイスの数です(省略可能。既定値は1です)dはダイスを振ることを示しますSは各ダイスの面の数です+Mは合計に加算する修正値です(省略可能)
例:
d6- 6面ダイスを1個振ります2d10- 10面ダイスを2個振り、結果を合計します3d8+5- 8面ダイスを3個振り、結果を合計して5を加算します
Fate/Fudgeダイス
Fateダイス(Fudgeダイスとも呼ばれます)は、-1、0、+1の値がそれぞれ2面ずつある、特殊な6面ダイスです。
形式:NdF
Nは振るダイスの数ですdFはFateダイスを示します
例:
4dF- Fateダイスを4個振ります(結果は-4から+4の範囲になります)
ライセンス
このプロジェクトはMIT Licenseの下でライセンスされています。詳細はLICENSE.mdファイルをご覧ください。
作者
Luke Bayliss [email protected]によって作成されました
リリースプロセス
このプロジェクトでは、バージョン管理、リリース、公開に単一の統合ワークフローを使用しています。
-
バージョン更新ラベル:mainブランチへの各PRには、バージョン更新ラベルを正確に1つ付ける必要があります。
patch- 後方互換性のあるバグ修正minor- 後方互換性のある新機能major- 互換性を損なう変更- ラベルが指定されていない場合は、既定で
patchが適用されます
-
順次実行されるワークフロー:統合されたリリースおよび公開ワークフローは、次の3つのジョブを順番に実行します。
- ジョブ1:バージョン更新 - package.jsonのバージョンを更新し、gitタグを作成します
- ジョブ2:リリース作成 - 変更履歴を含むGitHubリリースを作成します
- ジョブ3:公開 - npmにパッケージを公開します
-
自動トリガー:次の状況でワークフローが自動的に実行されます。
- PRがmainにマージされたとき(PRのバージョンラベルを使用)
- 変更がmainに直接プッシュされたとき(patchバージョンを使用)
- GitHub Actionsから手動で実行されたとき
- タグが手動でプッシュされたとき(バージョン更新はスキップし、リリース作成と公開のみ実行)
これらの手順はすべて、信頼性を確保するため、適切な依存関係を設定した連携ワークフローで実行されます。
PRの要件
すべてのPRには、バージョン更新ラベル(patch、minor、major)を正確に1つ付ける必要があります。ラベルが指定されていない場合、システムが既定のpatchラベルを自動的に追加します。複数のバージョンラベルが付いたPRは、引き続きマージがブロックされます。
バージョンの手動更新
PRを作成せずにバージョン更新を手動で実行するには、次の手順に従います。
- Actions > Version Bumpワークフローに移動します
- 「Run workflow」をクリックします
- ブランチと更新タイプ(patch、minor、major)を選択します
- 「Run workflow」をクリックします
以降のプロセス(リリース作成と公開)は自動的に実行されます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。