Skip to main content
Glama
kimlnw

openfoam-mcp

by kimlnw

OpenFOAM MCP —— 适用任何 MCP 客户端的 CFD 副驾驶

openfoam-mcp 是一个 Model Context Protocol 服务器,它能将 AI 助手(Claude Desktop 以及其他任意 MCP 客户端)变成 OpenFOAM 搭建与调试的副驾驶。它可以搭建可运行的算例、安全地编辑字典文件、计算近壁网格尺寸、算出入口湍流参数,还可以读取求解器日志,告诉你某次仿真到底是收敛了还是崩了这个——全程无需离开聊天界面。

大多数工具都是纯 Python 实现,无需安装 OpenFOAM,因此可以在任何环境中运行。少数需要调用 OpenFOAM 工具(例如 blockMeshcheckMesh)的插件,调用时会先检测环境,若环境中未安装 OpenFOAM,也能友好地降级处理。

为什么有用

搭建 CFD 算例本就涉及繁琐的簿记工作:选择合适的 y/c,保持网格与每个 0/ 场的边界类型匹配,为所选湍流模型配置一致的湍流场,维持稳定的 Courant 数,以及在大量的残差结果中判断计算是否收敛。这个服务器通过自然语言就能替你完成这些枯燥的内容。

工具

工具

说明

list_solvers

列出可以进行脚手架搭建的求解器模板(simpleFoam、pimpleFoam、icoFoam)。

flow_regime

计算雷诺数,给出层流/湍流状态判定以及湍流模型推荐。

first_cell_height

针对目标 y/c 返回第一层网格高度(平边界层相关性)。

footer_plus_from_height

逆向计算:由网格高度推算 y/c,并给出流动状态警告。

inlet_turbulence

根据湍流强度和长度尺度求出入口 kepsilonomeganut 之值。

time_step_from_cfl

根据目标 Courant 数求出瞬态时间步长。

scaffold_case

为指定求解器生成一个可运行的算例目录树(system/constant/0/)。

read_dict

读取一个字典文件或其中单个条目(通过 foamDictionary 实现)。

set_dict_entry

设置字典关键字(嵌套的方式通过 hoamDictionary 完成;否则使用文本回退进行修改)。

set_boundary_condition

0/ 场中设置或插入某个 patch 的 boundaryField 条目。

check_case

校验算例:检查相关文件是否存在、湍流场是否一致、patch 与网格是否匹配。

analyze_residuals

解析求解日志 → 输出分场残差下降量及收敛性判定。

run_openfoam_command

在算例内运行一个白名单Allow的 OpenFOAM 命令(如果已安装)。

安装与运行

该服务器以 PyPI 包的形式发行,并提供命令行入口,因此通常可用 [uvx](https://docs.astral.sh/uv/)这样的免安装方式运行:

uvx openfoam-mcp

也可以只把它安装到一个环境中:

pip install openfoam-mcp
openfoam-mcp

Claude Desktop 配置

将如下内容加入 claude_desktop_config.json点击三处任一种系统位置(macOS:~/Library/Application Support/ Claude/,Windows:%APPDATA%):

{
  "mcpServers": {
    "openfoam": {
      "command": "uvx",
      "args": ["openfoam-mcp"]
    }
  }
}

重启 Claude Desktop 后,工具菜单中就能看到这些 OpenFOAM 工具了。

提示词示例

  • “一根长 0.5 m 的箔以 30 m/s 的空气… 对应的雷诺数该是多少?若我想要 无常=1,首层网格高度应该取多大?”

  • “在 ./duct 下搭建一个 12 m/s 的稳态 simpleFoam 算例,并检查一下。”

  • “把 endTime 设为 3000,存入 ./duct/system/controlDict。”

  • “读取 ./duct/log.simpleFoam,并说明它是否收敛。”

求解器模板

模板

物理模型

典型应用场景

simpleFoam

稳态不可压缩 RANS(k-ary)

管道流、外绕流、一般稳态流动

pimpleFoam

瞬态不可压缩 RANS(k-ary)

涡螺母、非定常流动

icoFoam

瞬态不可压缩层流

低雷诺数教学算例(卡门楔道、方腔流动)

这些模板遵循 OpenFOAM foundation v9–v12 / v2306+ 的教程风格(使用 transportPropertiesmomentumTransport)。生成的盒体网格带有 inletoutletwallsfrontAndBack 四个 patch。

开发

pip install -e ".[dev]"
pytest

许可证

MIT © 2026 年 出处

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • AI-callable calculators and engineering models with real formulas. No hallucinated math.

  • Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.

  • Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…

View all MCP Connectors

Latest Blog Posts

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/kimlnw/OpenFoamMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server