
Inkscape (inksmcp)
io.github.bhanutptv0.3.0Updated Oct 6, 2026
Create, edit and export SVG graphics with Inkscape: measured layout, templates, export.
Overview
Lets an assistant create, edit and export measured SVG vector graphics through a local Inkscape installation.
- What it does
- The server keeps an SVG document as an internal tree and exposes tools for documents, elements, arrangement, charts, paths and output. It adds shapes, text, groups, images and symbols, aligns and lays out items by relationship, repeats templates per data row, splits pages into panels, and draws connectors that stay attached. Bounding boxes and text measurements come from Inkscape itself, and results can be previewed as PNG or exported to PNG, PDF, SVG, EPS and EMF.
- When to use it
- Use it when an assistant should produce real vector artwork such as posters, diagrams, charts, floor plans or comic pages, or when it must open and modify existing SVG files from other tools. It suits layout work where text measurement and precise placement matter more than hand-written SVG.
- Requirements
- Runs locally over stdio, installed from PyPI as inksmcp and typically launched with uvx, so Python tooling such as uv is needed. Inkscape 1.x must be installed; the INKSCAPE_PATH environment variable can point to the executable if it is not on PATH or in the default install location. Desktop only, no authentication declared.
Installation
In SourceWeft
- Open Inkscape (inksmcp) in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
inksmcp
An MCP server that lets AI assistants create, edit and export vector graphics with Inkscape.
[CI] [PyPI] [Python] [License: MIT]
Describe a poster, a diagram, a chart or a comic page to your assistant, and it builds a real SVG document in Inkscape: measured, laid out and exported to PNG or PDF. It can also open drawings made elsewhere and change them.
Made by Claude through inksmcp during field tests, in 13 to 41 tool calls each. The SVG was never edited by hand. The floor plan and the periodic table used a short script to prepare their data.
Why inksmcp
Asking a model to write SVG by hand works for an icon, but it breaks down on real layouts. The model can't measure text, keeps redoing coordinate arithmetic, and can't see what it drew. inksmcp takes that work off the model:
- Measured, not guessed. Bounding boxes come from Inkscape itself, text included, in the document's own units.
- Relationships instead of coordinates.
alignandlayoutarrange things.placekeeps a caption below a title's real glyphs.fit_tosizes a box around its content.connectdraws arrows that stay attached when things move. - Data-driven.
repeatstamps a template per data row (cards, timelines, legends, table rows, character poses).splitdivides a page into panels or cells. Large data comes from JSON or CSV files, so it doesn't pass through the conversation. - Works on existing files. It opens
.svg/.svgzdrawings from other tools.inspect findlocates elements by colour, type, text or symbol. Symbols can be placed from icon libraries. - Safe and checkable. Every tool is all-or-nothing. Editing responses warn about overlapping text,
and
render_previewshows the agent what it drew. - Real output. PNG, PDF (optionally with text as paths), plain SVG, EPS, EMF and more, rendered by Inkscape.
Quick start
-
Add the server to your MCP client. For Claude Code:
For Claude Desktop, Cursor and others:
-
Ask: "Using the inkscape tools, make an A5 flyer for a book swap on Saturday at 10:00 in the library garden, show me a preview, then export a PDF."
Details for each OS and client, and troubleshooting, are in getting started.
Tools
See the recipes for how they combine, and the tool reference for every parameter.
How it works
The document lives in the server as an lxml tree, which is the source of truth. Edits are applied
there directly. Anything that needs Inkscape (measuring, boolean operations, connectors, rendering,
export) goes to one persistent inkscape --shell process, so a call takes milliseconds instead of
the ~1 s it takes to start Inkscape. The architecture notes have
the details.
Status
inksmcp is beta (0.3). It has been through eleven field tests, in which agents used it for real tasks. The latest one edited files made in other tools. There are 160 tests, and they run against the real Inkscape.
Known limits:
- It is developed on Windows with Inkscape 1.4.4. CI also runs on Linux and macOS.
- The tool list costs about 9k tokens of context per session.
- Gradients and patterns can't be created as style keys yet. They can be applied through raw
stylewhen they already exist in the document. - SVG 1.2 flowed text can be moved but not edited.
The roadmap lists what's next.
Contributing
Bug reports, field reports ("I asked for X, here's what the agent struggled with") and pull requests
are welcome. See CONTRIBUTING.md. The project is built experiment-first: every
Inkscape behaviour it relies on is proven by a script in experiments/ and guarded by a test. The
development handbook explains the method.
License
MIT. Inkscape is a separate program under the GPL; inksmcp calls it as an external process.
Source: README.md at commit e80bee0
Tools
0Version history
1- v0.3.0LatestOct 6, 2026


