vCFD
This server provides voice-driven control of OpenFOAM CFD simulations via MCP tools, enabling natural language or programmatic management of cases, meshing, solving, and analysis. It is designed for voice agents like Grok Voice.
Case Management
list_templates– Browse available case templates (e.g.,hagen_poiseuille).list_cases– List all cases with mesh and time status.create_case– Create a new case from a template.describe_case– Get case details: template, mesh, parameters, latest time, solver.delete_case– Permanently remove a case (requires confirmation).clean_case– Remove time directories and post-processing output, keep core files (requires confirmation).
Geometry & Mesh
set_pipe_parameters– Configure Hagen–Poiseuille pipe geometry (radius, length), fluid properties (viscosity, density), inlet velocity, and mesh resolution.generate_mesh– RunblockMeshsynchronously or as a background job.check_mesh– RuncheckMeshand get a mesh quality summary.
Solver Control
start_solver– Launch an OpenFOAM solver (e.g.,simpleFoam) as a background job, returning ajob_idimmediately.get_job_status– Check status of a job by ID, all jobs for a case, or all active jobs.get_logs– Retrieve tail of solver/mesh job logs, filtered for residuals.stop_job– Terminate a job, optionally with force (SIGKILL).
Results & Analysis
summarize_results– Generate a spoken-friendly summary of latest simulation results (times, parameters, residuals).compare_to_analytical– Compare numerical pipe flow results to the Hagen–Poiseuille analytical solution.
Export & Visualization
export_for_paraview– Convert case output viafoamToVTKand optionally package as a zip for visualization in ParaView.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@vCFDCreate a Hagen-Poiseuille pipe case and run the simulation."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
vCFD
Voice-driven CFD: Grok Voice + MCP + OpenFOAM + ParaView.
Speak natural language commands; a Grok voice agent calls vCFD MCP tools that set up and run OpenFOAM cases, then summarize results and export data for ParaView on your Mac.
JARVIS for CFD (pragmatic edition): full-duplex speech → tool calls → async solvers → spoken engineering summaries. Not movie magic—solid async job handling and careful tool design.
Architecture
Human (speech)
↕ Speech-to-Speech
Grok Voice / Voice Agent Builder
↓ Remote MCP (HTTP/SSE + auth)
vCFD MCP Server (Python / FastMCP)
↓ subprocess or Docker
OpenFOAM cases & solvers
↓ foamToVTK / case zip
ParaView (Mac)vCFD does not modify OpenFOAM. It launches OpenFOAM executables and edits case dictionaries. OpenFOAM remains a separate GPLv3 runtime (see NOTICE).
Related MCP server: ANSYS MCP Server
Quick start (Mac Silicon)
Requirements
Python 3.12+ and uv
Optional: Docker (for real OpenFOAM; mock mode works offline)
Optional: ParaView (visualization)
Grok Build for agentic development / local MCP
Install
git clone https://github.com/gpu7/vCFD.git
cd vCFD
uv syncRun tests (mock OpenFOAM)
uv run pytest -qRun MCP server (stdio)
export VCFD_OPENFOAM_MODE=mock # or docker | native
./scripts/dev_stdio.shAttach to Grok Build
grok mcp add vcfd -- uv run --directory /path/to/vCFD vcfd-mcpOr configure in ~/.grok/config.toml:
[mcp_servers.vcfd]
command = "uv"
args = ["run", "--directory", "/path/to/vCFD", "vcfd-mcp"]
env = { VCFD_OPENFOAM_MODE = "mock" }
enabled = trueFirst case: Hagen–Poiseuille pipe
Through MCP tools (or voice):
create_case(name="pipe1", template="hagen_poiseuille")set_pipe_parameters(case_name="pipe1", radius=0.05, bulk_velocity=0.1)generate_mesh(case_name="pipe1")→check_mesh(...)start_solver(case_name="pipe1")→get_job_status(job_id=...)summarize_results/compare_to_analyticalexport_for_paraview→ open zip/VTK in ParaView
OpenFOAM modes
Mode | Env | Use when |
|
| Unit tests, no OF install |
|
| Mac or EC2 with Docker |
|
| Ubuntu with OF packages |
See .env.example for all settings.
Voice agent (Grok Voice Agent Builder)
Deploy public MCP (EC2:
./deploy/aws/launch-ec2.sh).Follow
prompts/voice_agent_builder.md— console steps + MCP fields.System prompt:
prompts/voice_agent_system.md.Code / paste helpers:
voice/session.example.json,scripts/voice_session_snippet.py --from-latest.
./deploy/aws/launch-ec2.sh
uv run python scripts/voice_session_snippet.py --from-latest
# Paste URL + Bearer token into Voice Agent Builder remote MCPAWS EC2
Automated launch scripts (AWS CLI on your Mac):
./deploy/aws/launch-ec2.sh --dry-run # plan only
./deploy/aws/launch-ec2.sh # launch Ubuntu + Docker + Caddy + MCP
./deploy/aws/status.sh
./deploy/aws/teardown.shDetails: deploy/aws/README.md.
Project layout
src/vcfd/ # MCP server, OpenFOAM runner, analytics
cases/templates/ # OpenFOAM case templates (not OF source)
tests/ # pytest
deploy/ # Docker, systemd, AWS notes
prompts/ # Voice agent system prompt
scripts/ # dev helpersLicense
vCFD code: MIT
OpenFOAM: GPLv3 (external dependency — not distributed as part of this repo’s source)
You may charge for applications or services built with vCFD as an external controller of OpenFOAM. Do not link or redistribute modified OpenFOAM without complying with GPLv3.
Status
Mock OpenFOAM pipeline: tested (
uv run pytest)Real OpenFOAM via Docker (
opencfd/openfoam-default:2506, arm64-capable): mesh +simpleFoam+ ParaView export verified on Mac SiliconGrok Build project MCP:
.grok/config.toml(grok mcp list)Next: Voice Agent Builder / remote HTTP MCP on EC2, richer field sampling, more templates
Docker end-to-end
# Requires Docker Desktop running and image pull once:
docker pull opencfd/openfoam-default:2506
./scripts/e2e_docker.shResults land under cases/workspace/ (gitignored). Open the .foam or VTK/ export in ParaView.
Grok Build MCP
Project config is already set (docker mode):
grok mcp list
# tools available after restart / new session in this directoryMaintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBqualityBmaintenanceMCP Server for COMSOL Multiphysics simulation automation via AI agents.78MIT
- Alicense-qualityCmaintenanceEnables natural language-driven ANSYS simulations (Fluent, Mechanical, Geometry) with automatic TUI script generation for reproducibility.5MIT
- Alicense-qualityBmaintenanceEnables natural language interaction with ANSYS Mechanical simulation software via gRPC, allowing users to manage geometry, mesh, boundary conditions, solve analyses, and generate reports through MCP-compatible AI clients.10Apache 2.0
- Alicense-qualityAmaintenanceAutomates OpenFOAM CFD simulations via MCP, enabling AI agents to mesh, run, and post-process cases from natural language prompts without any API keys.MIT
Related MCP Connectors
GibsonAI MCP server: manage your databases with natural language
MCP Hub: AI service discovery, per-user OAuth, and multi-service workflow orchestration
MCP server for AI dialogue using various LLM models via AceDataCloud
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/gpu7/vCFD'
If you have feedback or need assistance with the MCP directory API, please join our Discord server