MCP server for HFSS (High Frequency Structure Simulator) antenna design automation using native COM API (win32com), supporting cross-version AEDT (2019.2 ~ 2025.2)
15 tools with mixed quality. Strengths: all tools have descriptions (Chinese, detailed); input schemas present with types and required fields; domain-specific parameters well-constrained (enums for sweep_type, plane, rlc_type). Weaknesses: descriptions are domain-jargon-heavy and assume HFSS expertise (not LLM-optimized); many descriptions exceed 200 chars and include implementation details rather than user intent; output schemas completely undocumented (no return type specs); error handling absent (no recovery guidance); parameter descriptions sometimes cryptic (e.g., 'save_rad_fields' note about 2025.2 bug is implementation detail, not user guidance); no tool annotations (readOnlyHint, destructiveHint). Risk labels present but not formalized in schema. Average tool score: 52.
在 sheet 上赋有限电导率边界(真实金属损耗)。要算效率/Q/插损时用它替代 Perfect E。传 material(如 'copper')或 conductivity(S/m)其一。
在 sheet 上赋各向同性阻抗边界(R+jX 欧姆)。用于薄电阻片、吸波等效表面阻抗。
在 sheet 上赋集总 RLC 边界(并联/串联 R/L/C 负载)。R/L/C 至少给一个。需显式电流方向线 current_start→current_end(沿 RLC 电流方向,落在 sheet 两条对边上)。
在 sheet 上赋 Perfect E(理想电导体)。贴片、地板、馈电片等导体面都要这步。端口 sheet 不要赋 PE(会让端口失效)。
在 sheet 上赋 Perfect H(理想磁壁/PMC)。用于对称面磁壁、磁导体边界等。
为天线仿真建开放空间:在模型外约 quarter-wave 处建真空空气盒,并给其外表面赋辐射边界。天线类仿真求解前必须调一次(否则没有辐射、远场)。
创建求解设置(单频自适应)。扫频前必须先建。frequency 取工作频率。
Output schemas completely undocumented. No tool returns a documented schema, LLMs cannot plan downstream calls or extract required fields. Critical for chaining tools.
Descriptions are domain-jargon-heavy and assume HFSS expertise. Examples: 'Interpolating 最常用(快+准),适合 S11/带宽' (Chinese, assumes knowledge of S11 and bandwidth concepts); 'save_rad_fields' includes implementation bug notes ('实测 2025.2 上单独设它不生效') rather than user-facing guidance. Not LLM-optimized.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2026-07-28+ | v2 |
在已有 setup 上加扫频。Interpolating 最常用(快+准),适合 S11/带宽。
删除求解 setup。探索阶段容易堆一堆试出来的 setup(轻量调参的、单频取场的、不同自适应频点的),留着会拖慢工程加载与存盘、也容易误取到旧结果。**必须显式 confirm=true 才真删**(不带只回显现有 setup 清单及各自的扫频,不动任何东西)。名字写错则整批不动。**注意:删 setup 会连带删掉它下面的所有扫频和已求解的结果数据,不可撤销**——删之前先确认要保留的曲线已经取过数/导出过。
删除 setup 上的扫频。**`create_sweep` 不能同名覆盖**(会报 com_error),扫频参数建错了只能先用本工具删掉再重建。另一个重要用途:**调参阶段清掉存场扫频**——每条扫频都会在之后每次 analyze 里重算,存场频点每个要写完整三维场(实测约 90-100 秒/点、几百 MB/点),堆几条下来单轮求解能从十几分钟涨到一两个小时。**必须显式 confirm=true 才真删**(不带只回显该 setup 现有扫频清单,不动任何东西)。名字写错则整批不动。注意:删扫频会同时丢掉它已求解的结果数据。
取单个已求解设计的**轴比 AR(dB) vs 频率**曲线 + 3dB 轴比带宽 —— CP 天线的对标门。默认取 boresight(theta=0,phi=0)。与 get_parametric_axial_ratio 区别:那个是参扫各组合在单频点的最小 AR;这个是一个设计整条扫频的 AR 曲线,能直接给出 AR<=3dB 的连续带宽,判定是否覆盖工作频段。**前提:扫频必须用 create_sweep(..., sweep_type='Discrete', save_fields=True) 建**——实测 2025.2 上只设 save_rad_fields 不生效(远场报告报 com_error)。另需 create_open_region + create_infinite_sphere。
布尔交:保留 objects 的公共部分,结果在第一个名字下。
按坐标平面切割对象(实体或 sheet 都行),保留一侧或两侧。plane=XY 表示平面 z=offset(法向 +Z),YZ → x=offset(法向 +X),ZX → y=offset(法向 +Y)。keep='positive' 保留法向正侧,'negative' 保留负侧,'both' 两侧都留(新增部件名见返回)。典型用法:把螺旋带/斜切带子的端头切成水平——顶端 split(plane='XY', offset='z_top', keep='negative'),底端 split(plane='XY', offset='z_bot', keep='positive')。offset 可用变量表达式。注意:sheet 不能被 solid 用 subtract 切(类型不匹配会失败并删掉 blank),要切 sheet 就用本工具。
布尔减:从 blank 减去 tools 列表里的对象。blank 保留,tools 被消耗。
布尔并:把 objects 合并成一个,结果保留在第一个名字下。
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Risk labels exist in metadata ('WRITE', 'DESTRUCTIVE', 'READ_ONLY') but are not formalized in schema. LLMs cannot infer safety properties.
Destructive operations (delete_sweep, delete_setup) require explicit confirm=true but lack confirmation-request pattern guidance. No dry-run or preview mode. Error messages for wrong names ('名字写错则整批不动') are vague.
Parameter descriptions sometimes cryptic or implementation-focused. Example: assign_lumped_rlc requires '**用字面量坐标带单位(如 '1.6mm'),不要用变量名/表达式**', constraint is clear but phrased as a warning, not a positive requirement. No validation error guidance.