AxiDraw MCP Server Architecture
👤 User
Makes drawing requests via natural language
Natural Language Request
🧠 Claude LLM
Processes natural language
Decides which MCP tools to use
Formats tool calls
MCP Tool Calls
🔗 MCP Protocol Layer
📱 MCP Client
Claude Desktop/API
Sends JSON-RPC calls
via stdio/transport
JSON-RPC
⚙️ AxiDraw MCP Server
src/server.py
Handles 5 tools:
• plot_text_drawing
• plot_svg
• plot_photo
• create_simple_drawing
• axidraw_status
SVG Generation & CLI Commands
🔧 Hardware Control Layer
🖊️ AxiDraw Hardware
Physical pen plotter
Controlled via axicli
Plots SVG files
🔄 Data Flow Types
Natural Language:
"Draw a dancing cat"
MCP Tool Call:
plot_text_drawing(description="dancing cat")
SVG Generation:
Creates vector graphics
CLI Command:
python3 -m axicli file.svg --mode plot
Physical Output:
Pen movements on paper