内容
# ANSYS HFSS MCP 服务器
一个 [模型上下文协议(MCP)](https://modelcontextprotocol.io) 服务器,允许 AI 助手通过自然语言命令与 **ANSYS HFSS** 交互,由 [PyAEDT](https://aedt.docs.pyansys.com/) 通过 gRPC 提供支持。
设计天线、分配边界、运行仿真和检索结果 — 所有这些都可以通过与 Claude 聊天来完成。
---
## 兼容客户端
| 客户端 | 支持 |
|---|---|
| Claude 桌面版 | ✅ |
| Cursor | ✅ |
| Windsurf | ✅ |
| VS Code (Copilot) | ✅ |
| 任何 MCP 兼容客户端 | ✅ |
---
## 功能
### 连接管理
| 工具 | 描述 |
|---|---|
| `connect_to_hfss` | 通过 gRPC 端口连接到正在运行的 AEDT/HFSS 会话 |
| `check_connection` | 检查当前连接状态 |
| `disconnect` | 在不关闭项目的情況下释放 HFSS 连接 |
### 几何
| 工具 | 描述 |
|---|---|
| `create_box` | 创建一个矩形盒子基本体 |
| `create_cylinder` | 创建一个圆柱体基本体 |
| `create_sphere` | 创建一个球体基本体 |
### 材料
| 工具 | 描述 |
|---|---|
| `list_materials` | 列出活动项目中的所有材料 |
| `assign_material` | 将材料分配给现有的几何对象 |
### 激励
| 工具 | 描述 |
|---|---|
| `add_wave_port` | 在面上添加波端口激励 |
| `add_lumped_port` | 在面上添加集总端口激励 |
### 求解设置
| 工具 | 描述 |
|---|---|
| `create_solution_setup` | 创建一个 HFSS 自适应求解设置 |
| `add_frequency_sweep` | 向求解设置添加频率扫描 |
### 求解与结果
| 工具 | 描述 |
|---|---|
| `solve` | 启动 HFSS 求解器 |
| `get_solve_status` | 检查所有设置的已求解/未求解状态 |
| `get_s_parameters` | 检索已求解扫描的 S 参数数据 |
| `get_far_field` | 检索远场辐射模式数据 |
### 天线设计工作流程
| 工具 | 描述 |
|---|---|
| `design_patch_antenna` | 任意频率的全馈同轴微带贴片天线(模态网络) |
| `design_dipole_antenna` | 任意频率的全馈中心半波偶极子天线(终端网络) |
| `create_438mhz_dipole` | 一键创建 438 MHz 半波偶极子天线 |
### 脚本
| 工具 | 描述 |
|---|---|
| `run_hfss_script` | 对活动 HFSS 会话执行任意 PyAEDT/Python 代码 |
| `get_script_result` | 轮询后台脚本作业的输出 |
---
## 要求
- ANSYS 电子桌面版(AEDT)2023 R1 或更高版本,包含 HFSS
- Python 3.10+
- PyAEDT (`ansys-aedt-core` 或 `pyaedt`)
---
## 安装
```bash
git clone https://github.com/NedaEmami123/hfss-mcp.git
cd hfss-mcp
python -m venv venv
venv\Scripts\activate # Windows
pip install ansys-aedt-core mcp
```
---
## 配置
找到客户端的配置文件并添加 `hfss-mcp` 服务器条目:
| 客户端 | 配置文件位置 |
|---|---|
| Claude 桌面版 | `%APPDATA%\Claude\claude_desktop_config.json` |
| Cursor | `%APPDATA%\Roaming\Cursor\User\globalStorage\cursor.mcp\mcp.json` |
| Windsurf | `%APPDATA%\Windsurf\User\globalStorage\codeium.windsurf\mcp_config.json` |
| VS Code | `.vscode/mcp.json` 在您的工作区中 |
添加此块:
```json
{
"mcpServers": {
"hfss-mcp": {
"command": "C:/path/to/hfss-mcp/venv/Scripts/python.exe",
"args": ["C:/path/to/hfss-mcp/hfss_mcp_server.py"],
"env": {
"ANSYSEM_ROOT261": "C:/Program Files/ANSYS Inc/v261/AnsysEM"
}
}
}
}
```
> 将 `v261` 替换为您的 AEDT 安装版本(例如 `v232`、`v241`、`v251`)。
---
## 使用
### 1. 启动 HFSS 并获取 gRPC 端口
打开 ANSYS 电子桌面版。在 **消息管理器** 中查找:
```
gRPC 服务器在端口 50051 上启动
```
### 2. 将 Claude 连接到 HFSS
在您与 Claude 的聊天中:
> *"连接到端口 50051 上的 HFSS"*
### 3. 设计天线
> *"设计一个 2.4 GHz 贴片天线"*
Claude 将:
- 创建一个具有所有参数为 HFSS 变量的新模态网络设计
- 构建几何体:基板、空气盒、接地平面、贴片、同轴探针、特氟龙介电材料
- 分配边界:PerfE(接地和贴片)、同轴屏蔽、辐射边界
- 添加具有积分线的波端口
- 创建设置 1(自适应网格)+ 频率扫描
- 插入一个 3D 远场球体
- 求解并生成 S11、E 面、H 面和 3D 增益报告
> *"设计一个 438 MHz 偶极子天线"*
Claude 将构建一个具有终端网络解决方案、集总端口和完整辐射分析的自由空间中心馈电半波偶极子。
### 4. 轮询结果(长时间作业)
长时间工作流程在后台运行。Claude 将为您提供一个 `job_id` 并自动轮询:
> *"获取 job_1 的脚本结果"*
---
## 天线设计参数(贴片 - 2.4 GHz 示例)
所有参数都创建为 **HFSS 设计变量**,因此您可以参数化地扫描它们:
| 变量 | 值 | 描述 |
|---|---|---|
| `W` | 38.04 毫米 | 贴片宽度(Pozar 公式) |
| `L` | 29.44 毫米 | 贴片长度(Pozar 公式) |
| `y0` | 5.59 毫米 | 同轴馈电偏移 |
| `h_s` | 1.6 毫米 | FR4 基板厚度 |
| `Ws` / `Ls` | 70 毫米 | 基板和接地平面尺寸 |
| `h_stub` | 3 毫米 | 同轴探针在接地平面以下的深度 |
| `r_probe` | 0.65 毫米 | 同轴内导体半径 |
| `r_diel` | 2 毫米 | 同轴介电外半径 |
| `ab_lat` | 66 毫米 | 空气盒半宽 |
---
## 许可证
Apache 2.0 — 请参阅 [LICENSE](LICENSE)