Skip to main content
Glama
0xFFD

openfoam-mcp

by 0xFFD

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
foam_infoA

OpenFOAM installation, server configuration and resources (version, flavour, paths, cores, ParaView).

foam_referenceA

Look up what OpenFOAM supports: valid boundary-condition types, models, function objects, solvers, app options.

list_tutorialsA

Find OpenFOAM tutorial cases to start from (and working examples of any keyword or feature).

create_caseA

Create a case by cloning a tutorial or copying an existing case (results are left behind unless include_results).

list_casesA

List cases in the workspace with solver, mesh/result state and running jobs.

case_summaryA

One-call overview of a case: solver, run control, mesh & patches, initial/boundary conditions, physics, numerics, results.

clean_caseB

Remove results: time directories after the first, postProcessing, logs, processor dirs and optionally the mesh.

delete_caseA

Permanently delete a case directory from the workspace.

list_filesA

List files in a case (sizes in bytes; long runs of time directories are collapsed).

read_fileB

Read a text file from a case (dictionaries, logs, scripts). Large value lists are elided by default.

write_fileA

Create or overwrite a file in a case (new dictionaries, STL-free text inputs, scripts). Prefer set_dict for edits.

import_fileB

Copy geometry (STL/OBJ), meshes or other files into a case, e.g. the surface for snappyHexMesh.

get_dictB

Read a dictionary or one entry through OpenFOAM's foamDictionary (authoritative parsing).

set_dictA

Edit dictionary entries safely via foamDictionary (set/add/remove), then read back the new values.

runA

Run an OpenFOAM application or case script as a background job; waits briefly and reports the outcome or progress.

job_statusA

Status of a job (progress, residuals, errors, log tail) or a list of running and recent jobs.

stop_jobA

Stop a running job, gracefully (results written) or forcibly.

read_logB

Read the tail of a log, or grep it (e.g. 'FOAM Warning|bounding|Courant').

solver_progressB

Convergence report from a solver log: state (converged/diverging/failed...), residuals and trends, Courant, continuity, ETA.

check_meshB

Run checkMesh and return structured mesh statistics, failed checks and practical advice.

post_processB

Run a post-processing function object on saved results (writes fields and/or postProcessing/ data).

list_postprocessingB

List function-object output files under postProcessing/ with their column names.

read_postprocessingA

Read a postProcessing table (forces, coefficients, probes, sampled lines...) with statistics and optional plot.

field_statsB

Min/max/mean of a field (internal and per patch) at a time, read directly from ASCII field files.

renderB

Render a picture of the flow or mesh with ParaView (headless) and return it as an image plus metadata.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 25 tools

Disambiguation4/5

Most tools target clearly distinct resources or actions (case creation, file I/O, dictionary editing, job control, post-processing). However, some overlap exists: read_file also reads dictionaries alongside get_dict, and job_status, solver_progress, and read_log all partially cover log/monitoring use cases. Descriptions help differentiate, but these boundaries are not perfectly crisp.

Naming Consistency4/5

All names use snake_case, and the dominant pattern is verb_noun (e.g., create_case, list_files, read_log). Deviations are mostly conventional noun phrases for info/status tools (foam_info, job_status) and two bare verbs (run, render), which are readable but not perfectly uniform.

Tool Count3/5

At 25 tools, the surface feels heavy for the domain, sitting at the upper end of the rubric's borderline range. While most tools are individually justified for a complex CFD workflow, some consolidation (e.g., monitoring/log tools, file/dict operations) could reduce the count without losing capability.

Completeness4/5

The surface covers the main OpenFOAM lifecycle: case setup, file/dictionary editing, running solvers, monitoring, mesh checking, post-processing, and rendering. Minor gaps exist, such as file-level delete/move/rename operations and dedicated mesh-generation tools (though run can invoke them), but these are workable for an agent.

Maintenance

ActivityMaintained
ResponsivenessNo issues