Skip to main content
Glama

diagrams-mcp

Описание

diagrams-mcp — это MCP, который позволяет автоматически генерировать диаграммы из текста или структур JSON. В настоящее время поддерживаются:

  • Диаграммы классов (UML)

  • Диаграммы «сущность-связь» (ER)

  • Генерация с помощью естественного языка

  • Экспорт в SVG с использованием Mermaid

  • Интеграция, разработанная для агентов MCP

Цель состоит в том, чтобы позволить агенту или пользователю описать систему и получить соответствующую диаграмму без ручного написания кода Mermaid.


Related MCP server: MCP Server Mermaid

Установка

  1. Клонировать репозиторий

git clone https://github.com/nacho-mazzoni/diagrams-mcp.git
cd diagrams-mcp
  1. Установить зависимости

npm install
  1. Установить Mermaid CLI (если не установлен)

npm install -g @mermaid-js/mermaid-cli
  1. Проверить установку

mmdc -h

Использование

Этот MCP предназначен для работы совместно с агентом. Рекомендуемый рабочий процесс:

  1. Попросить агента проанализировать код проекта.

  2. Попросить агента сгенерировать JSON с:

    • Обнаруженными классами

    • Сущностями

    • Атрибутами

    • Связями

    • Внесенными изменениями

  3. Передать этот JSON непосредственно в MCP.

  4. MCP автоматически генерирует соответствующую диаграмму.

Это позволяет строить диаграмму на основе реального состояния кода или изменений, внесенных агентом, без необходимости вручную писать код Mermaid.

MCP принимает:

  • Структурированный JSON, сгенерированный агентом

  • Естественный язык, описывающий модель

  • Частичные данные для обновления существующих диаграмм


Интеграция с агентом

Пользователь может интегрировать diagrams-mcp со своим агентом, следуя этому процессу:

  1. Пользователь просит агента проанализировать код или описать систему.

  2. Агент генерирует структурированный JSON с сущностями, классами, атрибутами и связями.

  3. Агент отправляет этот JSON в MCP.

  4. diagrams-mcp автоматически генерирует диаграмму.

  5. Агент возвращает сгенерированный SVG пользователю.

Концептуальный процесс:

Usuario -> Agente -> JSON -> diagrams-mcp -> SVG -> Usuario

Это позволяет диаграмме отражать реальное состояние кода или изменения, внесенные агентом.


Пример JSON, сгенерированного агентом

{
  "entities": [
    { "name": "Usuario", "attributes": ["id", "nombre"] },
    { "name": "Pedido", "attributes": ["id", "fecha"] }
  ],
  "relations": [
    {
      "from": "Usuario",
      "to": "Pedido",
      "fromCard": "1",
      "toCard": "1..*",
      "label": "realiza"
    }
  ]
}

Этот JSON передается непосредственно в MCP для генерации диаграммы.


Структура проекта

diagrams-mcp
│
├── tools
│   ├── classDiagram.js
│   └── erDiagram.js
│
├── parsers
│   ├── textToClass.js
│   └── textToER.js
│
├── index.js
└── package.json

Цель проекта

  • Интеграция с агентами MCP

  • Автоматическая генерация диаграмм во время разработки

  • Поддержка естественного языка

  • Дальнейшее расширение для поддержки других типов диаграмм


Текущее состояние

  • ER-диаграммы с кардинальностью, первичными (PK) и внешними (FK) ключами

  • Диаграммы классов UML

  • Парсер из текста

  • Экспорт в SVG


Пояснения

MCP также поддерживает определение сущностей с атрибутами, первичными (PK) и внешними (FK) ключами с помощью текстовых блоков, разделенных пустыми строками, что позволяет генерировать полные ER-диаграммы из структурированных описаний.

Related MCP Connectors

Related MCP Servers