Token导航 LogoToken导航TokenDH.com
MC
AI代理stdio官方级别未说明来源级核验

MCP Gennx

MCP Server

一个基于Model Context Protocol的领域驱动MCP服务器,通过REST API提供GEN NX结构工程功能,支持动态工具生成和子服务器组织。

工具数

143

提示词数

0

GitHub Stars

0

资源数

0
PythonClaudeAI代理ClaudeCursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Gabriel-Hong

提供方

Gabriel-Hong

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -e .

详细介绍

mcp gennx

![Python 3.11+](https://www.python.org/downloads/) ![FastMCP 3.x](https://github.com/jlowin/fastmcp) ![License: MIT](LICENSE)

域驱动的MCP服务器,通过模型上下文协议公开GEN NX结构工程REST API。

特性

  • 动态工具生成 --工具在启动时从JSON模式文件生成。无代码生成步骤;添加模式文件,注册端点,工具就会出现。
  • 域驱动的子服务器 --5个子服务器(建模、边界、负载、分析、项目)按结构工程领域组织工具。
  • 工具集筛选 --控制通过环境变量公开哪些工具:87个工具(默认)、159个工具(全部)或仅GET(只读模式)。

建筑

Claude / GPT / Cursor
    │  MCP Protocol (stdio)
    ▼
Main FastMCP ("gennx")
    ├── modeling    (9 endpoints  · nodes, elements, materials, sections …)
    ├── boundary    (8 endpoints  · constraints, springs, rigid links …)
    ├── loads       (14 endpoints · load cases, nodal/beam loads, LCOM 6 sub-types …)
    ├── analysis    (6 endpoints  · eigenvalue, buckling, pushover …)
    └── project     (9 endpoints  · open/save/close, analysis run, view capture …)
              │
         GennxApiClient (httpx async)
              │
         GEN NX REST API (localhost:8080)

动态工具管道

schemas/raw/*.json
    → SchemaRegistry (load & merge 65 schema files → 46 endpoints)
    → ToolFactory (generate closure per method)
    → FunctionTool (name, description, JSON Schema params, annotations)
    → FastMCP.add_tool()

每个端点最多生成4个工具——每个HTTP方法一个:

方法工具前缀示例行为
职位post_post_db_node创建记录
得到get_get_db_node读取所有记录
PUTput_put_db_node更新记录
删除delete_delete_db_node按ID删除列表

快速开始

1.安装

pip install -e .

2.配置

复制 .env.example.env 并设置所需的环境变量:

cp .env.example .env

编辑 .env:

# GEN NX REST API base URL (required)
GENNX_API_BASE_URL=https://moa-engineers.midasit.com:443/gen

# MAPI key for GEN NX authentication (required for MIDAS cloud API)
GENNX_MAPI_KEY=your-mapi-key-here
MAPI密钥:从MIDAS用户门户发布。服务器将其作为 MAPI-Key 对GEN NX REST API的每个请求的HTTP头。仅当目标是不需要身份验证的本地GEN NX实例时,才保留为空。

3.用克劳德代码注册

通过以下方式传递环境变量 -e 标记,以便生成的MCP进程继承它们:

claude mcp add gennx \
  -e GENNX_API_BASE_URL=https://moa-engineers.midasit.com:443/gen \
  -e GENNX_MAPI_KEY=your-mapi-key-here \
  -- mcp-gennx

或者手动添加到MCP客户端配置中:

{
  "mcpServers": {
    "gennx": {
      "command": "mcp-gennx",
      "args": [],
      "env": {
        "GENNX_API_BASE_URL": "https://moa-engineers.midasit.com:443/gen",
        "GENNX_MAPI_KEY": "your-mapi-key-here"
      }
    }
  }
}

4.使用

You: Create a simple beam model with 3 nodes at (0,0,0), (5,0,0), (10,0,0)
AI:  [calls post_db_node with Assign: {"1": {"X":0,"Y":0,"Z":0}, "2": {"X":5,...}, ...}]
     Created 3 nodes successfully.

You: Connect them with beam elements
AI:  [calls post_db_elem with Assign: {"1": {"TYPE":"BEAM","MATL":1,"SECT":1,"NODE":[1,2]}, ...}]
     Created 2 beam elements.

配置

变量默认值描述
GENNX_API_BASE_URLhttp://localhost:8080GEN NX REST API基本URL(例如。 https://moa-engineers.midasit.com:443/gen)
GENNX_MAPI_KEY*(空)*MAPI密钥以以下方式发送 MAPI-Key header-对于MIDAS云API是必需的
GENNX_API_TIMEOUT30.0API请求超时(秒)
TOOLSETSdefault工具集选择(见下文)
READ_ONLYfalse何时 true,只公开GET工具
LOG_LEVELINFO日志记录级别

工具集示例

TOOLSETS=default                  # 87 tools — core endpoints only
TOOLSETS=all                      # 159 tools — all endpoints
TOOLSETS=default,loads_advanced   # default + advanced load types
TOOLSETS=modeling_core            # only core modeling tools (20 tools)
READ_ONLY=true                   # expose only GET tools

项目结构

mcp-gennx/
├── pyproject.toml
├── .env.example
└── src/mcp_gennx/
    ├── __init__.py              # Entry point (main)
    ├── server.py                # Server assembly & toolset filtering
    ├── config.py                # GennxSettings (pydantic-settings)
    ├── client/
    │   └── gennx_client.py      # Async HTTP client for GEN NX API
    ├── schemas/
    │   ├── registry.py          # SchemaRegistry — loads & merges JSON schemas
    │   ├── models.py            # ApiSchema, ToolDef data models
    │   └── raw/                 # 65 JSON schema files
    ├── servers/
    │   ├── modeling.py          # Nodes, elements, materials, sections
    │   ├── boundary.py          # Constraints, springs, rigid links
    │   ├── loads.py             # Load cases, forces, combinations (LCOM)
    │   ├── analysis.py          # Eigenvalue, buckling, nonlinear
    │   └── project.py           # File ops, analysis run, view capture
    ├── tools/
    │   └── factory.py           # ToolFactory — dynamic tool generation
    └── utils/
        └── descriptions.py      # Auto-generated tool descriptions

支持的API

第1层——核心(默认工具集)

端点描述
建模db/NODE节点(절점)——几何点
建模db/ELEM元素(요498;)——梁、板、固体
建模db/MATL材料(Materials)
建模db/SECTSections(截面)-11 sub-types
建模db/THIK厚度(두44760;)——板材厚度
边界db/CONS约束(分支条件)-supports
边界db/NSPR Nodal Springs(切点弹簧)
负载db/STLD 静态负载情况(静态负载)
负载db/BODFBody Forces(自重)
负载db/CNLD Concentrated Nodal Loads(节点载荷)
负载db/BMLDBeam Loads(步载荷)
负载db/LCOM-*载荷组合(载荷组合)-6 sub-types
分析db/EIGV Eigenvalue Analysis(固有值分析)
分析db/NMAS Nodal Masses(节点质量)

第2级——高级

端点描述
建模db/GRUP Structure Groups(结构组)
建模db/BNGR边界组
建模db/SKEW Local Coordinates(倾斜坐标系)
建模db/STOR Stories(楼层信息)
边界db/GSPR通用弹簧
边界db/ELNK弹性链接(弹性链接)
边界db/RIGDRigid Links(刚体链接)
边界db/FRLS楼层释放
边界db/OFFSBeam Offsets(梁偏移)
边界db/MCON多点约束
负载db/PRES Pressure Loads(压力载荷)
负载db/PSLT规定位移
负载db/ETMP元件温度
负载db/GTMP梯度温度
分析db/ACTL 分析控制(Analysis Control)
分析db/BUCK Buckling Analysis(左屈分析)
分析db/PDELP-Delta分析
分析db/NLCT非线性控制
项目db/UNIT单位制
项目db/STYP结构类型

项目操作(手动注册)

工具说明
post_doc_anal运行分析(标准或推送式)
post_doc_new创建新项目
post_doc_open打开项目文件
post_doc_save保存项目
post_doc_saveas将项目另存为新文件
post_doc_close关闭项目
post_view_capture将当前视图捕获为图像

发展

运行测试

pip install -e ".[dev]"
pytest

添加新的API

  1. 将JSON模式文件放入 src/mcp_gennx/schemas/raw/
  2. 将端点添加到相应的子服务器 ENDPOINTS 字典
   # src/mcp_gennx/servers/modeling.py
   ENDPOINTS = {
       ...
       "db/NEW_ENDPOINT": {"tier": 2, "toolset": "modeling_advanced"},
   }
  1. 重启服务器——工具会自动生成。

许可证

麻省理工学院

目录标签

目录标签

PythonClaudeAI代理结构工程本地部署RESTAPI动态工具生成领域驱动MCP协议

支持客户端

ClaudeCursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

143

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP