Mendix MCP服务器

Mendix MCP服务器是一个模型上下文协议(MCP)服务器,旨在赋能AI工具(如Google Antigravity、Claude Desktop或Cursor)检查、读取和理解Mendix项目的结构。

  • by EGorsel
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 EGorsel/mendix-local-mcp

使用说明

Mendix MCP服务器

Mendix应用程序和AI代理之间的强大桥梁。

这 Mendix本地MCP服务器 是一个模型上下文协议(MCP)服务器,旨在使AI工具(如Google Antigravity、Claude Desktop或Cursor)能够检查、阅读和理解Mendix项目的结构。

它以独特的方式运作 双模式:

  1. 影子SDK(本地): 即时离线访问 .mpr 文件通过直接二进制解析。
  2. 官方SDK(云): 使用Mendix平台SDK进行深入、准确的检查。

为什么要使用这个工具?

由于专有文件格式,将低代码平台与AI代理集成是出了名的困难。这个工具解决了这个问题。

  • 🚀 AI就绪: 将复杂的Mendix逻辑(微流、域模型)暴露为干净、AI可读的JSON。
  • ⚡ 快速燃烧(本地): 使用自定义的“Shadow SDK”进行解析 .mpr SQLite数据库和 .mxunit 二进制文件,无需等待Model SDK加载。
  • 🛡️ 循环保险箱: 通过应用DTO转换层,自动处理Mendix SDK中常见的臭名昭著的“循环结构”错误。
  • 🔒 隐私第一: 可以完全离线操作(本地模式),将您的知识产权保留在您的机器上。

主要特点

  • 项目发现: 自动检测工作区中的Mendix项目。
  • 模块浏览: 按模块递归过滤文档(微流、页面)。
  • 阴影解析: 从二进制blob中提取元数据,而无需整个SDK的开销。
  • 官方SDK集成: 当需要绝对精度时,从Mendix Cloud获取权威数据。
  • DTO消毒: 将复杂的Mendix对象映射到平坦、安全的JSON以供AI使用。

安装

先决条件

  • Mendix Studio Pro v10.24.13或更新版本 (对于新的基于SQLite的 .mpr 格式)
  • Node.js(v18或更高版本)
  • 本地Mendix项目(Git支持或本地文件)

设置

  1. 克隆存储库:

    git clone https://github.com/YourUsername/mendix-local-mcp.git
    cd mendix-local-mcp
    
  2. 安装依赖关系:

    npm install
    
  3. 构建项目:

    npm run build
    

配置

要解锁的全部功能 官方SDK (云模式),您必须配置您的Mendix个人访问令牌(PAT)。

将服务器添加到MCP客户端配置中(例如。, mcp_config.json 适用于反重力或克劳德桌面):

{
  "mcpServers": {
    "mendix-local-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/mendix-local-mcp/build/server.js"],
      "env": {
        "MENDIX_TOKEN": "your_generated_pat_string",
        "MENDIX_USERNAME": "your_email@domain.com"
      }
    }
  }
}

注: 在Mendix开发人员门户中生成您的PAT,范围如下 mx:modelrepository:repo:read.


用法

运行后,服务器向您的AI代理公开以下工具:

本地模式工具(脱机)

这些工具使用“Shadow SDK”,不需要令牌。

  • list_local_documents(module_name?)
    • 列出项目中的所有文档。可选模块过滤器。
  • get_domain_model(module_name)
    • 使用解析提取简化的域模型。
  • inspect_local_microflow(microflow_name)
    • 读取二进制定义以显示微流逻辑。
  • inspect_database_schema(table_name?)
    • (调试)检查内部 .mpr SQLite模式。

云模式工具(在线)

这些工具使用Mendix官方SDK。

  • get_module_entities_sdk(module_name, project_id, branch?)
    • 建议用于重构。 从Mendix Cloud获取域模型的100%准确、经过净化的JSON表示。

项目结构

mendix-local-mcp/
├── src/
│   ├── index.ts          # Main entry point (SDK implementation)
│   ├── server.ts         # MCP Server definition and Tool handlers
│   ├── mprReader.ts      # Shadow SDK: SQLite connection & query logic
│   ├── mendixParser.ts   # Shadow SDK: Binary stream parser for .mxunit
│   └── mappers.ts        # Official SDK: DTO definitions (Entity, Attribute...)
├── build/                # Compiled JavaScript output
├── package.json          # Dependencies & Scripts
└── tsconfig.json         # TypeScript configuration

贡献

欢迎投稿!如果您想改进二进制解析器或添加更多DTO映射器:

  1. 分叉存储库。
  2. 创建要素分支(git checkout -b feature/amazing-feature).
  3. 提交您的更改(git commit -m 'Add some amazing feature').
  4. 推到分支(git push origin feature/amazing-feature).
  5. 打开拉取请求。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。