Aspen Plus MCP 服务端

项目简介

Aspen-MCP 是一个在 Windows 上运行的 MCP 服务器实现,结合 Aspen Plus 的 COM 接口,为大模型客户端提供统一的上下文服务、工具执行与数据访问能力,便于将化工过程仿真系统接入大语言模型生态。

主要功能点

  • 通过 MCP 协议注册并暴露大量工具,覆盖打开/关闭 Aspen Plus 会话、查询与修改节点、流程块与流的创建、属性读取/写入等常用操作,共计超过 18 种工具。
  • 使用 YAML 定义工具并支持动态创建新工具定义,定义的工具会被搜索并在运行时解析。
  • 会话管理与低层 COM 访问:集中管理 Aspen Plus 的 COM 应用对象、会话生命周期,以及对数据树的直接读写。
  • 提供块、流、端口等元素的定位与操作能力,支持基于名称的模糊匹配与属性解析。
  • 支持多种传输协议的 MCP 通信,适应不同客户端场景(如 STDIO、Server-Sent Events、WebSocket)。
  • 具备易于扩展的模块化结构:主工具、流程图工具、属性工具、块/流工具、查询工具和创建工具等清晰划分。

安装步骤

  • 使用 Windows 操作系统,因为 Aspen Plus 在 Windows 下运行并提供 COM 接口。
  • 确保已安装 Aspen Plus。
  • 安装 Python 3.11 及以上版本。
  • 安装依赖:
    • 在项目根目录安装依赖,通常执行:pip install -r aspen-mcp/requirements.txt
  • 启动服务器前的准备:
    • 复制并编辑配置文件 .mcp.json(来自 .mcp.json.example),将 server.py 的路径指向仓库中的 aspen-mcp/server.py。
    • 如果系统中未将 python 加入 PATH,请使用完整路径,例如 "command": "C:/Python311/python.exe"。
  • 运行服务器(服务器脚本会在直接执行 server.py 时启动 MCP 服务):
    • 使用 MCP 客户端提供的启动配置,指向服务器脚本及参数。

服务器配置示例(MCP 客户端需要的启动信息,JSON 结构描述)

  • server_name: aspen-plus
  • command: "python"
  • args: ["aspen-mcp/server.py"]

注释说明

  • server_name 用于标识 MCP 服务器实例,必须是唯一名称。
  • command 指定启动服务器的命令,通常为 "python"。
  • args 为传给启动命令的参数,通常包含服务器脚本的相对路径或绝对路径。
  • 若系统中未将 Python 添加到 PATH,请在 command 中使用 Python 的完整路径。

基本使用方法

  • 安装并配置完成后,通过 MCP 客户端建立与服务器的连接,调用公开的工具实现对 Aspen Plus 的控制与查询。
  • 典型工作流包括:打开会话、查询/修改树节点、创建块与流、设置属性、执行模拟、保存结果等。
  • 通过 create_tool 可以动态创建新的工具定义,且搜索器会在写入新定义后重新加载,使新属性即时可用。

服务器信息