OASiS

finance MCP Server

OASiS — an open-source multi-physics and multi-code framework for verified computer simulations. Model Context Protocol (MCP) server connecting AI coding agents to 8 finite element solvers (FEniCSx, deal.II, 4C, NGSolve, scikit-fem, Kratos, DUNE-fem, FEBio) with cross-backend collation knowledge.

Verified
financefinance
3 views3 stars0 forksMIT

Why This Matters

Discovered via github-topic:mcp-server and last synced 3mo ago.

Verified
Source
github-topic:mcp-server
Stars
3
Last synced
3mo ago
Install
Check source

Install

Install instructions not detected yet

Check the source repository for the latest setup steps.

View source instructions
48
Tools
0
Resources
0
Prompts
Standard I/O
Transport

Available Tools (48)

DEALII_ROOT

deal.II source

FENICS_ROOT

FEniCSx source

NGSOLVE_ROOT

NGSolve source

FOURC_BINARY

4C binary path

Metric

Value

KRATOS_ROOT

Kratos source

knowledge

Physics knowledge, pitfalls, materials, coupling docs, cross-backend collation

session_insights

Review session patterns, contribute knowledge back

Tests

**400+ passing**

DUNE_ROOT

DUNE-fem source

discover

List solvers, check availability, capabilities matrix

reload_catalog

Hot-reload backend catalogs without restarting the MCP server

7

`Simulate a 3D cantilever beam subjected to a sudden tip load using Kratos Multiphysics. Track the tip displacement over time and compare the oscillation frequency against the analytical first natural frequency.`

Variable

Purpose

SKFEM_ROOT

scikit-fem source

examples

Real test files and templates from solver test suites

Prompt

Solver Chosen

FEniCS

PASS

FOURC_ROOT

4C source tree

FEBIO_BINARY

FEBio binary

coupled_solve

Cross-solver domain decomposition (20 solver pair combinations)

1

`Solve the lid-driven cavity problem at Re=400 using FEniCS and visualize the vortex structure in ParaView.`

9

`Solve the Poisson equation with a known analytical solution on a 3D unit cube using NGSolve. Run an h-convergence study with 4 mesh refinement levels and verify optimal L2 convergence rate for P1 and P2 elements.`

22

`Solve the heat equation on a unit square with T=1 on the left, T=0 on the right, and zero-flux top/bottom. Pick the best solver and verify against the analytical solution.`

Tool

Purpose

transfer_field

Extract and transfer fields between solver outputs

NGSolve

PASS (all 6 modes match to <10⁻⁶ relative error)

PASS

### Advanced (7/7 pass)

23

`Simulate two elastic blocks being pressed together with contact. Use whichever solver is most appropriate.`

prepare_simulation

Knowledge + examples + template in ONE call

generate_mesh

Gmsh mesh generation (L-domain, plate with hole, channel)

scikit-fem

PASS

run_with_generator

Generate input + run compiled solvers (4C, deal.II, Kratos)

visualize

Field statistics, plots, automated validation

3

`Simulate a cantilever beam with Neo-Hookean hyperelastic material under large deformation using deal.II. Apply 30% compression.`

17

`Simulate crack propagation in a double-cantilever beam using 4C peridynamics and compare the energy release rate against LEFM predictions.`

24

`Set up a simple fluid-structure interaction problem in Kratos using the CoSimulation application: flow in a channel with a flexible wall segment. Monitor the wall deflection.`

developer

Source architecture, file browsing, extension points

5

`Simulate fluid-structure interaction of a flexible flag behind a cylinder in 4C.`

DUNE-fem

PASS

10

`Solve Stokes flow in a backward-facing step on FEniCS, NGSolve, and scikit-fem. Compare the reattachment length.`

18

`Set up a fluid-beam interaction problem in 4C: flow around a slender elastic beam. Monitor the beam tip displacement over time.`

File

AI Tool

12

`Solve heat conduction on an L-domain with FEniCS, transfer the temperature field to NGSolve, and solve thermoelasticity there. Show the thermal stress distribution.`

19

`Simulate gravity-driven packing of 500 spherical particles into a cylindrical container using Kratos DEM. Measure the final packing fraction and compare against the random close packing limit (~0.64).`

run_simulation

Execute Python-based solvers (FEniCS, NGSolve, scikit-fem, DUNE)

21

`Generate a 3D thick-walled cylinder mesh with Gmsh, then solve internal pressure loading with Neo-Hookean material in FEniCS. Compare the radial displacement against the analytical Lamé solution at small strain.`

16

`Run a poroelasticity consolidation problem in 4C (Terzaghi's problem) and verify against the analytical solution.`