Skip to main content
Glama
pyejy

Abaqus-Control-MCP

by pyejy

Abaqus-Control-MCP · Abaqus 2023 / Python 2.7 移植版

本地 MCP(Model Context Protocol)桥接器:让你在 Claude Code / Cursor 等 MCP 客户端里实时操控 Abaqus/CAE —— 发 Python 脚本、读 ODB 结果、看视口截图,全程无需手动点 GUI。

原参考项目(本仓库为它的 Abaqus-2023 兼容移植): Whfkl/Abaqus-Control-MCP(MIT)— 原版要求 Abaqus 2024+(内嵌 Python 3)。 本仓库把它完整移植到 Abaqus 2023(内嵌 CPython 2.7.15),保留原版智能错误诊断面板。

详细移植记录与实战踩坑见 README_2023.md


它解决什么问题

Abaqus/CAE 自带一个 Python 内核,但普通脚本只能在 Abaqus 里跑、看不到结果图;原版桥接器通过 MCP 把内核"露"给 LLM,让 Claude 能像操作本地 Python 一样操作你的 CAE 会话:

┌─────────────────────────┐  stdio    ┌──────────────────────────┐  TCP 127.0.0.1:48152  ┌────────────────────────────┐
│  Claude Code / Cursor   │ ─────────> │  MCP server (server.py)  │ <──────────────────── │  Abaqus/CAE 2023 内核        │
│                         │            │  = 系统 Python 3          │                       │  = 内嵌 Python 2.7.15        │
└─────────────────────────┘            └──────────────────────────┘                       └────────────────────────────┘
                                       这一侧 = 原版(未改)                                  这一侧 = 本移植的重点(Py2.7)

Related MCP server: Codex MCP Abaqus

与本仓库配套的工具(全部可用)

  • ping — 探活,返回内核 Python 版本 / 模型 / 视口清单

  • run_python — 在 Abaqus 内核里执行任意 Python,捕获 stdout/stderr + 返回值,出错时给智能诊断(含可能 key / 属性 / callable 签名建议)

  • set_workdir / monitor_job_status / inspect_odb / capture_viewport

  • 另配一批 Claude Code 技能(abaqus-control-check / abaqus-control-setup / abaqus-control-doctor


目录速览

abaqus_link/
├── abaqus_mcp_bridge/          # Python 源码包(单真源)
│   ├── server.py / cli.py ...  #   系统侧 Python3,未改动
│   ├── gui_plugin.py           #   GUI 插件主逻辑(Py2.7-safe)
│   ├── agent.py                #   无界面 socket 路线(Py2.7-safe)
│   └── diagnostics.py          #   错误诊断真源(双版本 AST 兼容)
├── build_plugin_pkg.py         # 源码 → 可部署插件子包
├── install_plugin.bat          # 构建 + 部署插件到 CAE 插件目录
├── install_server.bat          # 安装服务端(mcp + anyio)
├── verify_kernel.bat           # 用 Abaqus 内嵌 2.7 编译 / 冒烟验证
├── tests/smoke_diagnostics.py  # 2.7-safe 单测
├── pyproject.toml              # 服务端打包(mcp/anyio)
├── README.md                   # 本文件(交付总览)
└── README_2023.md              # 详细移植记录 + 实战踩坑

快速开始(三件套)

① 装服务端(系统 Python 3)

install_server.bat

② 构建并部署 CAE 插件(内核侧 Py2.7)

install_plugin.bat

改任何 gui_plugin.py / diagnostics.py重跑本命令并重启 CAE 才生效。

③ 接进 Claude Code

claude mcp add abaqus -- python -m abaqus_mcp_bridge.server

重启 Claude 后 /mcp 应看到 abaqus ✔ Connected;然后打开 Abaqus/CAE → Plug-ins → Abaqus-Control-MCP → Start MCP Bridge

换插件安装目录:set ABAQUS_MCP_PLUGIN_DIR=你的目录 & install_plugin.bat

验证是否真的通了

cd abaqus_link
python -m abaqus_mcp_bridge.cli check      # 期望 ok:true + python: 2.7.15

在 Claude 里试一条会故意报错的,看 2.7 上的智能诊断是否工作:

mdb.models['不存在']     # 期望 possible_keys 列出真实模型名

一个真实可跑的端到端例子

本仓库用悬臂梁(Cantilever)静力分析做过完整端到端回归:建模 → 网格(C3D8R) → 固支 + 自由端节点集中力 → 提交 → 收敛 → ODB 读位移。期间修掉了两个非本仓库根因的环境 bug:

  1. Abaqus 内核劫持 sys.stdout 为只收 unicode 的 io.StringIO → 任何含 print 的代码都报 TypeError: unicode argument expected, got 'str'(且连 print(u'中文') 都炸——Abaqus 把 print 的写路径也 byte 化了)。修法:容错流 + 启动探针(详见 §4/§5 of README_2023.md)。

  2. Load 的 region 指向部件级面集合而装配是 dependent 实例 → 报 region contains invalid geometry or mesh components for the load type。修法:改用装配级节点集合承载集中力。

这些都已在 Abaqus 2023 实机验证。若你要跑自己的作业,建议让 run_python 里所有 print 只含 ASCII;含中文的 print 在 2023 内核会有 ascii 编码限制(本仓库已给容错流加 repr 兜底,重启后即彻底无感)。


许可与归属

  • 代码:MIT License(见 LICENSE;上游版权声明保留,属本项目对 Whfkl/Abaqus-Control-MCP 的移植扩展)。

  • 请保留对上游的致谢与本文件的来源说明。

Maintenance

ActivityMaintained
ResponsivenessNo issues

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

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables to control FreeCAD from Claude Desktop through MCP, allowing CAD operations like creating and editing objects, taking screenshots, and executing Python code.
    11
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables to interact with Abaqus FEA software through an MCP bridge, supporting connection checks, script execution, model queries, job submission, and simulation automation.
    3
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    An MCP server that enables controlling a live Abaqus/CAE session through natural language, allowing model inspection, job submission, ODB analysis, and viewport capture.
    MIT