HYSYS MCP Server
HYSYS MCP Server
英文:这是一个 MCP (Model Context Protocol) 服务器,可让 Claude Code / Claude Desktop 以自然语言驱动 Aspen HYSYS。提供 read / session / write / flowsheet-build 共 51 种工具, 由安全模式(
HYSYS_MCP_MODE)控制,默认只读。仅支持 Windows(HYSYS COM), 已在 HYSYS V14 上验证。完整文档请参阅下方章节。
这是一个用于通过 Claude Code / Claude Desktop 以自然语言操作 Aspen HYSYS 的 MCP (Model Context Protocol) 服务器。
所谓 MCP,是将外部工具安全地连接到 AI 助手(如 Claude 等)的标准协议。 通过此服务器,Claude 可以读取 HYSYS 的流股值或模拟结果, (仅在允许的情况下)编辑模型。
这是什么?
在 HYSYS 中工作时,一边与 AI 商量一边手动操作 GUI 效率很低。 此服务器通过 Windows 的 COM Automation 操作 HYSYS,仅凭与 AI 的聊天即可完成以下操作:
流股值的确认・修改
案例研究的自动化
收敛状态的实时监控
流程图的构建・编辑
以上操作均可完成。Aspen Plus 版 (brack101/AspenPlus-MCP-Server) 已经存在, 但 HYSYS 版尚未实现(截至 2026 年 5 月的调查)。本项目就是为了填补这个空白。
Related MCP server: AspenPlus MCP Server
功能
读取:获取流股/装置/塔剖面/组分/物性包/收敛状态,检查物料平衡
会话管理:打开/关闭/保存案例,切换多个案例/实例
写入(可选):修改流股条件或单元操作参数、运行求解器、调整塔规格
流程图构建(可选):新建/连接/删除流股或装置
安全模式:仅凭一个环境变量即可从“只读”到“开放写入”分阶段控制
共提供 51 种工具(详见提供的工具)。
当前状态
实现和实机验证均已完成(截至 2026-05-30)。
已重构为 registry 方式 + 已实现模式门控
离线测试 67 passed / 2 skipped
已在实机(HYSYS V14)上验证读取、构建类写入、MCP 全链路以及实际模型 (详见实机验证情况)
关于安全模式
⚠️ 如果想安全地使用,无需任何设置。 默认以读取为主的
default模式启动, 不会公开改写模型的工具。
通过环境变量 HYSYS_MCP_MODE 切换“所公开工具的副作用级别”。每个工具带有
read / session / write 的 tag,根据模式会从列表 (list_tools) 中排除,
即使被调用也会在连接 HYSYS 之前被拒绝。
| 公开的 tag | 工具数 | 用途 |
| read | 21 | 完全只读 |
| read + session | 27 | 读取 + 保存/连接管理。不修改模型值 |
| read + session + write | 51 | 开放写入/求解器执行/流程图构建 |
默认的
default模式不会公开set_stream/run/ 构建类等写入工具。 可以从“仅浏览和保存”的安全状态开始。仅在需要写入时设置
HYSYS_MCP_MODE=enhanced(启用写入功能时)。如果设置了无效值,会偏向安全侧,以
readonly模式启动。
架构概述
┌─────────────────┐ ┌──────────────────────┐ ┌─────────────┐
│ Claude Code │ MCP │ HYSYS MCP Server │ COM │ HYSYS │
│ (WSL or Win) │ stdio │ (Windows Python) │ pywin32│ (Windows) │
└─────────────────┘ <──> └──────────────────────┘ <──> └─────────────┘MCP server 运行在 Windows 原生 Python 上,通过
pywin32连接到HYSYS.ApplicationCOM 对象。与 Claude Code / Claude Desktop 通过 stdio 通信 (即使 Claude Code 本体在 WSL 上,服务器也会调用 Windows Python)。
实现细节请参阅 docs/ARCHITECTURE.md。
设置
环境要求
Windows 10/11
Aspen HYSYS V12 及以上(已在 V14 上确认运行)
Python 3.10+(Windows 原生。WSL 的 Python 无法运行)
pywin32
⚠️ HYSYS 仅支持 Windows。由于使用 COM Automation,无法从 Linux/macOS 或 WSL 的 Python 运行(Claude Code 本体可以在 WSL 上,但服务器必须是 Windows Python)。
安装
# Windows PowerShell
cd path\to\hysys-mcp
python -m venv venv
.\venv\Scripts\Activate.ps1
pip install -e .Claude Desktop / Claude Code 的配置
在 %APPDATA%\Claude\claude_desktop_config.json 中追加以下内容:
{
"mcpServers": {
"hysys": {
"command": "C:\\path\\to\\hysys-mcp\\venv\\Scripts\\python.exe",
"args": ["-m", "hysys_mcp.server"]
}
}
}请将
command替换为你 clone 目录下的venv\Scripts\python.exe的绝对路径。此配置未指定
HYSYS_MCP_MODE,因此将以默认的default(读取 + 保存) 模式启动。
启用写入功能时
如果希望修改流股值、运行求解器或构建流程图,请在 env 中设置
HYSYS_MCP_MODE=enhanced。仅靠服务器端的环境变量即可完成,
因此每个用户可以在各自的配置文件中切换。
{
"mcpServers": {
"hysys": {
"command": "C:\\path\\to\\hysys-mcp\\venv\\Scripts\\python.exe",
"args": ["-m", "hysys_mcp.server"],
"env": { "HYSYS_MCP_MODE": "enhanced" }
}
}
}⚠️ 写入类操作有时会导致 HYSYS 冻结。 默认采用更安全的
default模式 正是出于这个原因。建议先尝试读取,等确实需要写入时再提升到enhanced。 也可以在 Claude Code 侧通过permissions.deny阻止个别工具 (这是用户本地的设置,不包含在分发物中)。
提供的工具
已实现 51 种。根据 tag 决定公开模式(关于安全模式)。
read 工具 (21)
hysys_list_streams hysys_get_stream hysys_list_unit_ops hysys_get_status
hysys_list_column_specs hysys_get_column_profile hysys_balance_check
hysys_get_stream_phys hysys_introspect hysys_list_components
hysys_find_streams hysys_find_ops hysys_list_ports 等
session 工具 (6)
hysys_open hysys_close hysys_reconnect
hysys_list_instances → hysys_switch_instance hysys_set_active_case hysys_save
write 工具 (24)
hysys_set_stream hysys_set_unit_op_param hysys_run hysys_reset
hysys_case_study hysys_set_column_spec 系列 hysys_column_run
hysys_set_adjust_target hysys_call_method hysys_set_property 等
流程图构建工具
相当于 AspenPlus-MCP 的 enhanced(构建)模式(2026-05-30 新增)。全部带有 write tag,
默认情况下是 confirm=false 的试运行(仅确认执行内容)。
工具 | 功能 |
| 新建物料/能量流股 |
| 新建装置( |
| 将流股连接到装置的 Feed/Product/Energy 端口 |
| 断开连接(※见下方注释。此 COM 版本不支持) |
| 删除流股/装置(即使已连接也可) |
| 枚举装置端口(用于连接前的探索,read) |
使用前提:需要已定义组分 + Fluid Package 的案例。空案例中
create_stream本身会失败(HYSYS 的规格。AspenPlus-MCP 也以已有案例为前提来使用组分/物性)。
disconnect_stream在此 HYSYS V14 COM 版本中不受支持(因为不存在将连接点清空的 API)。执行时会返回supported:false和替代手段(重新连接用connect_stream、 移除用delete_object、完全断开用 GUI)。由于组分/反应/Fluid Package 的编辑在不同环境下差异较大,因此未提供专用工具 (可通过
hysys_call_method/hysys_set_property实现)。当不确定类型名或端口名时, 请通过hysys_find_ops/hysys_list_ports确认。
实机验证情况
已于 2026-05-30 在 HYSYS V14 上完成实机验证(仅要点。详见 docs/TODO.md)。
离线:67 passed / 2 skipped(即使在 WSL 的 system python 中也可通过
PYTHONPATH=src pytest运行。skip 是由于未安装 mcp/win32 造成的环境限制)读取:已在实机确认 connect / list_cases / list_streams / list_unit_ops 等
构建类 write:create_stream / create_unit_op / connect_stream / list_ports / delete_object 在实机全部 OK,事后清理模型无损伤(零残留)
覆盖验证:覆盖 energy 流股、装置类型 mixer / heater / separator (=
flashtank) / valve / cooler、feed / product / energy 端口连接MCP 全链路:确认
server.call_tool → モードゲート → handler → 実 HYSYS(enhanced=51 个、default=27 个,write 类不显示且拒绝调用)实际模型:在已收敛的实际工艺模型(约 47 个流股 / 30 个单元操作)上读取全部 OK;并执行孤立对象的 create→delete,确认模型无损伤(47→47 / 30→30)且未执行 Save
复现脚本位于 scripts/ 下(live_probe.py / live_build_test.py /
live_build_test_full.py / live_mcp_passthrough.py / live_prod_test.py)。
开发者信息
目录结构
src/hysys_mcp/
registry.py # ToolSpec(tool+handler+tag) / モードゲート / JSON 正規化 (mcp 非依存)
server.py # 薄い adapter: registry → list_tools / call_tool ディスパッチ
tools/ # ドメイン別ツール定義
connection.py streams.py unit_ops.py columns.py
solver.py logical.py fluid.py generic.py
build.py # フローシート構築 (create/connect/delete/ports)
hysys_client.py # COM 層 (HYSYS.Application 操作。registry 層からは触らない)
tests/ # オフラインテスト (registry / basic)
scripts/ # 実機検証スクリプト
docs/ # ARCHITECTURE.md / TODO.mdserver.py 是一个将工具注册和分发都委托给 registry 的薄层。
registry.py 不依赖 mcp 包,因此在没有 HYSYS 的环境(如 WSL)中也可以 import,
并且可以运行 registry 层的单元测试。设计思想移植自 AspenPlus-MCP 的组件划分。
添加工具的方法
只需在 tools/<domain>.py 中添加一行 register(...)(废弃了以往庞大的 if/elif)。
如果需要新的 COM 操作,则在 hysys_client.py 中添加方法。
测试
# WSL/Linux でも registry 層のテストは回せる
PYTHONPATH=src pytest -q实机测试(需要 HYSYS COM 的测试)请在 Windows 的 venv Python 中运行 scripts/ 下的各个脚本。
注意事项
HYSYS 仅支持 Windows — 无法在 Linux/macOS/WSL 的 Python 中运行。
写入类操作有时会导致 HYSYS 冻结 — 请从默认的
default开始,仅在必要时提升到enhanced。构建类以已定义组分 + Fluid Package 的案例为前提 — 空案例中创建会失败。
disconnect_stream在此 V14 COM 版本中不受支持 — 替代手段参见上文。
参考资料
Aspen Plus MCP Server (brack101) — Aspen Plus 版,设计参考
Aspen HYSYS Customization Guide (PDF, archive.org 镜像) — COM Automation 的官方参考(AspenTech, V7.3)。原版在 AspenTech 支持门户 分发
Model Context Protocol 规范 — MCP 标准
创建于:2026-05-14
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that automates Aspen Custom Modeler (ACM) via COM, enabling steady-state and dynamic simulations and variable manipulation. It allows users to programmatically manage ACM sessions and interact with .acmf files through standardized tools.1GPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Aspen Plus process simulations through a standardized MCP interface, supporting simulation control, data access, and flowsheet manipulation.30MIT
- AlicenseBqualityBmaintenanceMCP Server for COMSOL Multiphysics simulation automation via AI agents.781MIT
- AlicenseNot gradedqualityCmaintenanceEnables natural language control of Aspen Plus for chemical process simulation, including parameter tuning, batch runs, and result reading.3MIT
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
MCP server for AI dialogue using various LLM models via AceDataCloud
GibsonAI MCP server: manage your databases with natural language
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/baojunjiang1711-lang/AspenHYSYS-MCP-Server-backup'
If you have feedback or need assistance with the MCP directory API, please join our Discord server