Skip to content

How it is built

You ──▶ AI model (an app, or your API key) ──▶ MCP ──▶ openPASO (src/server.py)
                                                            │
   ┌──────────┬──────────┬────────┬─────────┬────────┬──────┴───┬────────┬────────┐
FEniCSx    deal.II       4C    NGSolve   skfem    Kratos     DUNE    FEBio   SPARTA
(Python)    (C++)     (YAML)  (Python) (Python)  (JSON)   (Python)  (XML)  (native)
Part Where What it does
Server src/server.py the MCP server the AI app or run_agent.py talks to
Backends src/backends/<solver>/ one package per solver: the physics it supports, input writers, known traps
Registry src/core/registry.py loads the backends as plugins and finds which are installed
Tools src/tools/ the tools the model calls
Knowledge data/, src/backends/*/ settings and traps read from the version you actually installed
Coupling src/core/coupling_driver.py runs two participants until they agree (coupling)
preCICE bridge src/core/precice_config.py the couple_precice tool
Command line agent run_agent.py, langgraph_eval/ Option B
Install check check_install.py the key-free check