claude-draw
claude-draw
Рукописный ввод для Claude Code. Claude задаёт визуальный вопрос, на любом удобном вам устройстве появляется холст, вы рисуете ответ, Claude считывает его.
Два режима: пустой холст для наброска идеи и аннотация, когда Claude помещает скриншот и просит вас пометить его. Второй окупает себя, когда описать визуальное изменение словами дольше, чем просто указать на него.
Требования
Node 18 или новее в PATH. Больше ничего. Никаких npm install, никаких зависимостей.
Related MCP server: the-mogiyoon-mcp
Установка
Репозиторий — это собственный маркетплейс с одним плагином, поэтому на новой машине нужны две команды:
/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 installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Whiteboard where any shape opens into another canvas. Your AI agent draws on it live.
Create and edit architecture diagrams from your AI agent; get an SVG and a live editable canvas.
Real-time collaborative whiteboard — AI agents and humans edit the same board live over MCP.
Deploy sims to any screen. Control your displays with Claude.
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 gradedqualityDmaintenanceEnables controlling a game character, drawing on a canvas, and running chemistry experiments via natural language commands to Claude.
- FlicenseNot gradedqualityBmaintenanceEnables Claude to create, open, and edit persistent tldraw whiteboards in real-time, with live collaboration between human and AI.1
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to collaboratively read, write, draw, and diagram on a shared real-time whiteboard canvas with live human edits.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/ThePhilipWilson/claude-draw'
If you have feedback or need assistance with the MCP directory API, please join our Discord server