Skip to main content
Glama
yctimlin

Excalidraw MCP Server

by yctimlin

Excalidraw MCP Server: мощный API для рисования и интеграции LLM

📣 НОВОСТИ: Версия 1.0.0 теперь опубликована в npm! Вы можете запустить Excalidraw MCP напрямую с помощью npx excalidraw-mcp без установки. Настройка не требуется — просто запустите и наслаждайтесь!

Комплексный сервер Model Context Protocol (MCP), который обеспечивает бесшовное взаимодействие с диаграммами и чертежами Excalidraw. Этот сервер предоставляет LLM (большие языковые модели) возможность создавать, изменять, запрашивать и манипулировать чертежами Excalidraw через структурированный, удобный для разработчиков API.

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

Вы можете запустить сервер Excalidraw MCP напрямую с помощью npx, не устанавливая ничего:

npx excalidraw-mcp

Если вы предпочитаете установить его глобально:

npm install -g excalidraw-mcp
excalidraw-mcp

Параметры

Доступны следующие параметры командной строки:

-d, --debug            Enable debug logging
-?, --help             Show this help message

Примечание: следующие параметры в настоящее время полностью функциональны только в версии Docker:

-p, --port <port>      Port to run the server on (default: 3000)
-h, --host <host>      Host to bind the server to (default: localhost)
-m, --mode <mode>      Transport mode: 'stdio' or 'http' (default: stdio)

Примеры

Запустить с параметрами по умолчанию:

npx excalidraw-mcp

Включить ведение журнала отладки:

npx excalidraw-mcp --debug

Related MCP server: Excalidraw MCP Server

Функции

  • Полный контроль элементов Excalidraw : создание, обновление, удаление и запрос любого элемента Excalidraw.

  • Расширенные возможности управления элементами : группировка, выравнивание, распределение, блокировка и разблокировка элементов.

  • Управление ресурсами : доступ и изменение информации о сцене, библиотеках, темах и элементах.

  • Простая интеграция : работает с Claude Desktop и другими платформами LLM

  • Поддержка Docker : простое развертывание с возможностью контейнеризации

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

Создание и изменение элементов

  • создать_элемент

    • Создайте новый элемент Excalidraw (прямоугольник, эллипс, ромб и т. д.)

    • Требуемые входные данные: type , координаты x , y

    • Дополнительные входные данные: размеры, цвета, свойства стиля

  • обновить_элемент

    • Обновить существующий элемент Excalidraw по идентификатору

    • Требуемые данные: id обновляемого элемента.

    • Необязательные входные данные: любое свойство элемента для изменения

  • удалить_элемент

    • Удалить элемент Excalidraw

    • Требуемый ввод: id удаляемого элемента.

  • элементы_запроса

    • Элементы запроса с дополнительной фильтрацией

    • Дополнительные входные данные: type для фильтрации по типу элемента, filter объектов с помощью пар ключ-значение

Управление ресурсами

  • получить_ресурс

    • Получить определенный ресурс, например информацию о сцене или всех элементах

    • Требуемые входные данные: тип resource (сцена, библиотека, тема, элементы)

Организация элемента

  • group_elements

    • Группировка нескольких элементов вместе

    • Требуемые входные данные: elementIds массив идентификаторов элементов для группировки

  • разгруппировать_элементы

    • Разгруппировать группу элементов

    • Требуемый ввод: groupId группы, которую нужно разгруппировать.

  • выравнивание_элементов

    • Выровнять несколько элементов на основе указанного выравнивания

    • Необходимые входные данные: массив elementIds и alignment (слева, по центру, справа, сверху, посередине, снизу)

  • распределять_элементы

    • Распределяйте элементы равномерно по пространству

    • Необходимые входные данные: массив elementIds и direction (горизонтальное или вертикальное)

  • lock_elements

    • Блокировка элементов для предотвращения изменений

    • Требуемые входные данные: массив elementIds элементов для блокировки

  • разблокировать_элементы

    • Разблокируйте элементы, чтобы разрешить модификацию

    • Требуемые входные данные: массив elementIds элементов для разблокировки

Интеграция с Claude Desktop

Чтобы использовать этот сервер с приложением Claude Desktop, добавьте следующую конфигурацию в раздел «mcpServers» вашего claude_desktop_config.json :

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

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

Чтобы использовать этот сервер с приложением Cursor, добавьте следующую конфигурацию в раздел «mcpServers» вашего .cursor/mcp.json :

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

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

Чтобы использовать этот сервер с Cursor, создайте файл .cursor/mcp.json в своей рабочей области со следующей конфигурацией:

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

Обязательно:

  1. Замените /path/to/your/directory на фактический абсолютный путь к вашей установке mcp_excalidraw.

  2. Создайте каталог .cursor если он не существует.

  3. Убедитесь, что путь к index.js правильный и файл существует.

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

{
  "mcpServers": {
    "excalidraw": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "mcp/excalidraw"],
      "env": {
        "LOG_LEVEL": "info",
        "DEBUG": "false"
      }
    }
  }
}

Руководство по установке

Установка НПМ

# Install globally
npm install -g excalidraw-mcp

# Run the server
excalidraw-mcp

Настройка локального развития

# Clone the repository
git clone <repository-url>
cd excalidraw-mcp

# Install dependencies
npm install

# Start the server
npm start

Установка докера

# Build the Docker image
docker build -t mcp/excalidraw .

# Run the container
docker run -i --rm mcp/excalidraw

Параметры конфигурации

Сервер можно настроить с помощью следующих переменных среды:

  • LOG_LEVEL — Установить уровень ведения журнала (по умолчанию: «info»)

  • DEBUG — включить режим отладки (по умолчанию: «false»)

  • DEFAULT_THEME — Установить тему по умолчанию (по умолчанию: «светлая»)

Примеры использования

Вот несколько практических примеров использования сервера Excalidraw MCP:

Создание элемента «Прямоугольник»

{
  "type": "rectangle",
  "x": 100,
  "y": 100,
  "width": 200,
  "height": 100,
  "backgroundColor": "#ffffff",
  "strokeColor": "#000000",
  "strokeWidth": 2,
  "roughness": 1
}

Запрос определенных элементов

{
  "type": "rectangle",
  "filter": {
    "strokeColor": "#000000"
  }
}

Группировка нескольких элементов

{
  "elementIds": ["elem1", "elem2", "elem3"]
}

Лицензия

Этот сервер Excalidraw MCP лицензирован по лицензии MIT. Вы можете свободно использовать, изменять и распространять программное обеспечение в соответствии с условиями лицензии MIT. Для получения более подробной информации см. файл LICENSE в репозитории проекта.

Разработка

Клонируйте репозиторий и установите зависимости:

git clone <repository-url>
cd excalidraw-mcp
npm install

Запустите сервер разработки:

npm run dev
Install Server
A
license - permissive license
B
quality
C
maintenance

Maintenance

Maintainers
5dResponse time
Release cycle
Releases (12mo)
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/yctimlin/mcp_excalidraw'

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