Inkscape MCP Server - FastMCP-based server for Inkscape CLI and DOM operations with security boundaries and automatic parameter flattening
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"inkscape-mcp": {
"env": {
"INKS_MAX_FILE": "52428800",
"INKS_WORKSPACE": "/path/to/workspace"
},
"command": "inkscape-mcp"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A secure, hardened MCP (Model Context Protocol) server for Inkscape operations, providing both CLI actions and DOM manipulation capabilities.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
uvx 'inkscape-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked inkscape-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in design
MCP server for accessing Figma plugin console logs and screenshots via Cloudflare Workers or local mode
Official Miro MCP server - Supports context to code and creating diagrams, docs, and data tables.
AI image generation and editing with prompt optimization and quality presets. Powered by Nano Banana
Coinbase Design System - MCP Server
MCP Security Weekly
Get CVE alerts and security updates for Inkscape Mcps and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A secure, hardened MCP (Model Context Protocol) server for Inkscape operations, providing both CLI actions and DOM manipulation capabilities.
# Using uv (recommended)
uv add inkscape-mcp
# Using pip
pip install inkscape-mcp
git clone https://github.com/yourusername/inkscape-mcp
cd inkscape-mcp
# Quick development setup
./scripts/dev-setup
# Or manual setup
uv sync --dev # Install with dev dependencies
uv build # Build distribution packages
Start the CLI server:
inkscape-mcp-cli
Start the DOM server:
inkscape-mcp-dom
Start combined server (both CLI and DOM tools):
inkscape-mcp
Configure via environment variables:
export INKS_WORKSPACE="./my-workspace" # Default: ./inkspace
export INKS_MAX_FILE="104857600" # Default: 50MB
export INKS_TIMEOUT="120" # Default: 60s
export INKS_MAX_CONC="8" # Default: 4
Add to your MCP client configuration (e.g., Claude Desktop):
{
"mcpServers": {
"inkscape-mcp": {
"command": "inkscape-mcp",
"env": {
"INKS_WORKSPACE": "/path/to/workspace",
"INKS_MAX_FILE": "52428800"
}
}
}
}
inkscape-mcp-cli)action_list - List all available Inkscape actionsaction_run - Execute Inkscape actions on documentsinkscape-mcp-dom)dom_validate - Validate SVG document structuredom_set - Set attributes/styles using CSS selectorsdom_clean - Clean/optimize SVG using scour# Via MCP client
await action_run({
"doc": {"type": "file", "path": "input.svg"},
"export": {"type": "png", "out": "output.png", "dpi": 300}
})
# Change fill color of all circles
await dom_set({
"doc": {"type": "file", "path": "input.svg"},
"ops": [{
"selector": {"type": "css", "value": "circle"},
"set": {"style.fill": "#ff6600"}
}],
"save_as": "modified.svg"
})
# Union selected paths
await action_run({
"doc": {"type": "file", "path": "input.svg"},
"actions": ["select-all", "path-union"]
})
# Clone and setup
git clone https://github.com/yourusername/inkscape-mcp
cd inkscape-mcp
# Quick setup using just (recommended)
just setup
# Or manual setup
uv sync --dev # Install with dev dependencies
This project uses just for task running:
just # Show available commands
just setup # Development setup
just test # Run tests (64 integration tests)
just lint # Run linting with ruff
just format # Format code with black + ruff
just
... [View full README on GitHub](https://github.com/grumpydevorg/inkscape-mcps#readme)