Skip to main content
Glama

diag2md-mcp

Сервер Model Context Protocol (MCP), предоставляющий ИИ-агентам программирования архитектурные ограничения C4 и UML для Draw.io, а также возможности преобразования диаграмм.

GitHub Release License: MIT TypeScript

diag2md-mcp связывает архитектурные диаграммы Draw.io (.xml, .drawio) с ИИ-агентами программирования (такими как Antigravity, Cursor, Claude Desktop и MCP-клиенты VS Code), преобразуя диаграммы C4 и UML в структурированный Mermaid Markdown в реальном времени.

Работает на базе diag2md.


Ключевые возможности

  • Автоматическое обнаружение в рабочем пространстве: сканирует каталоги проекта на предмет файлов диаграмм Draw.io, соответствующих настраиваемым glob-шаблонам (**/architecture/**/*.xml, **/*.drawio).

  • Высокопроизводительное преобразование в памяти: преобразует XML-модели Draw.io в Mermaid C4 и UML Markdown в памяти, без накладных расходов на запуск подпроцессов.

  • Поставщик контекста для ИИ (convert_diagrams_read): динамически считывает и преобразует диаграммы, предоставляя богатый архитектурный контекст непосредственно ИИ-ассистентам программирования во время чат-сессий.

  • Пакетная синхронизация диаграмм (convert_diagrams_write): поддерживает архитектурную документацию в актуальном состоянии, создавая .md-файлы рядом с исходными диаграммами.


Related MCP server: drawio-mcp

Быстрый старт

Запуск через npx

Вы можете запустить MCP-сервер напрямую без предварительной установки:

npx -y diag2md-mcp

Глобальная установка

npm install -g diag2md-mcp

Конфигурация MCP-сервера

Чтобы подключить diag2md-mcp к вашему любимому ИИ-ассистенту или MCP-клиенту, добавьте сервер в файл конфигурации клиента (например, mcp_config.json, claude_desktop_config.json, настройки MCP в Cursor или Antigravity).

Рекомендуемый способ (глобально установленный пакет)

{
  "mcpServers": {
    "diag2md-mcp": {
      "command": "diag2md-mcp"
    }
  }
}

Альтернатива: локально собранный исходный код

{
  "mcpServers": {
    "diag2md-mcp": {
      "command": "node",
      "args": ["/path/to/diag2md-mcp/dist/index.js"]
    }
  }
}

Альтернатива: по требованию через npx

{
  "mcpServers": {
    "diag2md-mcp": {
      "command": "npx",
      "args": ["-y", "diag2md-mcp"]
    }
  }
}

Справочник MCP-инструментов

diag2md-mcp предоставляет ИИ-агентам программирования 3 основных инструмента:

Имя инструмента

Описание

Аргументы

list_diagrams

Обнаруживает все файлы архитектурных диаграмм Draw.io (.xml, .drawio) в рабочем пространстве, соответствующие glob-шаблонам.

patterns (необязательный string[]), ignore (необязательный string[])

convert_diagrams_write

Пакетно сканирует файлы диаграмм в рабочем пространстве по glob-шаблонам, преобразует их и записывает обновлённые .md-файлы на диск.

patterns (необязательный string[]), diagramType (необязательный "c4" | "uml")

convert_diagrams_read

Пакетно сканирует файлы диаграмм в рабочем пространстве и возвращает преобразованный Mermaid Markdown непосредственно как контекст для ИИ-ассистента.

patterns (необязательный string[]), diagramType (необязательный "c4" | "uml")


Конфигурация сервера

Настройки MCP-сервера можно изменить с помощью переменных окружения:

Переменная окружения

Описание

Значение по умолчанию

DIAG2MD_PATTERNS

Glob-шаблоны через запятую для обнаружения файлов диаграмм.

**/architecture/**/*.xml, **/architecture/*.xml, **/*.drawio

DIAG2MD_IGNORE

Glob-шаблоны через запятую для игнорирования при поиске файлов.

**/node_modules/**, **/dist/**, **/.git/**

DIAG2MD_TYPE

Тип диаграммы преобразования по умолчанию (c4 или uml).

c4

Пример конфигурации с шаблонами env

Вы можете настроить собственные шаблоны поиска непосредственно в JSON-конфигурации MCP-сервера с помощью блока env:

{
  "mcpServers": {
    "diag2md-mcp": {
      "command": "diag2md-mcp",
      "env": {
        "DIAG2MD_PATTERNS": "**/architecture/**/*.xml, **/docs/**/*.drawio",
        "DIAG2MD_IGNORE": "**/tmp/**, **/node_modules/**",
        "DIAG2MD_TYPE": "c4"
      }
    }
  }
}

Пример динамического вызова инструмента с параметром patterns

ИИ-ассистенты или инструменты также могут динамически переопределять шаблоны поиска для каждого запроса:

{
  "name": "convert_diagrams_read",
  "arguments": {
    "patterns": [
      "**/architecture/**/*.xml",
      "**/docs/**/*.drawio"
    ]
  }
}

Разработка

# Clone the repository
git clone https://github.com/diag2md/diag2md-mcp.git
cd diag2md-mcp

# Install dependencies
npm install

# Build TypeScript to JavaScript dist/
npm run build

# Run unit tests
npm run test

# Run type checker
npm run typecheck

Лицензия

MIT © polymatic.ventures

Install Server
F
license - not found
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    B
    quality
    A
    maintenance
    Enables AI agents to programmatically create, modify, and analyze Draw.io diagrams through the Model Context Protocol. Supports generating architectural diagrams, flowcharts, and visualizations with bidirectional communication between AI systems and Draw.io.
    13
    74
    1,443
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables AI assistants to generate professional UML diagrams (class, use case, activity, sequence) from natural language descriptions, producing editable .drawio files compatible with diagrams.net.
    7
    74
    ISC

View all related MCP servers

Related MCP Connectors

  • Let Claude, Cursor, or ChatGPT author Mermaid diagrams your team can read and share.

  • Generate dynamic Mermaid diagrams and charts with AI assistance. Customize styles and export diagr…

  • AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).

View all MCP Connectors

Latest Blog Posts

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/diag2md/diag2md-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server