inkscape-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| workspace-root | Yes | A workspace root directory accessible to the MCP server. Can be provided multiple times. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| inkscape_statusA | Reports local Inkscape availability, observed capabilities and security posture without exposing filesystem paths. |
| elements_updateB | Updates bounded SVG geometry, basic styles, text, or layer labels through typed allowlisted patches. |
| elements_arrangeA | Moves same-parent SVG elements to front, back, one step up, or one step down without accepting arbitrary order indexes. |
| elements_groupA | Groups same-parent SVG elements or ungroups one non-layer group while preserving child order and rejecting broken href references. |
| workspace_listA | Lists authorized workspaces by opaque ID without exposing their filesystem roots. |
| workspace_list_documentsA | Lists allowed SVG/SVGZ document paths within one workspace using an opaque cursor. |
| document_createB | Creates a new SVG document from bounded custom dimensions or a named page preset. Existing outputs are never overwritten. |
| elements_createC | Creates a bounded batch of typed SVG basic shapes without accepting XML or arbitrary attributes. |
| elements_queryA | Lists bounded SVG element summaries by IDs, type, or Inkscape layer without exposing arbitrary XML attributes. |
| elements_deleteB | Deletes explicitly selected SVG elements and rejects deletions that would leave fragment references broken. |
| elements_transformB | Appends an allowlisted numeric SVG transform to selected elements without accepting transform strings. |
| document_inspectC | Reads SVG viewport dimensions, viewBox and revision from an authorized document without mutating it. |
| document_preflightB | Checks an SVG for active content, external references and invalid document settings without modifying it. |
| document_resizeA | Changes the SVG page size with page_only semantics while preserving element geometry. Requires the current document revision. |
| document_pagesB | Lists or safely changes explicit Inkscape 1.4 pages by stable page ID. Mutations require the current document revision. |
| document_settingsC | Reads or updates typed Inkscape page, desk and border display settings. Updates require the current document revision. |
| export_pngB | Exports an SVG document to PNG through Inkscape using only bounded, allowlisted options. |
| export_pdfB | Exports an SVG document to a validated PDF through Inkscape using bounded, allowlisted options. |
| export_svgB | Exports an SVG as Inkscape SVG or plain SVG through the bounded Inkscape pipeline. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 19 tools
The tools are mostly organized by clear resource prefixes (elements_, document_, workspace_, export_), and each action targets a distinct operation. A few document-level tools (resize vs settings vs pages) touch related page concepts, but their descriptions distinguish geometry changes from display settings and multi-page editing.
Most names follow a predictable snake_case resource-plus-action pattern, especially elements_* and document_*. The export_* tools invert that pattern (verb plus format) and workspace_list_documents is a slightly awkward compound, so naming is not perfectly uniform but remains readable.
Nineteen tools is a heavy surface for an MCP server, falling in the 16-25 range that feels borderline. The breadth is understandable because the server covers documents, elements, workspaces, exports, and status, but not every tool feels strictly necessary.
The set covers the core SVG document and element lifecycle: create, query/update, delete, group, arrange, transform, page-level changes, and PNG/PDF/SVG export. Obvious gaps such as explicit layer CRUD, path-level editing, and arbitrary SVG import remain, but they can be worked around with the bounded query/export tools.