sketchbord-mcp
sketchbord-mcp
Сервер MCP, который позволяет ИИ-агенту визуализировать задачу на доске Sketchbord — и читать доску обратно, включая то, что нарисовал человек.
Смысл не в том, чтобы «нарисовать блок-схему». Агент описывает задачу как набор секций — систему, нарисованную в виде столбцов с подписанными стрелками между ними, чек-лист, интеллект-карту, воронку, диаграмму Исикавы, диаграмму последовательности, дорожную карту, стену стикеров, а иногда и поток — а сервер раскладывает их как постер, так что один взгляд объясняет задачу.
Одна картина, а не дерево страниц. Раньше доски обрастали уровнями детализации: блок с детьми становился отдельным уровнем, верхний уровень почти ничего не говорил, а часть, которая что-то объясняла, лежала на два клика вглубь, куда никто не смотрел. Секция lanes говорит об этом одним видом — части рядом, что каждая делает внутри, и что между ними передаётся, написано на стрелках.
Четыре вещи делают это чем-то большим, чем API для рисования:
Содержание определяет структуру, а не тип задачи. Нет шаблона доски:
pick_formсопоставляет форму того, что у вас есть — порядок, иерархию, сравнение, цикл, набор причин — с формой, которая это несёт, и говорит, когда каждая форма не подходит. Две доски для двух задач не должны выглядеть одинаково, а секция, повторяющая соседнюю, — это та, которую читатель вынужден перечитывать зря.Она рисует всей доской. Пиктограммы из собственного каталога доски (
list_icons— нарисованные той же рукой, а не вставленные картинки), цвет для каждой части, стрелки, которые говорят, что по ним передаётся, и карточки, которые набрасывают экран, который они описывают (ui: поле поиска, кнопка, три строки списка). Картина, где каждый элемент — прямоугольник со словами, — это та, которую читателю приходится читать.Правки инкрементальны.
visualize_taskсmode: mergeпереписывает только те секции, которые вы назвали — всё остальное остаётся на месте, включая собственные стикеры и стрелки пользователя.read_boardсообщает о таких добавлениях пользователя обратно (userMarks), так что агент может реагировать на то, что нарисовал человек, например, превращать это в изменения кода.Она читает рисунок обратно. Агент рисует вслепую: он никогда не узнаёт, что его картина вышла как четыре вложенных маркированных списка, что половина стрелок ничего не говорит, что подпись разрослась в предложение. Поэтому каждый рисунок отвечает тем, чем рисунок измеримо является — и ничем больше, потому что правило («на доске должно быть пять секций») — это форма, повторяемая независимо от задачи, из-за чего все доски становятся похожими. Замечания — это наблюдения, которые можно принять или проигнорировать для каждой задачи, а доска, в которой нет ничего достойного замечания, не получает замечаний вовсе.
Инструменты
Инструмент | Что делает |
| Инструмент, который рисует. Задача как секции — 27 форм: lanes (система как столбцы + подписанные стрелки) / process / glossary / note / list / steps / checklist / tree / mindmap / pyramid / venn / flow / states / cycle / sequence / funnel / timeline / roadmap / fishbone / table / quadrants / proscons / metrics / cards / stickies / kanban / legend. |
| Правки, которые не являются переписыванием секции: |
| Читает уровень обратно: секции (id, kind, title, texts) + |
| Карта от формы вашего содержимого к форме, которая его несёт, с указанием случаев, для которых каждая форма не подходит. Без побочных эффектов. |
| Несколько разных композиций для запроса — отправные точки, которые нужно сокращать и смешивать, а не шаблоны для заполнения. Без побочных эффектов. |
| Идентификаторы пиктограмм, которые можно вставлять в |
| Создаёт пустую доску и возвращает её id/URL (ключи аккаунта). |
| Перечисляет доступные доски с id и URL, сначала новые. |
| Показывает, что открывает ключ: одну привязанную доску или ключ аккаунта, который может создавать доски. |
Related MCP server: Overboard Studio MCP Server
Настройка
Вам нужен API-ключ (bord_sk_…) с sketchbord.ru:
Ключ аккаунта (рекомендуется) — Мои доски → API-ключи → создайте ключ без выбора доски. Он может создавать доску для каждой задачи и рисовать на любой доске, которую вы можете редактировать.
Ключ доски — та же страница с выбранной доской или внутри доски: меню (☰) → «Интеграции с ИИ». Привязан к одной доске, так что
boardIdникогда не нужен.
Настройка MCP-клиента
Сервер говорит по MCP через stdio. Ключ — это вся конфигурация: есть один размещённый Sketchbord, и сервер знает, где он находится.
Claude Code / Claude Desktop (.mcp.json или claude_desktop_config.json):
{
"mcpServers": {
"sketchbord": {
"command": "npx",
"args": ["-y", "sketchbord-mcp"],
"env": {
"BORD_API_KEY": "bord_sk_xxx"
}
}
}
}Из клона вместо этого:
npm install
npm run build
# then "command": "node", "args": ["/path/to/sketchbord-mcp/dist/index.js"]Окружение
Var | Required | Default | Notes |
| да | — | Ключ |
| нет | — | Доска по умолчанию для ключа аккаунта, чтобы агенту не приходилось повторять её. |
| нет |
| Только для разработки. Должен быть |
| нет |
| Таймаут запроса, чтобы зависший API не мог подвесить ход агента. |
| нет |
| Язык, на котором API отвечает об ошибках ( |
Два вида ключей
Ключ аккаунта (без доски) — действует от имени вашего аккаунта, поэтому агент может создавать доску под каждую задачу (
create_boardилиvisualize_taskсnewBoard) и рисовать на любой доске, которую вы можете редактировать. ЗадайтеBORD_BOARD_ID, если предпочитаете, чтобы по умолчанию использовался один проект.Ключ доски — привязан к одной доске, определяется по ключу.
Анатомия секции
У каждой секции есть стабильный id (именно он делает правки инкрементальными), kind, title, а затем те поля, которые использует её вид:
items(note/tag/color/done/span/children) — списки, шаги, чек-листы, деревья, интеллект-карты, стикеры, карточки, таймлайны, метрики, полосы воронки (от широкой к узкой) или пирамиды (от вершины), шаги цикла, множества диаграммы Венна, категории причин диаграммы «рыбья кость»;groups— опоры постераlanes(id/subtitle/icon/color, а такжеbareдля колонки людей по левому краю), колонки канбана, 4 квадранта, две стороныproscons(первая — за, вторая — против), дорожкиroadmap;links— только дляlanes: стрелки между опорами (from/toпо id дорожки, позиции или заголовку,labelдля того, что по ней перемещается,both,dashed);nodes+edges— flow / states, а такжеsequence, где узел — участник, а ребро — сообщение;columns+rows—table; дляroadmapcolumns— это периоды, аspanкаждого элемента называет те, которые перекрывает его полоса;text— абзацnote, эффект в головеfishbone, подпись для пересеченияvenn.
Любая секция, элемент или группа может нести icon (id из list_icons; всё остальное отбрасывается, а не рисуется как заглушка). Карточка внутри секции lanes может нести ui вместо children — field / button / row / chip — что набрасывает интерфейс, который она описывает.
width — это narrow / normal / wide — подсказка о пропорции, кроме lanes, где она задаёт ширину одной опоры. accent в плане задаёт цвет доски, так что две доски не обязаны выглядеть одинаково.
Типы узлов блок-схемы: process (шаг), decision (ветвление — используйте подписанные рёбра), error (сбой), start/end (терминалы).
Стоимость в токенах
Определения инструментов, которые публикует этот сервер, занимают около 21 КБ (~6 000 токенов), и они находятся в контексте агента при каждом запросе. Большая часть — это схема visualize_task, что является ценой DSL, который агент может заполнить без лишнего круга запросов. Всё остальное намеренно тонкое: подробные указания о том, какую форму выбрать, живут в pick_form и sketch_board, которые ничего не стоят, пока их не вызовут, а read_board ограничивает свой ответ 60 000 символов, чтобы одна доска не могла заполнить окно контекста.
Чтение досок — это граница доверия
read_board возвращает текст, написанный другими людьми. Сервер оборачивает его в явные
разделители «недоверенных данных» и ограничивает его размер, потому что этот контент попадает
в модель в том же контексте, что и ваши инструкции — стикер с надписью «игнорируй предыдущие
инструкции» — это попытка prompt-инъекции, и его следует читать как то, что
пользователь написал на белой доске, а не как команду.
Примеры запросов
Объясни на доске, как устроен сервис: фронтенд, API, воркеры, Postgres и S3.
Секция lanes: опора на каждую часть, с карточкой для каждого её действия, иконкой на каждой карточке и links между опорами с подписями «HTTP request», «SQL», «file URL». Полоса process под ней, если сквозной путь стоит расписать, и полоса glossary, если читатель не из команды. ui на карточках фронтенда превращает «есть экран поиска» в картинку этого экрана.
Нарисуй задачу: импорт прайс-листа из CSV в каталог.
Фиксированного ответа нет. Агент спрашивает, что нужно знать читателю, и выбирает форму под каждую часть: потери строк на каждом шаге импорта — это funnel с числами в note; несколько несвязанных причин сбоя — fishbone; что трогать в коде — tree; что и в каком порядке происходит между CSV, парсером и каталогом — sequence. Затем checklist для работы — настоящие чекбоксы, которые отмечает тот, кто её выполняет.
Я нарисовал на доске стрелку и стикер — посмотри и исправь код.
read_board возвращает userMarks, например стикер «нужен повтор здесь!», лежащий на секции flow, и нарисованную от руки стрелку, соединяющую два блока. Агент действует по этому, затем отражает решение обратно через visualize_task (mode: merge) или операцию add_sticky — оставляя остальную часть доски нетронутой.
Замени план и убери легенду.
visualize_task с mode: merge и одной секцией plan, затем update_visual с removeSections: ["legend"]. Карточка plan перерисовывается на месте; всё остальное сохраняет свою позицию.
Разработка
npm install
npm run build # tsc → dist/
npm run typecheck
BORD_API_KEY=bord_sk_… BORD_API_URL=http://localhost:4000 npm startЛицензия
MIT — см. LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
Create, read and live-edit visual boards, Kanban plans, Gantt timelines and diagrams with AI agents.
Read, create and edit noddle diagram boards, browse versions and comment as an AI collaborator.
- KlyaksaOAuthapp.klyaksa
Online whiteboard your AI agent draws on: live shared canvases, solo or with your team.
Real-time collaborative whiteboard — AI agents and humans edit the same board live over MCP.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI agents to programmatically generate, edit, and view Excalidraw diagrams with real-time browser synchronization. It provides a suite of tools for adding shapes, text, and arrows to diagrams through natural language interactions.112,232 npm102MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to create and manage collaborative whiteboards with sticky notes, shapes, charts, and more, directly in Overboard Studio.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to create and manipulate live visual diagrams on an Excalidraw canvas in real-time via MCP tools.2,232 npm127 PyPI15BSD 3-Clause
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to create, modify, and share diagrams on a live Excalidraw canvas through MCP tools, supporting shapes, text, arrows, batch operations, and export to shareable links with images.1,199 npm8MIT