Skip to main content

MCP server for ITASCA software (PFC, FLAC3D, 3DEC) simulation workflows

Project description

itasca-mcp

itasca-mcp

English | 简体中文

PyPI Downloads GitHub stars License: MIT Python 3.10+

pfc3d>model new ;now, with LLM.

itasca-mcp connects AI agents to ITASCA PFC — Itasca's discrete element method (DEM) code — through the Model Context Protocol. Browse documentation, run simulations, and execute code, all through natural conversation.

pfc3d>model solve ;LLM solves.

itasca-mcp demo

Tools (10)

5 documentation tools — browse and search PFC 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

  • ITASCA PFC 6.0, 7.0, or 9.0 installed
  • uv installed (for uvx)

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 in your client config:

{
  "mcpServers": {
    "itasca-mcp": {
      "command": "uvx",
      "args": ["itasca-mcp"]
    }
  }
}

2. Start the bridge from inside PFC:

Download addon.py, then use either of these two flows inside PFC:

  • Copy the file contents into the PFC IPython console and run them
  • Or download the file and execute it in PFC GUI
addon.py demo

Verify

Restart your AI agent (Claude Code, Codex CLI, Gemini CLI, etc.) and ask it to call itasca_execute_code to verify the connection.

Daily Startup

Once first-time setup is done, each new PFC session only needs the bridge re-started — run this in PFC'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-version PFC support - command docs for PFC 6.0, 7.0, and 9.0 via the version parameter
  • Hierarchical documentation browsing - agents navigate the PFC 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.

itasca-mcp MCP server

Contributing

PRs and issues are welcome! See the Developer Guide to get started.

License

MIT - see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

itasca_mcp-0.6.0.tar.gz (1.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

itasca_mcp-0.6.0-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file itasca_mcp-0.6.0.tar.gz.

File metadata

  • Download URL: itasca_mcp-0.6.0.tar.gz
  • Upload date:
  • Size: 1.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for itasca_mcp-0.6.0.tar.gz
Algorithm Hash digest
SHA256 0be9e66c3520417b0ba0d3ba1d4f397658f8c23073076bb05101057c587a4a43
MD5 33082e67f3e13651563948bbe935f4d7
BLAKE2b-256 38d3025b5e0c1276d599c6a95a4c382ba234eafebb9b4bab31616a2207255cff

See more details on using hashes here.

Provenance

The following attestation bundles were made for itasca_mcp-0.6.0.tar.gz:

Publisher: publish.yml on yusong652/itasca-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file itasca_mcp-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: itasca_mcp-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for itasca_mcp-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b6381d4854c5f07f5d7bb0500fe881ae267fabf3d4b6c6a5df1abe591de4ab88
MD5 9ad790a57d4b933bc2927dfde881b746
BLAKE2b-256 f6c364c548e6641f45f5a2d66a5ea7654bbf5c389722da228c3224fd3e354167

See more details on using hashes here.

Provenance

The following attestation bundles were made for itasca_mcp-0.6.0-py3-none-any.whl:

Publisher: publish.yml on yusong652/itasca-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page