
PFC - ITASCA Discrete Element Simulation
io.github.yusong652Published by GitHub account yusong652v0.2.5Updated Oct 28, 2026
Give AI agents full access to ITASCA PFC - documentation, simulation, and plot capture.
Overview
Connects AI agents to ITASCA geomechanics simulation software (PFC, FLAC, 3DEC, MPoint, MassFlow) to browse docs, run simulations and execute code.
- What you can do
- Browse and search engine documentation: commands, Python API and reference docs for each engine and version
- Run code in a live REPL, including while a simulation is running
- Submit long-running simulation tasks, monitor progress, interrupt them and review task history
- See GUI activity such as executed cells, prompt commands and opened plots or data files
- When to use it
- Useful when you already work with ITASCA geomechanics engines and want an assistant to look up commands, draft and run simulation scripts, or check progress on a running model without stopping it.
- Requirements
- A local ITASCA engine installed (PFC, FLAC, 3DEC, MPoint or MassFlow; 9.0+ recommended, some older versions supported), uv for uvx, and an MCP-capable client. The bridge addon must be started inside the engine's IPython console, and the bridge checks PyPI for updates and self-upgrades on start.
Installation
In SourceWeft
- Open PFC - ITASCA Discrete Element Simulation in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
itasca-mcp
[CI] [PyPI] [Downloads] [GitHub stars] [License: MIT] [Python 3.10+]
itasca>model new ;now, with LLM.
itasca-mcp connects AI agents to ITASCA's geomechanics simulation 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 (7)
2 documentation tools — browse by path and search by keywords across the selected engine's commands, Python API, FISH intrinsics, and reference docs. No bridge required.
5 execution tools — interactive REPL, task submission, progress monitoring, interruption, and history. Requires bridge.
Example Prompts
- "Run a biaxial compression test on a dense specimen and plot the stress–strain curve"
- "Build a slope model in FLAC3D and find the factor of safety"
- "Model a tunnel excavation in jointed rock with 3DEC and check block displacements around the opening"
- "Simulate a landslide runout with MPoint and report the final deposit profile"
- "The simulation is still running, check the current unbalanced force without stopping it"
- "Look up the
plotcommands in the docs, then plot the contact force chains of the current model" - "The command I just typed in the console doesn't seem right, take a look"
First-time Setup
Prerequisites
- An ITASCA engine installed — PFC, FLAC, 3DEC, MPoint, or MassFlow. 9.0+ recommended; PFC 6.0 / 7.0, FLAC 7.0, and 3DEC 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:
Manual Setup
1. Register the MCP server with your agent.
Most agents register it with a single command:
Or fill in the MCP config file manually:
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:
start() checks PyPI for a newer bridge release and self-upgrades before starting. The MCP client config persists.
Features
- Multi-engine, multi-version corpus - command, Python API, and reference docs for PFC, FLAC, 3DEC, MPoint, and MassFlow across engine versions (PFC: 6.0/7.0/9.0, FLAC: 7.0/9.0, 3DEC: 7.0/9.0), selected via the
softwareandversionparameters - Documentation agents can navigate - agents browse the engine command tree to discover capabilities and boundaries, reducing hallucinated commands, with plot item reference docs supplementing the official documentation
- Live REPL alongside running tasks - execute code while a simulation is running: check model state and intermediate results without stopping the task; also useful for quick iteration before writing a full script
- Task lifecycle management - submit long-running simulations, monitor progress, interrupt running tasks, and browse task history
- Sees what you do in the GUI - cells you run in the engine's IPython pane, commands you enter at its prompt, the plots and data files you open, close or switch to, the items you add to a plot, the data files you execute from the editor, and the edits you save to a data file (as a diff) all reach the agent on its next call, so you can work in the GUI and with the agent at the same time
- Works inside your project - the scripts and data files the agent runs appear in the Project pane's Data Files, and a file it changes while you have it open in the editor is reloaded right away
- Agent-started bridge - an AI agent can start the bridge itself through the engine's
console.exe - 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.
[itasca-mcp MCP server]Contributing
PRs and issues are welcome! See CONTRIBUTING.md for where changes land and how the documentation corpus is structured, and the Developer Guide for the source install.
License
MIT - see LICENSE.
Source: README.md at commit 9f3b633
Tools
0Version history
1- v0.2.5LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts