内容
# Abaqus MCP
** | [中文](README.zh-CN.md)
本仓库提供了一个MCP服务器,通过本地套接字桥接控制实时Abaqus/CAE会话。
本指南涵盖了基本的Windows安装流程。
## 前提条件
- Windows。
- 已许可的Abaqus/CAE安装。Abaqus 2024或更新版本是必需的。
- Python 3.10或更新版本。
- 支持MCP的客户端,例如Codex。
## 兼容性政策
本项目仅支持**Abaqus 2024及更新版本**。Abaqus 2024是Abaqus将其内核脚本从Python 2.7迁移到Python 3.10.5的版本,所有代码目标都是Python 3.10基线或更新版本。
Abaqus 2023及更早版本使用Python 2.7内核,**不受支持**:插件依赖于Python 3的语法,无法在Python 2.7下加载。
在以下命令中,将:
```text
<repo>
```
替换为本仓库的绝对路径。
示例路径格式:
```text
C:\path\to\Abaqus_MCP
```
## 1. 安装Python依赖项
在仓库文件夹中打开PowerShell:
```powershell
cd <repo>
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -U pip
.\.venv\Scripts\python.exe -m pip install -e .
```
这会创建一个项目本地的虚拟环境,并安装MCP服务器依赖项,包括[`abqpy`](https://github.com/haiiliin/abqpy) `2024.*`。`abqpy`是完整的Abaqus 2024脚本API,以可导入、类型化、带有文档字符串的存根发布。服务器导入它(使用`ABQPY_SKIP_ABAQUS=1`,因此它从不尝试启动CAE),纯粹是为了内省API签名和参数/返回文档 - 请参见`describe_abaqus_api`工具。
## 2. 设置环境变量
设置Windows用户环境变量:
```powershell
[Environment]::SetEnvironmentVariable("ABAQUS_MCP_HOME", "<repo>\kernel", "User")
[Environment]::SetEnvironmentVariable("ABAQUS_MCP_HOST", "127.0.0.1", "User")
[Environment]::SetEnvironmentVariable("ABAQUS_MCP_PORT", "48152", "User")
```
`ABAQUS_MCP_HOME`必须指向`kernel`文件夹,其中包含`abaqus_mcp_plugin.py`和`templates/`。
在设置这些变量后,重启Abaqus/CAE。
## 3. 安装Abaqus插件加载器
将Abaqus菜单加载器复制到Abaqus用户插件目录:
```powershell
New-Item -ItemType Directory -Force "$env:USERPROFILE\abaqus_plugins" | Out-Null
Copy-Item -Recurse -Force `
"<repo>\abaqus_plugins\mcp_control" `
"$env:USERPROFILE\abaqus_plugins\mcp_control"
```
重启Abaqus/CAE。应该出现以下菜单:
```text
Plug-ins > Abaqus MCP
```
## 4. 启动套接字桥接
在Abaqus/CAE中,点击:
```text
Plug-ins > Abaqus MCP > Start Socket Bridge
```
验证桥接是否正在监听:
```powershell
Test-NetConnection -ComputerName 127.0.0.1 -Port 48152
```
预期结果:
```text
TcpTestSucceeded : True
```
## 5. 配置Codex
将MCP服务器添加到您的Codex `config.toml`中:
```toml
[mcp_servers.abaqus-mcp-server]
command = "<repo>\\.venv\\Scripts\\python.exe"
args = ["<repo>\\server\\mcp_server.py"]
cwd = "<repo>"
[mcp_servers.abaqus-mcp-server.env]
ABAQUS_MCP_HOST = "127.0.0.1"
ABAQUS_MCP_PORT = "48152"
ABAQUS_MCP_TIMEOUT = "60"
ABAQUS_MCP_HOME = "<repo>\\kernel"
```
在编辑配置后,重启Codex。
## 6. 验证连接
打开Abaqus/CAE并启动套接字桥接后,从客户端调用以下任一MCP工具:
```text
ping
check_abaqus_connection
```
成功的响应意味着MCP客户端可以与实时的Abaqus/CAE会话通信。
## 故障排除
如果MCP客户端报告无法连接到`127.0.0.1:48152`,请从以下位置再次启动桥接:
```text
Plug-ins > Abaqus MCP > Start Socket Bridge
```
如果Abaqus MCP菜单未出现,请检查:
- `mcp_control`是否已复制到`%USERPROFILE%\abaqus_plugins`。
- `ABAQUS_MCP_HOME`是否指向仓库内的`kernel`文件夹。
- 在设置环境变量后,Abaqus/CAE是否已重启。