drawing-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@drawing-mcpCan you draw a bird perched on a branch, side view?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
drawing-mcp
A process-based pencil drawing MCP server. Connects to Claude Code and produces layered HTML Canvas drawings using a classical construction methodology.
What it does
Two tools:
analyse_subject— Takes a text description, returns a pencil construction drawing as a self-contained HTML canvas snippet. Works gesture → volumes → forms.refine_drawing— Takes the previous output and adds line quality, weight variation, or form shadow at detail levels 1–3.
Related MCP server: Draw-it-MCP
Local development (Claude Code on your machine)
1. Install and build
npm install
npm run build2. Set up environment
cp .env.example .env
# Edit .env — add your ANTHROPIC_API_KEY3. Add to Claude Code
Edit your Claude Code MCP config (~/.claude/claude_desktop_config.json
or equivalent):
{
"mcpServers": {
"drawing-mcp": {
"command": "node",
"args": ["/absolute/path/to/drawing-mcp/dist/index.js"],
"env": {
"ANTHROPIC_API_KEY": "your_key_here"
}
}
}
}Restart Claude Code. You should see analyse_subject and refine_drawing
in the available tools.
4. Test it
In Claude Code:
"Can you draw a bird perched on a branch, side view?"
Claude will call analyse_subject, return an HTML snippet. Paste it into
a Claude artifact or any HTML file to render.
Hosted deployment (DigitalOcean)
Droplet setup (one time)
# On the droplet as root
# Install Docker
curl -fsSL https://get.docker.com | sh
# Install Caddy
apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudflare.com/carlista/caddy/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
apt update && apt install caddy
# Create env file (never in the repo)
cp .env.example /root/drawing-mcp.env
chmod 600 /root/drawing-mcp.env
# Edit /root/drawing-mcp.env with real values
# Generate an API key
openssl rand -hex 32
# Paste the output as API_KEY in /root/drawing-mcp.env
# Copy Caddyfile
cp Caddyfile /etc/caddy/Caddyfile
# Edit /etc/caddy/Caddyfile — replace yourdomain.com with your domain
systemctl restart caddyFirewall (DO Cloud Firewall or ufw)
Only these ports should be open to the public internet:
Port | Protocol | Purpose |
22 | TCP | SSH (restrict to your IP if possible) |
80 | TCP | Caddy HTTP→HTTPS redirect |
443 | TCP | Caddy HTTPS |
Port 3000 must NOT be public — Caddy proxies to it internally.
Deploy
chmod +x deploy.sh
./deploy.sh root@your-droplet-ipConnect Claude Code to hosted server
{
"mcpServers": {
"drawing-mcp": {
"url": "https://yourdomain.com/mcp",
"headers": {
"Authorization": "Bearer your_api_key_here"
}
}
}
}Project structure
src/
index.ts — stdio entry point (local Claude Code)
server.ts — HTTP/SSE entry point (hosted)
schema.ts — Zod schemas for all inputs and outputs
prompts/
system.ts — System prompts (methodology IP — never exposed)
tools/
handlers.ts — Tool logic
anthropic-client.ts — Inner AI call, validation, security checks
rendering/
canvas.ts — Converts validated commands to HTML canvas snippet
security/
sanitise.ts — Input sanitisation, sentinel checks, error scrubbingSecurity notes
The Anthropic API key and system prompts never leave the server process
All AI output is validated against a strict Zod schema before returning
User input is sanitised before touching any prompt
Sentinel checks detect and block prompt extraction attempts
The container runs as a non-root user with a read-only filesystem
Caddy handles TLS — the app only binds to localhost
This server cannot be deployed
Related MCP Connectors
Create and edit architecture diagrams from your AI agent; get an SVG and a live editable canvas.
- UnpagedOAuthio.unpaged
Whiteboard where any shape opens into another canvas. Claude Code plugin renders plans on it.
Agent-Native design tool - create and edit visual designs with agent assistance
Build, version, review, and export websites, web apps, and games from a conversation.
Related MCP Servers
- -
- AlicenseNot gradedqualityCmaintenanceA browser-based drawing application with AI integration that enables Claude to analyze artwork, provide feedback on composition and techniques, and discuss artistic concepts through MCP tools.38MIT
- FlicenseNot gradedqualityFmaintenanceExposes a Pygame-based drawing canvas as an MCP server, allowing LLMs to create digital art using standard shapes and freehand paths. It features a specialized oil paint mode that simulates realistic color mixing, paint depletion, and textured brush strokes.-
- FlicenseAqualityDmaintenanceEnables AI agents to create, render, and validate 3D scenes, 2D art, and games in HTML canvas using Three.js, WebGL, or Canvas 2D, with multi-angle screenshots, structured validation reports, and interactive playtesting.5-