# Smart Drawio

Локальный сервер для проверки разметки, обновления стилей и генерации схем draw.io в формате XML прямо через чат с ассистентом.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 366
- Автор: yunshenwuchuxun
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/yunshenwuchuxun/smart-drawio-next/tree/HEAD/packages/mcp
- Обновлён: 2026-10-14
- HTML: https://affpapa.org/nevibecode/mcp/smart-drawio

## Что делает

Сервер работает через `stdio` и обрабатывает несжатый XML для draw.io. Он находит ошибки в разметке и восстанавливает закрывающие теги без запуска браузера или редактора draw.io. Результат возвращается в виде текста в память клиента, а сохранять ли её в файл, решает сам агент.

Проверка синтаксиса и стилизация выполняются локально без ключей доступа. А вот генерация диаграмм через `generate_drawio` обращается к внешней модели. Для неё нужно настроить переменные окружения с провайдером (`openai` или `anthropic`), адресом эндпоинта и ключом. Сжатые файлы `.drawio` и старый формат JSON сервер не прочитает, пока их не распакуют в обычный XML.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `SMART_DRAWIO_PROVIDER`, `SMART_DRAWIO_BASE_URL`, `SMART_DRAWIO_API_KEY`, `SMART_DRAWIO_MODEL` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env SMART_DRAWIO_PROVIDER=<SMART_DRAWIO_PROVIDER> --env SMART_DRAWIO_BASE_URL=<SMART_DRAWIO_BASE_URL> --env SMART_DRAWIO_API_KEY=<SMART_DRAWIO_API_KEY> --env SMART_DRAWIO_MODEL=<SMART_DRAWIO_MODEL> --transport stdio mcp -- npx -y @yunshenwuchuxun/smart-drawio-mcp
```
Вместо <…> подставьте свои значения

### Codex

**Командой платформы**
```bash
codex mcp add mcp --env SMART_DRAWIO_PROVIDER=<SMART_DRAWIO_PROVIDER> --env SMART_DRAWIO_BASE_URL=<SMART_DRAWIO_BASE_URL> --env SMART_DRAWIO_API_KEY=<SMART_DRAWIO_API_KEY> --env SMART_DRAWIO_MODEL=<SMART_DRAWIO_MODEL> -- npx -y @yunshenwuchuxun/smart-drawio-mcp
```
Вместо <…> подставьте свои значения

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "mcp": {
            "command": "npx",
            "args": [
                "-y",
                "@yunshenwuchuxun/smart-drawio-mcp"
            ],
            "env": {
                "SMART_DRAWIO_PROVIDER": "<SMART_DRAWIO_PROVIDER>",
                "SMART_DRAWIO_BASE_URL": "<SMART_DRAWIO_BASE_URL>",
                "SMART_DRAWIO_API_KEY": "<SMART_DRAWIO_API_KEY>",
                "SMART_DRAWIO_MODEL": "<SMART_DRAWIO_MODEL>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@yunshenwuchuxun/smart-drawio-mcp"
            ],
            "env": {
                "SMART_DRAWIO_PROVIDER": "<SMART_DRAWIO_PROVIDER>",
                "SMART_DRAWIO_BASE_URL": "<SMART_DRAWIO_BASE_URL>",
                "SMART_DRAWIO_API_KEY": "<SMART_DRAWIO_API_KEY>",
                "SMART_DRAWIO_MODEL": "<SMART_DRAWIO_MODEL>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e SMART_DRAWIO_PROVIDER=<SMART_DRAWIO_PROVIDER> -e SMART_DRAWIO_BASE_URL=<SMART_DRAWIO_BASE_URL> -e SMART_DRAWIO_API_KEY=<SMART_DRAWIO_API_KEY> -e SMART_DRAWIO_MODEL=<SMART_DRAWIO_MODEL> mcp npx -y @yunshenwuchuxun/smart-drawio-mcp
```
Вместо <…> подставьте свои значения

## Когда брать
- найти ошибки в связях и структуре тегов XML-схемы draw.io
- восстановить незакрытые теги в повреждённой диаграмме
- применить готовые стили и цветовые темы к элементам схемы
- сгенерировать разметку диаграммы по текстовому описанию

## Примеры запросов агенту
- Проверь файл `arch.drawio` через валидацию и найди некорректные связи между блоками.
- Почини незакрытые теги в этой XML-схеме и примени стиль researchClean.
- Сделай блок-схему процесса авторизации для draw.io и верни готовый XML.

## Похожие
- [Next AI Draw.io](https://affpapa.org/nevibecode/mcp/next-ai-drawio.md) — MCP-сервер · ★ 36398
- [tldraw](https://affpapa.org/nevibecode/mcp/tldraw.md) — MCP-сервер · ★ 51091
- [Figma-Context-MCP](https://affpapa.org/nevibecode/mcp/figma-context-mcp.md) — MCP-сервер · ★ 16062
- [Agent-Native Assets](https://affpapa.org/nevibecode/mcp/agent-native-assets.md) — MCP-сервер · ★ 7506
- [Remove AI Watermarks](https://affpapa.org/nevibecode/mcp/remove-ai-watermarks.md) — MCP-сервер · ★ 6114
- [Dembrandt](https://affpapa.org/nevibecode/mcp/dembrandt.md) — MCP-сервер · ★ 3821

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
