mcpField
M
Mcp Sketch

Mcp Sketch

本地服务
github.com/YamadaAoi开发工具510 周前更新

关于 Mcp Sketch

Mcp Sketch 是本地 MCP 服务,可解析 Sketch 导出的 HTML ZIP 文件并提取画板与图层结构。它配套多阶段 Agent 和技能,用于将设计稿转化为页面或插入现有项目。

主要功能

  1. 01解析画板图层与样式
  2. 02拆分并规划组件
  3. 03生成基础组件与页面布局
  4. 04预览并检查绘制结果
  5. 05管理画板处理状态

适用场景

  1. 01根据设计稿创建新页面
  2. 02将设计稿区域插入已有页面
  3. 03合并多个画板的共用组件

MCP 相关

设置 MCP_MODE=1 后,Mcp Sketch 可作为本地 MCP 服务接入 AI 工具,并提供设计稿解析相关能力。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sketch": {
"command": "npx",
"args": [
"-y",
"mcp-sketch"
],
"env": {
"MCP_MODE": "<MCP_MODE>"
}
}
}
}
启动命令npx -y mcp-sketch
需要配置的环境变量
MCP_MODE

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmmcp-sketch

工具

4

收录的工具列表 · 更新于 3 周前

参数类型必填说明
file_pathstring是sketch html 导出路径(zip 或文件夹,必填)
persistboolean否是否将结果持久化到文件(默认值:false)

详细介绍

来自项目 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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。