pfc-mcp-bridge
⚠️ DEPRECATED. This package has been superseded by
itasca-mcp-bridge, a product-neutral bridge that supports PFC and FLAC3D from one codebase. New fixes — including the multi-lineit.command()deadlock fix — ship there, not here. Installitasca-mcp-bridgeand download the newaddon.py.
Runtime bridge that runs inside a PFC process and enables execution tools for pfc-mcp.
Quick Start
One-Step Bootstrap
Download addon.py, then inside PFC either:
- Copy the file contents into the IPython console and run them
- Or download the file and execute it in PFC GUI
What it does:
- If
pfc-mcp-bridgeis not installed yet, it installs the latest version and starts it - If it is already installed, it shows the current version and asks whether you want to upgrade before startup
- It then starts the bridge in the current PFC Python environment
The bridge auto-detects the runtime: Qt timer in GUI, blocking loop in console.
The bootstrap script also installs a matching websockets version automatically: 9.1 for PFC 6/7 and 16.0 for PFC 9.
Expected output:
============================================================
PFC Bridge Server
============================================================
URL: ws://localhost:9001
Log: /your-working-dir/.pfc-mcp-bridge/bridge.log
Callbacks: Interrupt, Diagnostic (registered)
============================================================
Requirements
- Python >= 3.6 (PFC 6/7 use Python 3.6; PFC 9 uses Python 3.10)
- ITASCA PFC 6.0, 7.0, or 9.0
pfc-mcp-bridgeinstalls a matchingwebsocketsdependency automatically:websockets==9.1on Python 3.6,websockets==16.0on Python 3.10
Troubleshooting
| Symptom | Fix |
|---|---|
| Server won't start | Download the bootstrap script again and rerun it in PFC, either by pasting it into the IPython console or by executing the downloaded file in PFC GUI |
websockets version mismatch in PFC 9 |
In the PFC 9 IPython console, run from pip._internal.cli.main import main as pip_main; pip_main(["install", "--user", "websockets==16.0"]) |
| Port in use | Use pfc_mcp_bridge.start(port=9002) in PFC Python, then set MCP server env PFC_MCP_BRIDGE_URL=ws://localhost:9002 |
| Connection failed | Check bridge is running, port is available, see .pfc-mcp-bridge/bridge.log |
| No task execution / cannot connect from MCP | If execution tools return ok=false, error.code=bridge_unavailable, and error.details.reason=cannot connect to bridge service, ensure bridge is running in PFC (pfc_mcp_bridge.start()) and PFC_MCP_BRIDGE_URL matches bridge URL |
Development
For the full local-source workflow, see Developer Guide: Install and Run from Source.
To run the bridge from a local source checkout without installing from PyPI, use %run in the PFC IPython console:
%run C:/path/to/pfc-mcp/pfc-mcp-bridge/start_bridge.py
Note: Use forward slashes in the path. Do not wrap it in quotes.
This is equivalent to the PyPI workflow but loads the source directly, so code changes take effect immediately on restart.
For full MCP client setup, see pfc-mcp.
License: MIT (LICENSE).
Metadata
Release files for pfc-mcp-bridge 0.3.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pfc_mcp_bridge-0.3.3.tar.gz | 54.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pfc_mcp_bridge-0.3.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 108.9 kB
Release files / pfc_mcp_bridge-0.3.3.tar.gz
| Download URL | pfc_mcp_bridge-0.3.3.tar.gz |
|---|---|
| Size | 54.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
523506df69a556325a59a75077111d61f89106c394ade4860cb370d7e70c9419
|
|
BLAKE2b-256 checksum How to use checksums |
53bd27817cf776cd91c8e45cc29a90b34252f68605d5877272e652a79100dae4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 21, 2026.
Transparency logRelease files / pfc_mcp_bridge-0.3.3-py3-none-any.whl
| Download URL | pfc_mcp_bridge-0.3.3-py3-none-any.whl |
|---|---|
| Size | 54.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e62843be02ed2361f437e8d37d3fb762f2e7e19be5408c1bc7dba35ee5b74286
|
|
BLAKE2b-256 checksum How to use checksums |
ad72bd70ad1044f3659ba69d2b5b4760b1f373e679e5c1ab1af3be6ff457202f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 21, 2026.
Transparency log