关于 Inkscape (inksmcp)
Inkscape(inksmcp)是面向 AI 助手的 MCP 服务,可借助 Inkscape 创建、编辑、检查和导出矢量图形。它支持按实际尺寸排版、修改现有 SVG,并提供预览和多种导出格式。
主要功能
- 01测量元素边界框和文本
- 02对齐、布局与连接线
- 03从 JSON 或 CSV 重复套用模板
- 04检查和编辑现有 SVG 文件
- 05预览并导出为 PNG、PDF 等
适用场景
- 01创建按尺寸排版的海报或示意图
- 02根据数据生成重复卡片
- 03修改并检查现有 SVG
- 04预览图形并导出文件
MCP 相关
向 MCP 客户端提供 Inkscape 文档、元素、排版、图表、路径、预览和导出工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
24收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
inksmcp
一个 MCP 服务,让 AI 助手通过 Inkscape 创建、编辑和导出矢量图形。
向助手描述一张海报、一幅示意图、一张图表或一页漫画,它就会在 Inkscape 中构建一份真正的 SVG 文档:经过测量、排版,并导出为 PNG 或 PDF。它也可以打开在其他地方制作的图稿并进行修改。
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
这些作品由 Claude 在实地测试期间通过 inksmcp 制作,每件作品调用工具 13 到 41 次。SVG 从未经过手动编辑。平面图和元素周期表使用了一个简短脚本来准备数据。
为什么选择 inksmcp
让模型手动编写 SVG 适用于图标,但面对实际排版时就会力不从心。模型无法测量文本,不断重复坐标运算,也看不到自己绘制的内容。inksmcp 帮模型承担了这些工作:
- 测量,而非猜测。 边界框由 Inkscape 本身计算,包括文本,并使用文档自身的单位。
- 依靠关系,而非坐标。
align和layout用于排列元素。place会将说明文字放在标题实际字形的下方。fit_to会根据内容调整方框大小。connect会绘制移动元素后仍保持连接的箭头。 - 由数据驱动。
repeat会为每行数据套用一个模板(卡片、时间线、图例、表格行、角色姿势)。split会将页面划分为面板或单元格。大量数据来自 JSON 或 CSV 文件,因此无需经过对话传递。 - 支持现有文件。 它可以打开由其他工具制作的
.svg/.svgz图稿。inspect find可按颜色、类型、文本或符号查找元素。还可以从图标库中放置符号。 - 安全且可检查。 每个工具都要么全部完成,要么完全不执行。编辑响应会提示文本重叠问题,而
render_preview会向 Agent 显示它绘制的内容。 - 真实输出。 通过 Inkscape 渲染为 PNG、PDF(可选择将文本转为路径)、纯 SVG、EPS、EMF 等格式。
快速开始
-
将服务添加到 MCP 客户端。Claude Code 的配置如下:
claude mcp add --scope user inkscape -- uvx inksmcpClaude Desktop、Cursor 等客户端的配置如下:
{ "mcpServers": { "inkscape": { "command": "uvx", "args": ["inksmcp"] } } } -
提出请求:“使用 inkscape 工具,为周六 10:00 在图书馆花园举行的图书交换活动制作一张 A5 传单,给我预览,然后导出为 PDF。”
各操作系统和客户端的详细说明及故障排查方法,请参阅入门指南。
工具
| 区域 | 工具 |
|---|---|
| 文档 | document_create、document_open、document_save、inspect(大纲、实际边界框、find)、inkscape_info |
| 元素 | add_elements(矩形、圆、椭圆、直线、折线、多边形、路径、文本、组、箭头、图像、引用)、update_elements、delete_elements、import_file、repeat |
| 排布 | align、layout、split、connect、z_order、move_to_layer、page_fit、page_resize |
| 图表 | grid(线性/对数方格纸和坐标轴)、plot(以数据值表示的数据系列) |
| 路径 | path_operation(并集、差集、交集、组合、描边转路径等)、run_actions(带保护的原始 Inkscape 操作) |
| 输出 | render_preview(将 PNG 返回给 Agent)、export |
有关如何组合使用这些工具,请参阅示例;有关每个参数,请参阅工具参考。
工作原理
文档以 lxml 树的形式存储在服务中,并作为唯一可信数据源。编辑会直接应用于该树。凡是需要 Inkscape 的操作(测量、布尔运算、连接器、渲染、导出),都会交由一个持久运行的 inkscape --shell 进程处理,因此调用只需数毫秒,而启动 Inkscape 则需要约 1 秒。详情请参阅架构说明。
状态
inksmcp 目前处于 beta 阶段(0.3)。它已历经 11 次实地测试,Agent 在测试中用它完成了实际任务。最近一次测试中,Agent 编辑了使用其他工具创建的文件。目前有 160 项测试,均使用真实的 Inkscape 运行。
已知限制:
- 项目使用 Inkscape 1.4.4 在 Windows 上开发。CI 也会在 Linux 和 macOS 上运行。
- 每个会话的工具列表约占用 9k 个上下文令牌。
- 目前无法将渐变和图案创建为样式键。如果它们已存在于文档中,则可以通过原始
style应用。 - SVG 1.2 流式文本可以移动,但无法编辑。
路线图列出了后续计划。
贡献
欢迎提交错误报告、实地反馈(“我要求完成 X,这是 Agent 遇到的困难”)和拉取请求。请参阅 CONTRIBUTING.md。本项目以实验优先的方式开发:它所依赖的每项 Inkscape 行为都由 experiments/ 中的脚本验证,并由测试加以保护。开发手册介绍了这一方法。
许可证
MIT。Inkscape 是一个遵循 GPL 的独立程序;inksmcp 通过外部进程调用它。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。





