API и MCP
REST API и сервер MCP LetDraw позволяют внешним инструментам и AI-клиентам (Claude, Cursor) работать с вашими диаграммами: перечислять, читать, создавать, обновлять, генерировать диаграмму из кода, преобразовывать обратно в код, делиться и генерировать по запросу.
Кто может использовать
Заголовок раздела «Кто может использовать»API и MCP доступны пользователям Pro и Enterprise. В самостоятельно размещённых установках ими может пользоваться каждый авторизованный участник. Бесплатные и гостевые пользователи не могут создавать токены.
1. Создание токена
Заголовок раздела «1. Создание токена»- Войдите в LetDraw с учётной записью Pro/Enterprise.
- Перейдите в Settings -> Developer.
- Создайте токен: дайте ему имя, выберите области действия (см. ниже) и при желании ограничьте его одним рабочим пространством.
- Сгенерированный токен
ld_live_...показывается только один раз. Сохраните его в надёжном месте. Если он утечёт, отзовите его на той же странице.
Области действия
Заголовок раздела «Области действия»| Область | Разрешение |
|---|---|
diagrams:read | Чтение рабочих пространств, папок и диаграмм |
diagrams:write | Создание, обновление, удаление и совместный доступ к диаграммам |
export | Экспорт диаграммы в код Mermaid/D2 |
ai:generate | Генерация диаграммы по запросу (AI) |
2. Аутентификация
Заголовок раздела «2. Аутентификация»Отправляйте токен как значение Bearer в заголовке Authorization в каждом запросе:
Authorization: Bearer ld_live_...Дополнительный заголовок apikey не нужен.
REST API
Заголовок раздела «REST API»Базовый URL: https://api.letdraw.com/api-v1
Все ответы в формате JSON. Ошибки возвращаются со стандартным телом: { "error": { "code", "message" } }.
| Метод | Путь | Описание | Область |
|---|---|---|---|
| GET | / | Информация об API (области, конечные точки) | any |
| GET | /workspaces | Ваши рабочие пространства (с ролью) | read |
| GET | /folders?workspace=<id> | Папки в рабочем пространстве | read |
| GET | /documents?workspace=<id> | Диаграммы в рабочем пространстве (с пагинацией) | read |
| GET | /documents?folder=<id> | Диаграммы в папке (с пагинацией) | read |
| POST | /documents | Создать диаграмму | write |
| GET | /documents/:id | Диаграмма + сцена (элементы) | read |
| PATCH | /documents/:id | Обновить имя и/или элементы | write |
| DELETE | /documents/:id | Удалить диаграмму | write |
| POST | /documents/from-code | Сгенерировать диаграмму из кода | write |
| POST | /documents/generate | Сгенерировать диаграмму по запросу (AI) | ai:generate |
| GET | /documents/:id/export?format=mermaid|d2 | Экспортировать диаграмму в код | export |
| POST | /documents/:id/share | Создать публичную ссылку только для чтения | write |
| DELETE | /documents/:id/share | Удалить публичную ссылку | write |
Пагинация
Заголовок раздела «Пагинация»Конечные точки списков принимают ?limit= (1-100, по умолчанию 50) и ?cursor=. Ответ
возвращает nextCursor; передайте его как cursor, чтобы получить следующую страницу.
Ограничение частоты
Заголовок раздела «Ограничение частоты»120 запросов в минуту на токен. При превышении возвращается 429 rate_limited.
Примеры
Заголовок раздела «Примеры»# List workspacescurl -H "Authorization: Bearer ld_live_..." \ https://api.letdraw.com/api-v1/workspaces
# Generate a diagram from a docker-composecurl -X POST -H "Authorization: Bearer ld_live_..." -H "Content-Type: application/json" \ -d '{"workspaceId":"<id>","code":"services:\n web:\n image: nginx\n depends_on: [db]\n db:\n image: postgres\n"}' \ https://api.letdraw.com/api-v1/documents/from-code
# Export a diagram to Mermaidcurl -H "Authorization: Bearer ld_live_..." \ "https://api.letdraw.com/api-v1/documents/<id>/export?format=mermaid"Сервер MCP
Заголовок раздела «Сервер MCP»Клиенты Model Context Protocol (MCP) (Claude, Cursor) могут подключаться к LetDraw и работать с вашими диаграммами через инструменты.
- URL:
https://api.letdraw.com/mcp - Транспорт: Streamable HTTP (stateless JSON-RPC 2.0)
- Аутентификация:
Authorization: Bearer ld_live_...
Инструменты
Заголовок раздела «Инструменты»| Инструмент | Описание |
|---|---|
list_workspaces | Доступные рабочие пространства |
list_diagrams | Диаграммы в рабочем пространстве/папке |
get_diagram | Диаграмма + сцена |
create_diagram | Создать диаграмму из массива элементов (формат LetDraw или Excalidraw, автоопределяется) |
update_diagram | Обновить имя/элементы |
delete_diagram | Удалить диаграмму |
diagram_from_code | compose, kubernetes, dot, plantuml, terraform, helm, sql -> диаграмма |
export_to_code | Диаграмма -> Mermaid/D2 |
share_diagram | Создать публичную ссылку |
unshare_diagram | Удалить публичную ссылку |
generate_from_prompt | Диаграмма из естественного языка (AI) |
Настройка клиента
Заголовок раздела «Настройка клиента»Готовые блоки конфигурации с вашим собственным токеном можно скопировать со страницы
Settings -> Developer. Замените ld_live_... ниже своим токеном.
~/.cursor/mcp.json (глобально) или .cursor/mcp.json в корне проекта:
{ "mcpServers": { "letdraw": { "url": "https://api.letdraw.com/mcp", "headers": { "Authorization": "Bearer ld_live_..." } } }}Claude Desktop
Заголовок раздела «Claude Desktop»Claude Desktop подключается к удалённому HTTP-серверу через мост mcp-remote (требуется
Node.js). Файл конфигурации:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{ "mcpServers": { "letdraw": { "command": "npx", "args": [ "-y", "mcp-remote", "https://api.letdraw.com/mcp", "--header", "Authorization:Bearer ld_live_..." ] } }}После сохранения перезапустите клиент. Примеры запросов:
- “List my LetDraw workspaces.”
- “Turn this docker-compose into a diagram in letdraw: …”
- “Export diagram
as Mermaid.” - “Generate an OAuth login flow diagram.”
- “Draw this cloud architecture in letdraw: …” (свободная композиция)
Как сказать AI «нарисуй это в LetDraw»
Заголовок раздела «Как сказать AI «нарисуй это в LetDraw»»create_diagram и update_diagram принимают массив элементов в двух форматах:
собственная схема элементов LetDraw или формат Excalidraw. Формат автоопределяется, а
элементы Excalidraw преобразуются в элементы LetDraw на стороне сервера (включая цветные
вложенные контейнеры, привязанные к фигурам подписи, стрелки с привязками, текст и кадры).
Что это означает: когда вы говорите ChatGPT, Gemini или Claude «нарисуй эту архитектуру в LetDraw», модель создаёт Excalidraw JSON, который она уже очень хорошо знает по своим обучающим данным, и отправляет его через MCP; LetDraw рисует точный эквивалент. Какое бы качество компоновки ни было у модели, именно оно и получается в LetDraw.
Встраивание диаграммы (render.svg)
Заголовок раздела «Встраивание диаграммы (render.svg)»Вы можете встроить публично опубликованную диаграмму как SVG в такие места, как README
или Notion. Сначала получите токен доступа через share_diagram (или REST .../share),
затем:
https://api.letdraw.com/render-svg?token=<share-token>Эта конечная точка возвращает image/svg+xml и не требует API-токена (рендерятся только
диаграммы с общим доступом), так что вы можете использовать её прямо внутри <img src="...">.