loading…
Search for a command to run...
loading…
An MCP server for automating ANSYS HFSS simulations, providing persistent connections and a suite of tools for modeling, simulation, and post-processing.
An MCP server for automating ANSYS HFSS simulations, providing persistent connections and a suite of tools for modeling, simulation, and post-processing.
基于 Model Context Protocol (MCP) 的 ANSYS HFSS 自动化服务器,支持持久化 HFSS 连接。
hfss_server.py:主服务端代码,负责 MCP 协议、HFSS 会话管理、日志、异常处理等。requirements.txt:Python 依赖清单,可通过 pip install -r requirements.txt 一键安装。HFSS_MCP_EXPERIENCE.md:开发经验与已知问题记录。pip install -r requirements.txt
依赖包:mcp、pyaedt、psutil、pypdf
注意:包名为
pyaedt,而非ansys-aedt-core(后者在 PyPI 上不存在)。
python hfss_server.py
{
"servers": {
"hfss": {
"command": "python",
"args": ["e:/project/GitHub/HFSS_McpServer/HFSS_McpServer/hfss_server.py"],
"type": "stdio"
}
}
}
| 工具名称 | 描述 |
|---|---|
hfss_start_app |
连接现有 HFSS 应用 |
hfss_launch_app |
启动新的 HFSS 应用(含 GUI) |
hfss_stop_app |
停止 HFSS 应用并释放资源 |
hfss_restart_app |
重启 HFSS 应用 |
hfss_get_session_status |
获取当前会话详细状态 |
hfss_get_process_status |
获取 HFSS 进程状态 |
hfss_get_messages |
获取 HFSS 日志消息 |
| 工具名称 | 描述 |
|---|---|
hfss_create_project |
创建新工程(支持 Terminal/DrivenModal 等解法类型) |
hfss_save_project |
保存当前工程 |
hfss_close_project |
关闭当前工程(会话保持) |
hfss_list_projects |
列出所有活跃会话 |
hfss_import_project |
导入工程文件 |
hfss_export_project |
导出当前工程 |
| 工具名称 | 描述 |
|---|---|
hfss_create_box |
创建长方体(指定中心坐标与尺寸) |
hfss_create_cylinder |
创建圆柱体(支持 X/Y/Z 轴方向) |
hfss_create_sphere |
创建球体 |
hfss_list_objects |
列出所有模型对象 |
hfss_get_object_info |
获取指定对象详细信息(材质、边界盒、体积等) |
| 工具名称 | 描述 |
|---|---|
hfss_assign_wave_port |
为指定面分配波导端口 |
hfss_assign_radiation_boundary |
为指定面分配辐射边界条件 |
| 工具名称 | 描述 |
|---|---|
hfss_list_variables |
列出所有设计变量 |
hfss_set_variable |
设置/修改设计变量(如 '10mm') |
hfss_delete_variable |
删除设计变量 |
| 工具名称 | 描述 |
|---|---|
hfss_create_setup |
创建仿真设置(指定名称与频率) |
hfss_run_analysis |
运行仿真分析 |
hfss_get_s_parameters |
提取 S 参数结果(兼容不同 PyAEDT 版本) |
| 工具名称 | 描述 |
|---|---|
hfss_get_modeling_knowledge_status |
查看本地 HFSS 建模知识库状态 |
hfss_query_modeling_knowledge |
按问题检索建模经验(端口/边界/setup/网格等) |
如果你本机有完整的 ANSYS ProductDocPDF,可用脚本提取和索引与 HFSS/AEDT 建模相关内容:
python scripts/build_hfss_kb.py --doc-root "E:/download/ANSYS2026R1/ANSYS2026R1_ProductDocPDF/v261"
默认会在项目根目录生成:
hfss_modeling_knowledge_base.json建议在以下时机重新构建:
自动建模流程建议:
hfss_query_modeling_knowledge 检索当前建模任务关键字详见 HFSS_MCP_EXPERIENCE.md,包含以下问题的根因与修复方案:
assign_radiation_boundary_to_faces)InsertInfiniteSphereSetup 在 gRPC 模式下失败hfss_server.py 作为主服务端代码,建议所有新功能、性能优化、日志改进等均在此文件实现。TEMP、TMP、PIP_CACHE_DIR 环境变量重定向至其他磁盘(如 E:\pip-tmp)后再安装。logging 标准库,设置合理的日志级别(INFO/DEBUG/ERROR),并输出到文件和控制台。logging.handlers.RotatingFileHandler)。如需扩展功能、性能优化或日志增强,请直接修改 hfss_server.py 并遵循上述规范。
从官方 ANSYS 文档自动提取和检索 HFSS 建模规则,在自动建模时提供实时建议。
# 1. 构建知识库(从你的 ANSYS 文档目录)
python quickstart.py build
# 2. 检查状态
python quickstart.py status
# 3. 启动 MCP 服务器
python quickstart.py server
{
"method": "tools/call",
"params": {
"name": "hfss_query_modeling_knowledge",
"arguments": {
"query": "wave port setup for coaxial antenna feed",
"top_k": 5
}
}
}
📖 详细指南:MODELING_KB_GUIDE.md
可以通过命令行直接测试 MCP 协议:
cd e:/project/GitHub/HFSS_McpServer/HFSS_McpServer
python hfss_server.py
测试请求文件格式:
{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"hfss_start_app","arguments":{}}}
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"hfss_get_session_status","arguments":{}}}
保存为 test_mcp.txt,然后运行:
type test_mcp.txt | python hfss_server.py
成功连接后会显示:
=== HFSS Session Status ===
Current Design:
Project: Project1
Design: HFSSDesign1
Solution Type: Terminal
Objects: 0
All Designs in Project1:
- HFSSDesign1 [CURRENT]
Project Path: E:/documant/Ansoft/
hfss_session_state.json| 工具名称 | 描述 |
|---|---|
hfss_start_app |
连接现有 HFSS 应用 |
hfss_launch_app |
启动新的 HFSS 应用 |
hfss_create_project |
创建新工程 |
hfss_create_box |
创建长方体模型 |
hfss_list_objects |
列出所有模型对象 |
hfss_get_object_info |
获取指定对象的详细信息(类型、材质、边界盒、体积) |
hfss_save_project |
保存当前工程 |
hfss_get_session_status |
获取会话状态 |
hfss_get_messages |
获取 HFSS 日志消息 |
hfss_stop_app |
停止 HFSS 应用 |
hfss_mcp/
├── hfss_server.py # MCP 服务器主程序
├── mcp_config.json # MCP 配置示例
├── test_*.py # 测试脚本
├── debug_*.py # 调试脚本
└── README.md
atexit.registerQ: 每次调用后 HFSS 连接断开?
A: 确保在导入 ansys.aedt.core 之前禁用 atexit.register
Q: 找不到 HFSS 进程? A: 确保 HFSS 应用程序已经在运行(打开任意工程)
MIT
Run in your terminal:
claude mcp add hfss-mcp-server -- npx Security
Low riskAutomated heuristic from public metadata — not a security guarantee.