yusong652/pfc-mcp
đ đ đĒ - MCP server for ITASCA PFC discrete element simulation â browse documentation, execute scripts, capture plots, and manage long-running tasks via a WebSocket bridge to the PFC GUI.
Quick Install
{
"mcpServers": {
"yusong652-pfc-mcp": {
"command": "npx",
"args": [
"-y",
"yusong652-pfc-mcp"
]
}
}
}Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.
Documentation Overview
itasca-mcp
itasca>model new ;now, with LLM.
itasca-mcp connects AI agents to ITASCA's numerical modeling software â PFC, FLAC, 3DEC, MPoint, and MassFlow â through the Model Context Protocol. Browse documentation, run simulations, and execute code, all through natural conversation.
itasca>model solve ;LLM solves.

Tools (10)
5 documentation tools â browse and search the selected engine's commands, Python API, and reference docs. No bridge required.
5 execution tools â interactive REPL, task submission, progress monitoring, interruption, and history. Requires bridge.
First-time Setup
Prerequisites
- An ITASCA engine installed â PFC, FLAC, 3DEC, MPoint, or MassFlow. 9.0+ recommended; PFC 6.0 / 7.0 and FLAC 7.0 are also supported.
- uv installed (for
uvx) - An AI agent â Claude Code, Codex CLI, Gemini CLI, or any MCP-capable client
Agentic Setup (Recommended)
Copy this to your AI agent and let it self-configure:
Fetch and follow this bootstrap guide end-to-end:
https://raw.githubusercontent.com/yusong652/itasca-mcp/main/docs/agentic/itasca-mcp-bootstrap.md
Manual Setup
1. Register the MCP server with your agent.
Most agents register it with a single command:
# 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
Or fill in the MCP config file manually:
{
"mcpServers": {
"itasca-mcp": {
"command": "uvx",
"args": ["itasca-mcp"]
}
}
}
2. Start the bridge from inside the ITASCA engine:
Download addon.py, then use either of these two flows inside the engine GUI (PFC, FLAC, 3DEC, ...):
- Copy the file contents into the engine's IPython console and run them
- Or download the file and execute it in the engine GUI
Verify
Restart your AI agent and ask it to call itasca_execute_code to verify the connection.
Daily Startup
Once first-time setup is done, each new engine session only needs the bridge re-started â run this in the engine's IPython console and you're back online:
import itasca_mcp_bridge
itasca_mcp_bridge.start()
start() checks PyPI for a newer bridge release and self-upgrades before starting. The MCP client config persists.
Features
- Multi-engine corpus - command, Python API, and reference docs for PFC, FLAC, 3DEC, MPoint, and MassFlow, selected via the required
softwareparameter - Multi-version support - command docs across engine versions (PFC: 6.0/7.0/9.0, FLAC: 7.0/9.0) via the
versionparameter - Hierarchical documentation browsing - agents navigate the engine command tree to discover capabilities and boundaries, reducing hallucinated commands
- Enhanced plot documentation - plot items reference docs supplementing the official documentation
- Interactive REPL - rapid iteration before committing to full scripts; agents can quickly test and refine code
- Task lifecycle management - submit long-running simulations, monitor progress, interrupt running tasks, and browse task history
- Multi-client compatible - works with Claude Code, Codex CLI, Gemini CLI, GitHub Copilot CLI, OpenCode, toyoura-nagisa, and other MCP clients
Troubleshooting
See Troubleshooting in the bootstrap guide.
Development
See Developer Guide: Install and Run from Source.
Contributing
PRs and issues are welcome! See the Developer Guide to get started.
License
MIT - see LICENSE.