Welcome to the Illustrator MCP Server! 🎨🚀
This project allows AI agents to directly create vector graphics inside Adobe Illustrator using natural language prompts.
It works by sending ExtendScript commands to Illustrator via a local MCP (Model Context Protocol) server.
Imagine simply describing what you want — like "draw a small coffee shop during rain" — and Illustrator brings it to life!
Works on Windows (COM automation) and macOS (AppleScript/osascript).
- Control Adobe Illustrator programmatically using AI prompts
- Send ExtendScript (.jsx) scripts directly to Illustrator
- Capture screenshots of the Illustrator window
- Open-source and lightweight
- Cross-platform: Windows & macOS
- Multi-client: Works with Claude Desktop, Claude Code, Cursor, VS Code Copilot, and JetBrains Copilot
- Python 3.12+ — Download Python
- Adobe Illustrator installed and running
- macOS only: Grant Automation permissions when prompted (System Settings → Privacy & Security → Automation)
git clone https://github.com/krVatsal/illustrator-mcp.git
cd illustrator-mcpmacOS / Linux:
python3 -m venv .venv
source .venv/bin/activateWindows:
python -m venv .venv
.\.venv\Scripts\activatepip install -r requirements.txtOn macOS,
pywin32is automatically skipped. No extra macOS packages required.
python -m illustratorbash run_server.shThis script auto-detects your platform, creates a .venv, installs dependencies, and starts the server.
The server uses stdio transport — compatible with all major MCP clients.
Important: Do NOT start the server manually when using it through a client. The client starts and manages the server process automatically.
macOS — edit ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"illustrator": {
"command": "/path/to/illustrator-mcp/.venv/bin/python3",
"args": ["-m", "illustrator"]
}
}
}Windows — edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"illustrator": {
"command": "C:\\Users\\<YourUser>\\illustrator-mcp\\.venv\\Scripts\\python.exe",
"args": ["-m", "illustrator"]
}
}
}A .claude/mcp.json is included in the repo. Claude Code will auto-detect it. Or add manually:
claude mcp add illustrator python3 -- -m illustratorA .vscode/mcp.json is included in the repo. VS Code (1.99+) will auto-detect it. Or add to your settings.json:
{
"mcp": {
"servers": {
"illustrator": {
"type": "stdio",
"command": "python3",
"args": ["-m", "illustrator"]
}
}
}
}This MCP server now includes an advanced prompt system to help you create better content! Use these new tools:
get_prompt_suggestions- Get categorized prompt examples for different types of contentget_system_prompt- Get the optimal system prompt for AI guidanceget_prompting_tips- Get tips for creating more effective promptsget_advanced_template- Get structured templates for complex design taskshelp- Display comprehensive help and guidance
- 🎨 Basic Shapes & Geometry
- 📝 Typography & Text
- 🏢 Logos & Branding
- 🌆 Illustrations & Scenes
- 🎭 Icons & UI Elements
- 🎨 Artistic & Creative
- 📊 Charts & Infographics
- 🏷️ Print & Layout
Try asking: "Get me prompt suggestions for logos" or "Show me prompting tips"
For detailed examples and templates, see PROMPT_EXAMPLES.md
Here are some prompts I used along with the results it generated:
-
Prompt 1:
Design a clean, minimal vector art of a small coffee shop during rain, featuring a simple storefront, puddles on the street, and gentle grey clouds in the sky. -
Prompt 2:
Create a watercolor-style illustration of the Mumbai skyline at sunset. -
Prompt 3:
Create a modern, minimalistic logo for a tech startup called 'NeuraTech'.
(See attached images for the results!)
- Adobe Illustrator must be installed and running
- On first use, macOS will ask for Automation permission — allow your terminal/IDE to control Illustrator
- If you see "Application not running" errors, open Illustrator first
- Screenshots capture the full screen (Illustrator should be in foreground)
- Adobe Illustrator must be installed
- The
pywin32package is required (installed automatically) - Illustrator scripting must be enabled
Pull requests are welcome!
Feel free to open issues for feature requests, bugs, or suggestions.
Happy creating! 🌈💛