Skip to main content
Glama

DIANA-MCP

让支持 Model Context Protocol(MCP)的 AI 助手在人工监督下操作 DIANA FEA、读取求解结果,并从本地手册与经验库中检索知识。

English · 快速开始 · 操作指南 · 配置参考 · 架构说明

DIANA-MCP 连接正在运行的 DianaIE 图形界面,也可以调用后台 diana.exe 求解器。它支持建模、网格、分析设置、GUI 修改跟踪、结果解析、手册检索和可审批的经验沉淀。项目不包含 DIANA 软件、许可证或用户手册;运行时只读取用户本机合法安装的 DIANA 文件。

IMPORTANT

本项目目前在 DIANA 10.5 上开发和验证,不隶属于 DIANA FEA BV。使用者必须自行取得有效的 DIANA 许可证,并对模型、参数和分析结论负责。

主要能力

  • 在 DianaIE 的 GUI 主线程中执行 DIANA Python 命令,AI 和用户看到同一个模型。

  • 识别用户在 GUI 中的修改、撤销/重做和参数新旧值。

  • 在提交调试计算前强制显示完整模型与求解设置,由人工在 DianaIE 中批准。

  • 将通过验证的模型认证为基准模型,再对批准范围内的参数变体自动计算。

  • 后台运行 diana.exe,跟踪增量步、收敛状态、错误和输出文件。

  • 读取 .out、.tb 和 DianaIE 已加载结果;大表可直接导出 CSV。

  • 检索本地 DIANA 用户手册、验证算例、SCHEMA 关键字、脚本 API 和经验手册。

  • 自动起草建模经验,但只有用户明确批准后才标记为“已验证”。

  • 可选 bge-m3 本地语义检索;模型、查询和索引均不上传。

Related MCP server: OpenSTAAD MCP Server

快速开始

1. 准备环境

  • Windows 10/11,或能够运行 DIANA 的 Linux/Wine 环境;

  • DIANA 10.5 与有效许可证;

  • Python 3.10 或更高版本;

  • 支持 MCP stdio 服务的客户端,如 Codex、Claude Code、Claude Desktop 或 Cursor。

2. 安装

git clone https://github.com/ZhangShirui2002/Diana-MCP.git
Set-Location diana-mcp
py -3.11 -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade pip
.\.venv\Scripts\python.exe -m pip install -e .

如果需要语义检索:

.\.venv\Scripts\python.exe -m pip install -e ".[vector]"

3. 配置 MCP 客户端

先取得虚拟环境 Python 的绝对路径:

(Resolve-Path .\.venv\Scripts\python.exe).Path

复制 .mcp.example.json 为 .mcp.json,把其中的 command 改成上述路径。.mcp.json 可能包含本机路径,已默认排除在 Git 之外。

4. 连接 DianaIE

推荐启用自动连接:

.\.venv\Scripts\python.exe -m diana_mcp autostart enable
.\.venv\Scripts\python.exe -m diana_mcp autostart status

重新启动 DianaIE 和 MCP 客户端,然后让 AI 依次调用:

diana_status
diana_start
diana_guide(topic="workflow")

完整安装、首个模型和故障排查见快速开始。

安全的计算工作流

建模与调试
    ↓
模型/单位/网格/荷载/求解设置自检
    ↓
DianaIE 完整展示 + 人工批准
    ↓
一次验证求解
    ↓
正常结束、无错误、全部增量步收敛
    ↓
可信基准模型
    ↓
人工审批参数范围、自检和质量规则
    ↓
AI 自动执行批准范围内的参数分析

所有求解入口最终都必须消费一个与 .dat、.dcf 文件哈希绑定的一次性许可。直接通过 diana_execute 调用 runSolver 等命令会被阻止。详见建模与调试阶段和参数分析阶段。

文档

文档

用途

快速开始

从克隆仓库到连接 DianaIE 的首次成功流程

操作指南

日常建模、人工审阅、基准认证、参数分析和结果读取

配置参考

MCP 配置、环境变量、单机/远端拆分部署和向量检索

工具参考

46 个 MCP 工具的用途和分组

架构说明

Bridge、求解作业、知识库、状态目录和安全边界

安全与隐私

威胁模型、敏感文件和公开仓库检查清单

社区知识网络

可选的共享经验库、自动治理、同步和隐私规则

维护者发布指南

初始化 Git、创建 GitHub 仓库、打标签和发布版本

DIANA 手册功能复查

TABULA 输出及 DIANA 功能覆盖审计

知识库与经验手册

知识库默认是用户本地数据,不随源码发布。初始化一个空经验库:

.\.venv\Scripts\python.exe -m diana_mcp knowledge init
.\.venv\Scripts\python.exe -m diana_mcp knowledge status

历史 .out 日志、项目路径和经验条目可能包含敏感工程信息。公开前应单独审查;建议把公开经验库作为独立仓库维护。详见安全与隐私。

可选:社区知识网络

DIANA-MCP 支持三层知识融合,而不是把所有用户数据集中上传:

用户本机合法安装中的手册 / API / SCHEMA
                    +
       社区共享经验库(可选同步)
                    +
          用户私有 knowledge/ 仓库
                    ↓
       版本感知、来源可追溯的统一检索

社区仓库由自动化规则维护:通过格式、DCO、许可证、隐私和可执行内容检查的贡献只能先成为低可信度候选;系统根据独立复现反馈调整可信度并标记争议。PR 头部代码不会被检出或执行。任何本地经验都必须先生成脱敏预览并由用户明确输入该批次的 UPLOAD <batch-id>,才会创建公开贡献分支,绝不会自动上传模型、日志或结果。

python -m diana_mcp knowledge community status
python -m diana_mcp knowledge community sync
python -m diana_mcp knowledge community redact <经验-id>
python -m diana_mcp knowledge community preview <batch-id>

同步不是启动时的隐式联网操作。同步后的社区条目会带仓库、commit、状态和可信度参与 BM25 与 bge-m3 融合检索;私有经验始终优先且不会被覆盖。完整说明见社区知识网络,公共数据仓库见 Diana-MCP-Knowledge。

开发与测试

.\.venv\Scripts\python.exe -m pip install -e ".[dev]"
.\.venv\Scripts\python.exe -m pytest -m "not live"

真实 DIANA 端到端测试会启动 DianaIE 并占用许可证:

$env:DIANA_MCP_LIVE_TESTS = "1"
.\.venv\Scripts\python.exe -m pytest tests\test_live.py

贡献前请阅读 CONTRIBUTING.md。安全问题请按 SECURITY.md 私下报告。

许可证

本项目采用 Apache License 2.0。该许可证只覆盖本仓库中项目贡献者有权授权的代码和文档,不授予 DIANA 软件、用户手册、商标或客户数据的任何权利。第三方与商标说明见 NOTICE.md。

商标与第三方内容

DIANA 是其权利人的产品和商标。本项目是独立的互操作工具,不包含、修改或再分发 DIANA 可执行文件、许可证、用户手册或其他专有内容。更多说明见 NOTICE.md。

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to interact with Bentley STAAD.Pro models for tasks like load case definition, data extraction, and property setting, running locally with multi-instance support and no cloud dependency.
    5
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to interact with Bentley STAAD.Pro models for tasks like load case definition, data extraction, and property setting through natural language.
    5
    53
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to interact with bridge structural analysis software for modeling, construction stages, and code checking.
    15
    150 PyPI
    Apache 2.0