claude-draw
claude-draw
Рукописный ввод для Claude Code. Claude задаёт визуальный вопрос, на любом удобном вам устройстве появляется холст, вы рисуете ответ, Claude считывает его.
Два режима: пустой холст для наброска идеи и аннотация, когда Claude помещает скриншот и просит вас пометить его. Второй окупает себя, когда описать визуальное изменение словами дольше, чем просто указать на него.
Требования
Node 18 или новее в PATH. Больше ничего. Никаких npm install, никаких зависимостей.
Related MCP server: Shared Whiteboard
Установка
Репозиторий — это собственный маркетплейс с одним плагином, поэтому на новой машине нужны две команды:
/plugin marketplace add ThePhilipWilson/claude-draw
/plugin install claude-draw@claude-drawИли вместо этого поместите его в каталог skills — тогда он будет загружаться в каждой сессии без шага установки:
mkdir -p ~/.claude/skills
cp -r /path/to/claude-draw ~/.claude/skills/В любом случае перезапустите Claude Code. Проверьте с помощью claude plugin list и убедитесь, что MCP-сервер claude-draw подключён.
В плагине нет ничего привязанного к конкретному пути или ОС: лаунчер браузера выбирает start, open или xdg-open в зависимости от платформы, а все пути разрешаются относительно корня плагина.
Использование
Claude управляет им через MCP. Вручную вы ничего не запускаете.
request_drawing— запрашивает у вас набросок или аннотацию и ждёт.draw_status— сообщает, подключён ли холст, и выдаёт вам URL-адреса.open_canvas— открывает холст на машине, где работает Claude.
Введите /draw, чтобы самостоятельно запросить холст.
Холст
Перо, линия, стрелка, прямоугольник, эллипс, заливка и ластик — в шести цветах. Клавиши: P L A B O F E — инструменты, 1-6 — цвет, [ ] — размер, Ctrl+Z — отмена, Ctrl+V — вставить изображение, Ctrl+Enter — отправить. Изображения также можно перетаскивать в окно.
У заливки два представления о границе, и повторный выбор инструмента переключает их. Fill: shape останавливается только на ваших собственных пометках, поэтому нарисованный вами контур заливается сплошным цветом в одно касание, что бы под ним ни находилось. Fill: image останавливается также на границах внутри картинки — для раскрашивания области скриншота, которую вы не обводили. В обоих случаях краска ложится на слой пометок, так что ластик убирает её, не повреждая изображение.
Кнопка Send сначала показывает вам сведённое изображение и подпись, Enter — подтвердить, Esc — вернуться. «Send me a screenshot» — это другое направление: он просит Claude что-то захватить и отправить обратно для аннотирования, что лучше, чем искать файл на планшете. Всё, что находится в поле подписи, отправляется вместе с ним, так что вы можете указать, что хотите увидеть на картинке. «Skip» сообщает Claude, что вы не отвечаете на этот вопрос.
Рисование с другого устройства
По умолчанию выключено: демон привязывается только к loopback, поэтому холст доступен только с этой машины и ниоткуда больше. Включите эту опцию — и планшет, телефон или Chromebook в той же Wi-Fi-сети смогут служить поверхностью для рисования, пока Claude работает на вашем рабочем столе.
Установите
CLAUDE_DRAW_LAN=1в окружении, в котором работает Claude Code, например вsettings.json:{ "env": { "CLAUDE_DRAW_LAN": "1" } }Уже запущенный демон сохраняет старую привязку. Перезапустите Claude Code или попросите Claude выполнить
draw_status— он сообщит, когда работающий демон и настройка расходятся.Попросите Claude выполнить
draw_status, чтобы получить LAN-URL, напримерhttp://192.168.1.20:7331/.Откройте его на устройстве и оставьте вкладку открытой.
Все последующие запросы появляются на этой странице автоматически. Без обновления и повторного открытия.
Добавьте страницу в закладки один раз на каждом устройстве.
Брандмауэр. Входящий TCP на порту 7331 должен быть разрешён для частных сетей.
Windows:
New-NetFirewallRule -DisplayName "Claude draw" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 7331-7340 -Profile Private -RemoteAddress LocalSubnet -Program "<path to node.exe>"из командной строки с правами администратора.macOS: при первом запуске появится запрос на разрешение входящих подключений для node. Согласитесь.
Linux: разрешите порт в том брандмауэре, который вы используете, если он есть.
Безопасность
Демон привязывается только к loopback, если вы не включите эту возможность, поэтому из коробки ничто в вашей сети не сможет до него добраться.
При CLAUDE_DRAW_LAN=1 два направления намеренно остаются раздельными. Любое устройство в локальной сети может загрузить холст и отправить рисунок. Только loopback может создать запрос или остановить демон, поэтому устройство в вашей сети может отвечать на вопросы Claude, но не может управлять вашей сессией. Это стоит знать перед включением: аутентификации нет, так что любой в этой сети может увидеть промпт и изображение, которое вас просили аннотировать.
Конфигурация
Переменная | По умолчанию | Эффект |
|
| Порт, на котором слушает демон |
| unset (off) | Установите |
Структура
claude-draw/
.claude-plugin/plugin.json manifest
.claude-plugin/marketplace.json single-plugin marketplace, for /plugin marketplace add
.mcp.json MCP server registration
package.json pins "type": "commonjs" (see below)
skills/draw/SKILL.md when to use it, how to read a drawing
server/daemon.js long-lived HTTP + SSE daemon
server/canvas.html the canvas page, single file
server/mcp.js stdio MCP server, starts the daemon on demand
test/e2e.js full round-trip test, no fixtures neededpackage.json существует, чтобы зафиксировать "type": "commonjs". Node определяет тип модуля по ближайшему package.json вверх по дереву, поэтому, если поместить этот плагин внутрь проекта, где объявлен "type": "module", каждый require будет выбрасывать ошибку. Не удаляйте его.
Тесты
npm testЗапускает демон на свободном порту, устанавливает реальное SSE-соединение, отправляет запросы, отправляет и пропускает рисунки, а также проверяет MCP stdio-протокол. Без сети, без фикстур, без зависимостей. При сбое завершается с ненулевым кодом.
Демон запускается при первом вызове request_drawing и остаётся работать, благодаря чему страница холста остаётся живой между запросами, а не оказывается на мёртвой странице.
This server cannot be deployed
Maintenance
Related MCP Connectors
Give Claude a whiteboard: notes, links, images and diagrams on a board you both see and edit.
Whiteboard where any shape opens into another canvas. Claude Code and Codex plugins render plans on it.
Give your AI agent the power to cast to your home TV and control an interactive canvas. By ArdaBot.
- KlyaksaOAuthapp.klyaksa
Online whiteboard your AI agent draws on: live shared canvases, solo or with your team.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables Claude to draw on a live tldraw canvas from prompts, with real-time visualization in a browser. Provides tools for creating, updating, deleting shapes and retrieving canvas state.14MIT
- FlicenseNot gradedqualityBmaintenanceEnables Claude to create, open, and edit persistent tldraw whiteboards in real-time, with live collaboration between human and AI.1-
- AlicenseAqualityBmaintenanceEnables AI agents like Claude Code and Codex to read handwriting and sketches drawn on a tablet in real time via MCP, with local recognition to text/LaTeX, session recording, and export to Markdown/Excalidraw.9MIT
- AlicenseNot gradedqualityBmaintenanceEnables visual collaboration with an AI agent on a codebase through a shared drawing canvas, where hand-drawn diagrams are inferred as editable structure over MCP.189 npmMIT