FEP Agent Hub
Enables evidence-first CAE automation on Windows through local MCP servers for FreeCAD, Elmer FEM, and ParaView, supporting validated workflows from CAD to simulation and post-processing with a shared safety and evidence runtime.
README
FEP Agent Hub
FEP Agent Hub is an evidence-first, Windows-oriented CAE automation stack for:
- FreeCAD: parametric CAD and STEP handoff.
- Elmer FEM: Gmsh meshing, ElmerGrid conversion, structured SIF generation, solving, and result validation.
- ParaView: persistent headless post-processing, images, CSV, and PVSM state export.
Each application is exposed as an independent local STDIO MCP server for Codex. The shared open-cae-core package provides workspace isolation, process whitelisting, structured responses, job state, logs, hashes, and an auditable evidence chain.
Validation status
Release validation was performed against the commands registered in Codex and real native CAE executables:
- 49/49 exposed tools invoked at least once.
- 52/52 contract calls passed.
- 46 unique tool capabilities returned
SUCCEEDEDin the full matrix. - 3 context-appropriate calls returned their required
BLOCKEDcontract: FreeCAD headless screenshots, electromagnetic excitation under the heat profile, and animation export from a one-step steady dataset. Animation export succeeds for verified multi-step datasets. - The 10 mm cube steady heat-conduction benchmark passed the 300 K / 400 K / 350 K physics gates after the electromagnetic extension.
- The true transient heat benchmark passed 20/20 BDF1 time steps and matched the 20 s Fourier-series midpoint temperature within 0.318 K.
- The 2D harmonic open-circuit transformer-effect workflow passed field, flux, voltage, linearity, mesh-sensitivity, and ParaView gates.
- The 2D plane-stress simply-supported beam passed 10/10 quasi-static load levels, analytical deflection/stress/strain gates, and 10-frame ParaView export.
- The 2D steady laminar channel passed Poiseuille velocity-profile, flow-rate, no-slip, and pressure-drop gates at Re=100.
- The 2D transient Lenz-law eddy-current workflow passed 40/80/40 native time steps, four opposition-sign gates, time/mesh sensitivity, and 40-frame ParaView export.
- 17/17 routinely executed Python tests passed; the native pytest wrapper remains opt-in because it starts desktop CAE executables.
See the transformer validation report, beam validation report, transient heat and flow report, Lenz-law transient eddy-current report, five-case research video validation, four-case research video and error review, release validation, and the original Chinese heat case report.
Repository layout
FEP_Agent_Hub/
├── mcp/
│ ├── freecad/ # 15 tools
│ ├── elmer/ # 17 tools
│ └── paraview/ # 17 tools
├── packages/open-cae-core/ # shared safety/evidence runtime
├── configs/ # public templates + ignored local config
├── docs/ # architecture and validation reports
├── examples/ # curated thermal, electromagnetic, structural, and flow evidence
├── prompts/ # reusable FEP workflow prompts
├── skills/fep-agent-hub/ # reusable Codex Skill and benchmark references
├── assets/ # branding and media assets
├── checklists/ # evidence and release gates
├── scripts/ # install, doctor, registration, smoke tests
├── tests/
└── workspace/ # generated locally; gitignored
Codex Skill
The repository includes skills/fep-agent-hub, a reusable Codex Skill that routes the six verified profiles, enforces the FreeCAD → Elmer FEM → ParaView sequence, and keeps workflow pass rates separate from numerical accuracy claims.
Invoke it with a request such as: Use $fep-agent-hub to run and validate a transient heat benchmark.
Quick start
- Copy
configs/open-cae.example.tomltoconfigs/open-cae.local.tomland set local executable paths. - Install the four editable packages into the repository virtual environment.
- Run the unit and MCP protocol checks.
On Windows, use a short ASCII-only workspace path because some native CAE command-line runtimes do not reliably initialize from Unicode working directories. The source repository itself may remain in a Unicode path.
cd <FEP_Agent_Hub>
.\scripts\install.ps1
$env:OPEN_CAE_CONFIG = "$PWD\configs\open-cae.local.toml"
.\.venv\Scripts\python.exe .\scripts\doctor.py
.\.venv\Scripts\python.exe .\scripts\protocol_smoke.py
.\.venv\Scripts\python.exe -m pytest -q
Run the native heat benchmark:
.\scripts\run-smoke.ps1
Register the three servers with Codex:
.\scripts\register-codex.ps1
codex mcp list
Run the workflow through the registered MCP protocol:
.\.venv\Scripts\python.exe .\scripts\mcp_heat_smoke.py
.\.venv\Scripts\python.exe .\scripts\mcp_transformer_smoke.py
.\.venv\Scripts\python.exe .\scripts\mcp_beam_smoke.py
.\.venv\Scripts\python.exe .\scripts\mcp_transient_heat_smoke.py
.\.venv\Scripts\python.exe .\scripts\mcp_channel_flow_smoke.py
.\.venv\Scripts\python.exe .\scripts\mcp_full_validation.py
Safety and claim policy
- No arbitrary shell, Python,
eval, or executable tool is exposed. - All project paths must remain inside the configured workspace.
- Native executables are restricted by name and launched with argument arrays and
shell=False. - Success requires process, log, artifact, data-field, finite-value, and physics gates where applicable.
- A declared unsupported capability must return
BLOCKED; it must never fabricate output. - Generated models, solver outputs, local paths, and private evidence stay gitignored.
License
MIT. The repository does not redistribute FreeCAD, Gmsh, Elmer, ParaView, or their third-party components.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.