PFC - ITASCA Discrete Element Simulation について
itasca-mcp は、AI エージェントを ITASCA の岩盤力学シミュレーションソフトウェア(PFC、FLAC、3DEC、MPoint、MassFlow)に接続する MCP サーバーです。エンジンのドキュメントを参照し、会話を通じてシミュレーションを実行したい技術者を対象としています。
主な機能
- 01複数エンジン・複数バージョンのコマンドと Python API ドキュメント
- 02コマンドツリーの閲覧によるエンジン機能の把握
- 03実行中タスクのモデル状態を確認できるライブ REPL
- 04長時間タスクの投入、進捗監視、中断
- 05エンジンの GUI で行った操作の把握
活用シーン
- 01PFC で plot コマンドを調べ、接触力鎖を描画する
- 02FLAC3D で斜面モデルを作成し、安全率を求める
- 03シミュレーションを停止せず実行中の不平衡力を確認する
MCP 対応
本プロジェクトは MCP サーバーであり、ドキュメント閲覧・検索、コード実行、タスク管理のツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
itasca-mcp
itasca>model new ;now, with LLM.
itasca-mcp は、Model Context Protocol を通じて、AI エージェントを ITASCA の地質力学シミュレーションソフトウェア(PFC、FLAC、3DEC、MPoint、MassFlow)に接続します。ドキュメントの閲覧、シミュレーションの実行、コードの実行を、自然な会話を通じて行えます。
itasca>model solve ;LLM solves.

ツール(10)
ドキュメントツール 5 種類 — 選択したエンジンのコマンド、Python API、リファレンスドキュメントを閲覧・検索できます。ブリッジは不要です。
実行ツール 5 種類 — 対話型 REPL、タスクの送信、進行状況の監視、中断、履歴に対応しています。ブリッジが必要です。
プロンプトの例
- 「高密度試験体で二軸圧縮試験を実行し、応力–ひずみ曲線をプロットして」
- 「FLAC3D で斜面モデルを作成し、安全率を求めて」
- 「3DEC で節理のある岩盤中のトンネル掘削をモデル化し、開口部周辺のブロック変位を確認して」
- 「MPoint で地すべりの流下をシミュレーションし、最終的な堆積形状を報告して」
- 「シミュレーションがまだ実行中です。停止せずに、現在の不釣り合い力を確認して」
- 「ドキュメントで
plotコマンドを調べてから、現在のモデルの接触力鎖をプロットして」 - 「コンソールに入力したばかりのコマンドが正しくないようです。確認して」
初回セットアップ
前提条件
- ITASCA エンジンがインストールされていること — PFC、FLAC、3DEC、MPoint、または MassFlow。9.0 以降を推奨します。PFC 6.0/7.0、FLAC 7.0、3DEC 7.0 もサポートされています。
- uv がインストールされていること(
uvx用) - AI エージェント — Claude Code、Codex CLI、Gemini CLI、または MCP 対応のクライアント
エージェントによるセットアップ(推奨)
以下を AI エージェントにコピーして、自動で設定させてください。
Fetch and follow this bootstrap guide end-to-end:
https://raw.githubusercontent.com/yusong652/itasca-mcp/main/docs/agentic/itasca-mcp-bootstrap.md
手動セットアップ
1. MCP サーバーをエージェントに登録します。
多くのエージェントでは、単一のコマンドで登録できます。
# Claude Code
claude mcp add itasca-mcp -- uvx itasca-mcp
# Codex / Codex-cli
codex mcp add itasca-mcp -- uvx itasca-mcp
# Gemini CLI
gemini mcp add itasca-mcp uvx itasca-mcp
または、MCP 設定ファイルに手動で入力します。
{
"mcpServers": {
"itasca-mcp": {
"command": "uvx",
"args": ["itasca-mcp"]
}
}
}
2. ITASCA エンジン内からブリッジを起動します。
addon.py をダウンロードし、エンジンの GUI(PFC、FLAC、3DEC など)内で以下のいずれかの方法を使用します。
- ファイルの内容をエンジンの IPython コンソールにコピーして実行します
- または、ファイルをダウンロードしてエンジンの GUI で実行します
接続確認
AI エージェントを再起動し、itasca_execute_code を呼び出すよう依頼して、接続を確認します。
毎日の起動
初回セットアップが完了した後は、新しいエンジンセッションごとにブリッジを再起動するだけです。エンジンの IPython コンソールで以下を実行すれば、再び利用できます。
import itasca_mcp_bridge
itasca_mcp_bridge.start()
start() は PyPI を確認して新しいブリッジリリースがあれば、起動前に自動でアップグレードします。MCP クライアントの設定は保持されます。
機能
- 複数エンジン・複数バージョンのコーパス - PFC、FLAC、3DEC、MPoint、MassFlow のコマンド、Python API、リファレンスドキュメントを、エンジンの各バージョン(PFC:6.0/7.0/9.0、FLAC:7.0/9.0、3DEC:7.0/9.0)向けに収録しています。
softwareパラメーターとversionパラメーターで選択できます。 - ドキュメントエージェントがナビゲーション可能 - エージェントはエンジンのコマンドツリーを閲覧して機能と境界を確認できるため、幻覚によるコマンドの生成を減らせます。プロット項目のリファレンスドキュメントが公式ドキュメントを補完します。
- 実行中のタスクと並行するライブ REPL - シミュレーションの実行中にコードを実行し、タスクを停止せずにモデルの状態や中間結果を確認できます。完全なスクリプトを書く前にすばやく反復する場合にも便利です。
- タスクのライフサイクル管理 - 長時間実行されるシミュレーションを送信し、進行状況を監視して、実行中のタスクを中断し、タスク履歴を閲覧できます。
- GUIでの操作を認識 - エンジンの IPython ペインで実行したセル、プロンプトに入力したコマンド、開いた、閉じた、または切り替えたプロットやデータファイル、プロットに追加した項目、エディターから実行したデータファイルは、次回の呼び出し時にすべてエージェントに届きます。そのため、GUIとエージェントを同時に使って作業できます。
- エージェントが起動するブリッジ - AI エージェントはエンジンの
console.exeを通じてブリッジを自ら起動できます。 - 複数クライアントに対応 - Claude Code、Codex CLI、Gemini CLI、GitHub Copilot CLI、OpenCode、toyoura-nagisa、その他の MCP クライアントで動作します。
トラブルシューティング
ブートストラップガイドのトラブルシューティングを参照してください。
開発
開発者ガイド:ソースからインストールして実行を参照してください。
コントリビューション
プルリクエストやイシューを歓迎します。変更の反映先やドキュメントコーパスの構成についてはCONTRIBUTING.mdを、ソースからのインストールについては開発者ガイドを参照してください。
ライセンス
MIT - LICENSEを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。