mcpField
M
Mcp Sketch

Mcp Sketch

Local
github.com/YamadaAoiDeveloper Tools5Updated 10w ago

About Mcp Sketch

Mcp Sketch is a local MCP server that parses Sketch-exported HTML ZIP archives and extracts artboard and layer structure. Its staged agents and skills turn designs into pages or additions to existing projects.

Key features

  1. 01Parse artboard layers and styles
  2. 02Split designs into components
  3. 03Generate base components and layouts
  4. 04Preview and check generated work
  5. 05Track artboard processing state

Use cases

  1. 01Create a page from a design file
  2. 02Insert a design region into an existing page
  3. 03Combine shared components across artboards

MCP support

With MCP_MODE=1, Mcp Sketch runs as a local MCP server for AI tools and provides design-parsing capabilities.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"sketch": {
"command": "npx",
"args": [
"-y",
"mcp-sketch"
],
"env": {
"MCP_MODE": "<MCP_MODE>"
}
}
}
}
Run commandnpx -y mcp-sketch
Environment variables to set
MCP_MODE

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmmcp-sketch

Tools

4

Saved tool list · updated 3w ago

ParameterTypeRequiredDescription
file_pathstringYessketch html export path (zip or folder, required)
persistbooleanNopersist the result to file or not (default: false)

Details

From the project README

mcp-sketch

English | 中文

需多模态模型(分析预览图)。agents 持续迭代中,安装后按需调整 prompt 和权限

推荐配合 CodeGraph 使用:sketch 通过 MCP 工具 codegraph_explore 查询项目代码结构,推荐在 AI 平台中配置 CodeGraph MCP 服务以获得更准确的项目上下文理解。若 CodeGraph 不可用,自动回退到 Grep/Read。

安装

npx -y mcp-sketch install

交互选择平台,写入对应目录:

平台agent 目录skill 目录
Claude Code.claude/agents/.claude/skills/
OpenCode.opencode/agents/.opencode/skills/
推荐 MCP 服务

CodeGraph — 项目源码分析,提高组件规划与代码定位的准确性:

npm i -g @colbymchenry/codegraph
codegraph install
codegraph init

Playwright MCP — 浏览器预览与截图比对:

使用

切换到 Leader
  • OpenCode:启动后按 TAB 切换到 sketch-leader
  • Claude Code:claude --agent sketch-leader
场景一:创建新页面
根据设计稿 设计稿.zip,创建一个用户登录页

流程:pick → analyze-artboard → split → gen-base → layout → preview → draw → draw-check

场景二:插入到现有页面

描述越精确,LLM 推断越少、返工越少。按掌握的信息量选择示例:

根据设计稿 设计稿.zip,把 eWallet 画板的右下区域(rect[220,340,180,120])作为资产卡片,提取出来插入到 /assets 页面的总览区域(src/views/assets/AssetsOverview.vue 的 .overview-content 容器内)
根据设计稿 设计稿.zip,把用户信息卡片提取出来,插入到 /dashboard 页面

根据掌握的信息,尽可能提供:设计稿文件 → 画板名 → 坐标区域 → 目标页面路由或组件路径 → 插入位置上下文

流程:pick → analyze-artboard → split(插入模式)→ gen-base → insert-layout → preview → draw → draw-check

场景三:多画板描述同一功能
根据设计稿 设计稿.zip,聊天页面有三个状态(空状态、消息列表、输入中),需要一起处理

多选画板后,analyze-artboard 一次性解析所有画板,split 自动去重合并公共组件(弹框容器、标题栏等),各画板只保留差异部分

流程:pick(multi) → analyze-artboard → split → gen-base → layout → preview → draw → draw-check

工具箱

skill归属 agent说明
sketch-picksketch-analyzer提取画板列表供用户选择
sketch-analyze-artboardsketch-analyzer解析画板图层并缓存 layer.json
sketch-splitsketch-analyzer分析画板,拆分组件
sketch-previewsketch-analyzer启动服务并预览页面
sketch-initsketch-architect扫描项目,生成配置文档
sketch-init-componentssketch-architect分析组件生态,生成组件清单
sketch-gen-basesketch-architect生成基础组件骨架代码
sketch-layoutsketch-architect配置路由和父组件布局
sketch-insert-layoutsketch-architect布局 section 组件并插入目标页面
sketch-drawsketch-developer根据设计稿绘制组件功能代码
sketch-codesketch-developer修改/重构/插入等无设计稿任务
sketch-*-checksketch-checker审核各阶段输出质量

状态管理

状态文件在 .sketch-cache/artboards/{design_file_name}/{page_name}/{artboard_name}/progress.json

组件状态链:split-done → split-check-done → gen-base-done → gen-base-check-done → (insert-)layout-done → (insert-)layout-check-done → preview-done → draw-done → draw-check-done

环境变量

项目根目录 .env.sketch:

字段必填默认值说明
SERVER_COMMAND是npm run dev启动命令
CWD否当前目录项目根目录
ASSETS_PATH否src/assets/sketch切图输出路径

Linux / macOS / WSL 需安装 tmux:brew install tmux(macOS) / sudo apt install tmux(Ubuntu/Debian/WSL),Windows 无需额外安装

工具

npx -y mcp-sketch <cmd> --help 查看完整参数

  • list [-f <path>] — 列出画板
  • analyze -f <path> --pn <page> --an <artboard> [-r <rect>] [-e <rects>] [-l <n>] [-o <n>] [--ap <path>] [--persist] — 解析图层/样式/切图
  • dev -u <url> — 启动本地开发服务
  • state -f <path> --pn <page> --an <artboard> -c '<yaml>' [-r] — 管理画板状态

切图输出:src/assets/sketch/,预览图:.sketch-cache/artboards/{design_file_name}/{page_name}/{artboard_name}/(webp)

MCP 配置

设置 MCP_MODE=1,在 AI 工具中配置为本地 MCP 服务:

  • opencode
{
  "mcp": {
    "mcp-sketch": {
      "type": "local",
      "command": ["npx", "-y", "mcp-sketch"],
      "enabled": true,
      "environment": { "MCP_MODE": "1" }
    }
  }
}
  • claude code
{
  "mcpServers": {
    "mcp-sketch": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-sketch"],
      "env": { "MCP_MODE": "1" }
    }
  }
}

Demo

example

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.