Перейти к содержимому

API и MCP

REST API и сервер MCP LetDraw позволяют внешним инструментам и AI-клиентам (Claude, Cursor) работать с вашими диаграммами: перечислять, читать, создавать, обновлять, генерировать диаграмму из кода, преобразовывать обратно в код, делиться и генерировать по запросу.

API и MCP доступны пользователям Pro и Enterprise. В самостоятельно размещённых установках ими может пользоваться каждый авторизованный участник. Бесплатные и гостевые пользователи не могут создавать токены.

  1. Войдите в LetDraw с учётной записью Pro/Enterprise.
  2. Перейдите в Settings -> Developer.
  3. Создайте токен: дайте ему имя, выберите области действия (см. ниже) и при желании ограничьте его одним рабочим пространством.
  4. Сгенерированный токен ld_live_... показывается только один раз. Сохраните его в надёжном месте. Если он утечёт, отзовите его на той же странице.
ОбластьРазрешение
diagrams:readЧтение рабочих пространств, папок и диаграмм
diagrams:writeСоздание, обновление, удаление и совместный доступ к диаграммам
exportЭкспорт диаграммы в код Mermaid/D2
ai:generateГенерация диаграммы по запросу (AI)

Отправляйте токен как значение Bearer в заголовке Authorization в каждом запросе:

Authorization: Bearer ld_live_...

Дополнительный заголовок apikey не нужен.

Базовый 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 workspaces
curl -H "Authorization: Bearer ld_live_..." \
https://api.letdraw.com/api-v1/workspaces
# Generate a diagram from a docker-compose
curl -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 Mermaid
curl -H "Authorization: Bearer ld_live_..." \
"https://api.letdraw.com/api-v1/documents/<id>/export?format=mermaid"

Клиенты 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_codecompose, 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 подключается к удалённому 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: …” (свободная композиция)

create_diagram и update_diagram принимают массив элементов в двух форматах: собственная схема элементов LetDraw или формат Excalidraw. Формат автоопределяется, а элементы Excalidraw преобразуются в элементы LetDraw на стороне сервера (включая цветные вложенные контейнеры, привязанные к фигурам подписи, стрелки с привязками, текст и кадры).

Что это означает: когда вы говорите ChatGPT, Gemini или Claude «нарисуй эту архитектуру в LetDraw», модель создаёт Excalidraw JSON, который она уже очень хорошо знает по своим обучающим данным, и отправляет его через MCP; LetDraw рисует точный эквивалент. Какое бы качество компоновки ни было у модели, именно оно и получается в LetDraw.

Вы можете встроить публично опубликованную диаграмму как SVG в такие места, как README или Notion. Сначала получите токен доступа через share_diagram (или REST .../share), затем:

https://api.letdraw.com/render-svg?token=<share-token>

Эта конечная точка возвращает image/svg+xml и не требует API-токена (рендерятся только диаграммы с общим доступом), так что вы можете использовать её прямо внутри <img src="...">.