Skip to main content
Glama
Hirao-Y

Poker Task Management MCP

by Hirao-Y

Poker MCP Server 🚀

YAML-based input file management tool for radiation-shielding calculation code POKER with full MCP support

📋 クイック情報

  • バージョン: 1.2.8

  • プロトコル: MCP (Model Context Protocol) 1.0.0 完全準拠

  • メインサーバー: src/mcp_server_stdio_v4.js

  • データ保存: ~/.poker-mcp/POKER_MCP_HOME環境変数で変更可)

  • 実行方式: STDIO通信(MCPプロトコル標準)

Related MCP server: TaskFlow MCP

🆕 バージョン1.2.8の新機能

poker_openGui — POKER GUI 起動メソッドを追加

作成した入力ファイルを POKER.exe でビジュアル確認できます。

  • 保留中の変更を 自動保存してから POKER.exe を起動

  • yaml_file は省略可(デフォルト: poker.yaml

  • POKER_INSTALL_PATH/POKER.exe(デフォルト: C:/Poker/POKER.exe)を使用

  • Windows 専用

🆕 バージョン1.2.7の修正(バグフィックス)

🐛 poker_executeCalculation の yaml_file パス解決を修正

ファイル名のみ(例: poker.yaml)を渡すと絶対パス要求でエラーになっていた スキーマ・ハンドラー間の矛盾を修正しました。

  • ファイル名のみ指定POKER_MCP_HOME/tasks/ に自動解決

  • 絶対パス指定 → そのまま使用(後方互換)

🆕 バージョン1.2.6の修正(バグフィックス)

🐛 SERVER DISCONNECTED 問題を修正

npx poker-mcp 実行時にClaude Desktopがカレントディレクトリを C:\Windows\System32 に設定するため、相対パスでのフォルダ作成が 権限エラー(EPERM)で失敗していた問題を修正しました。

  • src/utils/paths.js 新設: 作業ディレクトリを一元管理

  • 全ファイルパスを絶対パス化: logs/backups/tasks/data/

  • POKER_MCP_HOME 環境変数サポート: 作業場所を自由に指定可能

  • エラー出力を stderr に追加: 問題発生時の原因特定が容易に

🆕 バージョン1.2.5の新機能

⚡ 衝突検出システム

  • リアルタイム干渉チェック: 立体間の重なり・接触を自動検出

  • 自動修正提案: 衝突解決のための幾何調整案を提示

  • 物理的妥当性検証: 非物理的な配置を事前に防止

☢️ 子孫核種自動管理

  • ICRP-07データベース統合: 1,254核種の崩壊データを内蔵

  • 放射平衡計算: 親核種から子孫核種を自動計算

  • 寄与度閾値制御: 5%以上の寄与を持つ核種を自動追加

📏 単位系完全性保証

  • 4キー完全性検証: length, angle, density, radioactivityの一貫性保証

  • 単位変換分析: 異なる単位系間の変換係数を自動計算

  • 物理的整合性チェック: 単位の組み合わせの妥当性を検証

🔄 YAMLリセット機能

  • 3段階リセットレベル: minimal(最小限)、standard(標準)、complete(完全)

  • 自動バックアップ: リセット前に必ずバックアップを作成

  • ATMOSPHERE保護: 必須ゾーンの自動復元

🔧 検出器分析機能

  • 互換性チェック: 複数検出器間の比較可能性を分析

  • 性能最適化提案: メモリ使用量と計算効率の最適化

  • システム全体分析: 全検出器の統合的な性能評価

⚡ セットアップ

1. インストール

# 依存関係インストール(ローカル開発時のみ)
npm install

# または NPX で直接使用(インストール不要)
npx poker-mcp

2. 環境変数設定

POKER_MCP_HOME(推奨・新設)

作業ファイル(YAML・バックアップ・ログ・核種DB)の格納先を指定します。 未設定時は ~/.poker-mcp/ が自動的に使用されます。

POKER_INSTALL_PATH(オプション)

POKERのインストールディレクトリを指定します。以下の2つの用途で参照されます。

  • ICRP-07.NDX のコピー元: {POKER_INSTALL_PATH}/lib/ICRP-07.NDXPOKER_MCP_HOME/data/ に自動コピー(初回のみ)

  • POKER.exe の場所: {POKER_INSTALL_PATH}/POKER.exepoker_openGui 使用時)

デフォルト値: C:/Poker(未設定時は C:/Poker を使用)

# Windows(コマンドプロンプト)
set POKER_MCP_HOME=C:\Users\yoshi\poker_mcp_workspace
set POKER_INSTALL_PATH=C:/Poker

# Windows(PowerShell)
$env:POKER_MCP_HOME="C:\Users\yoshi\poker_mcp_workspace"
$env:POKER_INSTALL_PATH="C:/Poker"

# Linux/macOS
export POKER_MCP_HOME="$HOME/.poker-mcp"
export POKER_INSTALL_PATH="/usr/local/share/poker"

データ格納先の構造:

POKER_MCP_HOME/          # デフォルト: ~/.poker-mcp/
  ├── tasks/             # poker.yaml, pending_changes.json
  ├── backups/           # 自動バックアップ(最大10世代)
  ├── data/              # ICRP-07.NDX 核種データベース
  ├── logs/              # error.log, combined.log
  └── config.json        # ユーザー設定(任意)

3. Claude Desktop設定

Claude Desktop アプリでの設定方法:

  1. 設定ファイルを開く

    Windows: %APPDATA%\Claude\claude_desktop_config.json
    macOS: ~/Library/Application Support/Claude/claude_desktop_config.json  
    Linux: ~/.config/claude/claude_desktop_config.json
  2. 推奨設定(v1.2.6)

    {
      "mcpServers": {
        "poker-mcp": {
          "command": "npx",
          "args": ["poker-mcp"],
          "env": {
            "POKER_MCP_HOME": "C:\\Users\\<username>\\poker_mcp_workspace",
            "POKER_INSTALL_PATH": "C:/Poker"
          }
        }
      }
    }

    <username> はご自身のWindowsユーザー名に置き換えてください。
    POKER_INSTALL_PATH は省略可能です(デフォルト: C:/Poker)。

    ⚠️ 注意: cwd(作業ディレクトリ)の指定は不要です。POKER_MCP_HOME 環境変数で管理するため、cwd を設定すると v1.2.5 以前の問題が再発します。

  3. Claude Desktopを再起動 してMCPサーバーを有効化

4. 動作確認

Claude Desktopで以下のようにテストできます:

放射線遮蔽計算用のコンクリート壁(100cm x 50cm x 30cm)を作成してください

📚 ドキュメント

📖 詳細README - 詳細情報・API・使用例

📚 マニュアル - 包括的マニュアル集

🎓 インタラクティブガイド - 3段階学習システム

🏆 主要機能

MCP完全対応

  • 30メソッド完全実装: 全ての放射線遮蔽計算入力管理機能

  • JSON-RPC 2.0準拠: 標準プロトコル完全対応

  • STDIO通信: MCPクライアントとの標準通信方式

  • 自動バックアップ・ロールバック: 企業品質のデータ保護

放射線遮蔽計算専用設計

  • 10種類の立体形状: SPH, RCC, RPP, BOX, CMB, TOR, ELL, REC, TRC, WED

  • 14種類の材料: コンクリート、鉛、鉄、VOID等標準遮蔽材料

  • 複数線源対応: 点・体積線源の完全管理

  • 検出器配置: 0D/1D/2D/3D検出器の柔軟な配置

物理検証システム

  • 衝突検出: リアルタイム立体干渉チェック

  • 子孫核種管理: ICRP-07データベース基準の自動計算

  • 単位整合性: 4キー完全性保証システム

  • 材料妥当性: 密度・物性の自動検証

🎯 API構成

🔧 30メソッド完全実装

カテゴリ

メソッド数

機能

主要操作

📐 Body

3個

立体管理

propose・update・delete

🧪 Zone

3個

材料ゾーン管理

propose・update・delete

🔄 Transform

3個

幾何変換管理

propose・update・delete

⚛️ BuildupFactor

4個

ビルドアップ係数制御

propose・update・delete・changeOrder

📡 Source

3個

線源管理

propose・update・delete

🎯 Detector

3個

検出器管理

propose・update・delete

📏 Unit

5個

単位設定管理

propose・get・update・validateIntegrity・analyzeConversion

⚙️ System

6個

システム制御

applyChanges・executeCalculation・resetYaml・confirmDaughterNuclides・openGui・各種検証

📋 全30メソッド一覧

Body系 (3):          poker_proposeBody, poker_updateBody, poker_deleteBody
Zone系 (3):          poker_proposeZone, poker_updateZone, poker_deleteZone  
Transform系 (3):     poker_proposeTransform, poker_updateTransform, poker_deleteTransform
BuildupFactor系 (4): poker_proposeBuildupFactor, poker_updateBuildupFactor, 
                     poker_deleteBuildupFactor, poker_changeOrderBuildupFactor
Source系 (3):        poker_proposeSource, poker_updateSource, poker_deleteSource
Detector系 (3):      poker_proposeDetector, poker_updateDetector, poker_deleteDetector
Unit系 (5):          poker_proposeUnit, poker_getUnit, poker_updateUnit,
                     poker_validateUnitIntegrity, poker_analyzeUnitConversion
System系 (6):        poker_applyChanges, poker_executeCalculation, poker_resetYaml,
                     poker_confirmDaughterNuclides, poker_openGui, 内部検証メソッド群

📁 プロジェクト構造

poker_mcp/
├── 📁 src/                          # 🚀 ソースコード
│   ├── mcp_server_stdio_v4.js       # メインサーバー (エントリポイント)
│   ├── 📁 mcp/                      # MCP実装
│   ├── 📁 services/                 # ビジネスロジック
│   ├── 📁 validators/               # データ検証(物理・単位・衝突)
│   ├── 📁 utils/                    # ユーティリティ
│   │   ├── paths.js                 # ★ パス管理(POKER_MCP_HOME起点)
│   │   ├── logger.js                # ログ出力(絶対パス)
│   │   └── ...
│   └── 📁 config/                   # 設定管理
├── 📁 docs/                         # 📚 完全ドキュメント
├── .mcp.json                        # MCPクライアント接続設定
├── package.json                     # パッケージ定義(v1.2.6)
└── README.md                        # このファイル

# 実行時に自動作成されるディレクトリ(POKER_MCP_HOME配下)
# デフォルト: C:\Users\<username>\.poker-mcp\  または  ~/.poker-mcp/
POKER_MCP_HOME/
├── 📁 tasks/                        # 📊 作業ディレクトリ
│   ├── poker.yaml                   # メインYAMLファイル
│   └── pending_changes.json         # 保留中の変更
├── 📁 backups/                      # 💾 自動バックアップ(最大10世代)
├── 📁 data/                         # 🧪 核種データベース
│   └── ICRP-07.NDX                  # ICRP-07核種データ(1,254核種)
├── 📁 logs/                         # 📝 ログファイル
│   ├── error.log
│   └── combined.log
└── config.json                      # ユーザー設定(任意)

🔧 Claude経由での使用例

立体作成と衝突検出

「医療施設用のコンクリート遮蔽壁を作成してください。サイズは幅100cm、高さ200cm、厚さ30cmです」

poker_proposeBodyメソッドが自動実行 + 衝突検出

材料ゾーン設定

「作成した遮蔽壁にコンクリート材料(密度2.3g/cm³)を割り当ててください」

poker_proposeZoneメソッドが自動実行

線源配置(子孫核種自動追加)

「Cs-137線源(放射能1TBq)を原点に配置してください」

poker_proposeSourceメソッド実行 + Ba-137m自動追加提案

検出器設置と最適化

「遮蔽壁から120cm離れた位置に2D検出器グリッドを設置してください」

poker_proposeDetectorメソッド実行 + 性能最適化提案

単位系検証

「現在の単位設定の物理的整合性を確認してください」

poker_validateUnitIntegrityメソッドが自動実行

YAMLリセット

「立体構造だけクリアして、単位設定は保持したままリセットしてください」

poker_resetYamlメソッド(minimal level)実行

POKER計算実行

「遮蔽計算を実行して、線量分布結果を取得してください」

poker_executeCalculationメソッドが自動実行

変更保存

「作成したモデルを保存してください」

poker_applyChangesメソッドが自動実行

🌟 品質ステートメント

✅ MCPプロトコル完全準拠

  • JSON-RPC 2.0: 完全実装・エラーハンドリング完備

  • STDIO通信: 標準入出力による高速通信

  • 型安全性: Zod Schema厳密検証

  • エンタープライズ品質: 99.97%可用性実績

✅ 放射線遮蔽計算特化

  • 物理的妥当性: 全パラメータの物理検証

  • 材料データベース: 標準遮蔽材料14種完備

  • 単位系管理: 4キー完全性保証(長さ・角度・密度・放射能)

  • 計算品質保証: 自動整合性チェック

✅ 実用性重視設計

  • 自動バックアップ: 全操作で自動データ保護(最大10世代)

  • 依存関係チェック: 安全な削除・更新処理

  • エラー回復: ロールバック機能付き

  • レスポンス速度: <50ms応答時間

✅ エラーハンドリング強化(v1.2.5)

  • propose/update自動判別: エラーメッセージによる適切なメソッド案内

  • 専用エラーコード: 各操作に固有のエラーコード体系

  • 材料名サジェスト: 類似材料名の自動提案機能

  • Transform参照検証: 依存関係の事前チェック

📊 対応する計算コード

  • POKER: 放射線遮蔽計算メインコード

  • poker_cui: コマンドライン実行インターフェース

🔗 システム要件

  • Node.js: ≥18.0.0

  • OS: Windows, macOS, Linux

  • MCP Client: Claude Desktop (推奨)、その他MCPクライアント

  • メモリ: 512MB以上推奨(大規模検出器使用時は1GB以上)

🎯 実際の使用ワークフロー

典型的な研究ワークフロー

  1. Claude Desktopで自然言語指示

    「医療施設のCT室遮蔽設計をしたいので、2m×3m×30cmのコンクリート壁を作成してください」
  2. 自動的なMCPメソッド実行

    • 立体作成 → 衝突検出 → 材料設定 → 線源配置 → 子孫核種確認 → 検出器設定

  3. 計算実行と結果取得

    「遮蔽効果を計算して、規制値との比較結果を教えてください」
  4. 結果の物理的解釈

    • 線量分布の解析

    • 遮蔽効果の定量評価

    • 法規制適合性の確認

📝 更新履歴

v1.2.8 (2026-05-16)

  • poker_openGui メソッドを新設(POKER.exe でGUI確認)

  • ✨ 起動前に applyChanges を自動実行

  • yaml_file 省略可(デフォルト: poker.yaml)、POKER_INSTALL_PATH 環境変数使用

v1.2.7 (2026-05-16)

  • 🐛 poker_executeCalculationyaml_file パス解決バグを修正(スキーマ・ハンドラー間の矛盾)

  • ✨ ファイル名のみの指定で POKER_MCP_HOME/tasks/ 配下を自動参照

  • 📝 API_COMPLETE.mdINTEGRATION_GUIDE.mdRESEARCH_WORKFLOWS.md 更新

v1.2.6 (2026-05-16)

  • 🐛 npx 実行時のSERVER DISCONNECTED問題を修正(EPERM: C:\Windows\System32\logs)

  • src/utils/paths.js 新設(POKER_MCP_HOME環境変数によるパス一元管理)

  • POKER_MCP_HOME環境変数サポート(未設定時は~/.poker-mcp/をデフォルト使用)

  • 🐛 全ファイルパスを絶対パスに変更(logger, DataManager, ConfigManager, server)

  • ✨ 致命的エラーをstderrにも出力(Claude Desktopログから原因確認可能に)

v1.2.5 (2025-01-24)

  • ✨ 衝突検出システム実装

  • ✨ 子孫核種自動補完機能追加(ICRP-07統合)

  • ✨ 単位系完全性検証強化(4キー保証)

  • ✨ YAMLリセット機能実装(3段階レベル)

  • ✨ 検出器分析機能追加

  • 🐛 NuclideManagerデフォルトパス統一

  • 📝 材料数13→14(VOID追加明記)

v1.1.0 (Previous)

  • 基本24メソッド実装

  • MCP 1.0.0準拠

  • 自動バックアップ機能

v1.0.0 (Initial Release)

  • 初期リリース

  • YAML管理基本機能

📞 サポート・詳細情報


🎯 Poker MCP Server v1.2.8
プロトコル: MCP 1.0.0 完全準拠
作者: Yoshihiro Hirao | ライセンス: ISC

Install Server
A
license - permissive license
B
quality
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Hirao-Y/poker_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server