mcpField
S
stitch-mcp-get-project

stitch-mcp-get-project

github.com/gabelul设计与 UI4738 次安装14 周前更新
代码仓库

关于 stitch-mcp-get-project

用于获取 Stitch 项目元数据的技能,包含设计主题和屏幕实例信息。可在创建风格一致的新屏幕前了解项目,也可验证项目引用。

主要功能

  1. 01获取项目元数据
  2. 02查看设计主题和屏幕实例
  3. 03从网址或引用中解析项目 ID
  4. 04利用主题数据保持屏幕风格一致

适用场景

  1. 01添加屏幕前查看项目
  2. 02了解项目的设计主题
  3. 03验证用户提供的网址所指项目
  4. 04从项目元数据中查找屏幕 ID

MCP 相关

通过 Stitch MCP 的 get_project 工具获取项目信息,项目名称使用 projects/ID 格式。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gabelul/stitch-kit --skill stitch-mcp-get-project

安装后在 Claude Code 中输入/stitch-mcp-get-project确认已加载。

详细介绍

Stitch MCP — 获取项目

获取特定 Stitch 项目的完整元数据。在生成其他屏幕前,可用于了解现有项目的主题和屏幕列表。

关键前提

仅在用户明确提到“Stitch”时使用此技能。

如果你已经同时拥有 projectId 和 screenId,请勿调用此工具。 此时直接调用 stitch-mcp-get-screen——效率更高。

何时使用

  • 用户提供了 Stitch 项目 URL,而你需要获取项目详情
  • 生成风格一致的新屏幕前,需要了解现有设计主题
  • 继续操作前,验证项目是否存在

步骤 1:从上下文中解析项目 ID

用户可能会以几种格式提供项目引用——始终将其提取为 projects/ID 格式:

输入格式→ get_project 的参数
3780309359108792857(数字)projects/3780309359108792857
projects/3780309359108792857projects/3780309359108792857(原样使用)
https://stitch.withgoogle.com/projects/3780309359108792857提取 ID → projects/3780309359108792857

步骤 2:调用 MCP 工具

{
  "name": "get_project",
  "arguments": {
    "name": "projects/3780309359108792857"
  }
}

输出架构

{
  "name": "projects/3780309359108792857",
  "title": "Analytics Dashboard",
  "createTime": "2024-11-10T09:00:00Z",
  "updateTime": "2024-11-15T10:30:00Z",
  "deviceType": "DESKTOP",
  "visibility": "PRIVATE",
  "projectType": "TEXT_TO_UI",
  "origin": "STITCH",
  "metadata": {
    "isRemixed": false,
    "userRole": "OWNER"
  },
  "designTheme": {
    "colorMode": "LIGHT",
    "customColor": "#6366F1",
    "colorVariant": "TONAL_SPOT",
    "roundness": "ROUND_TWELVE",
    "saturation": 3,
    "spacingScale": 1,
    "headlineFont": "INTER",
    "bodyFont": "INTER",
    "labelFont": "INTER",
    "font": "INTER",
    "headlineFontFamily": "Inter",
    "bodyFontFamily": "Inter",
    "labelFontFamily": "Inter",
    "namedColors": {
      "primary": "#5B5FC7",
      "on_primary": "#FFFFFF",
      "primary_container": "#E1DFFF",
      "on_primary_container": "#414594",
      "secondary": "#5C5D72",
      "on_secondary": "#FFFFFF",
      "tertiary": "#785572",
      "on_tertiary": "#FFFFFF",
      "surface": "#FBF8FF",
      "on_surface": "#1B1B21",
      "surface_container": "#EFEDF5",
      "surface_container_low": "#F5F2FA",
      "surface_container_high": "#E9E7EF",
      "outline": "#777680",
      "error": "#BA1A1A",
      "on_error": "#FFFFFF"
    },
    "overridePrimaryColor": "",
    "overrideSecondaryColor": "",
    "overrideTertiaryColor": "",
    "overrideNeutralColor": "",
    "backgroundLight": "#FBF8FF",
    "backgroundDark": "#131316",
    "description": "Modern indigo-toned interface with clean surfaces",
    "designMd": "# Design System\n\n## Color Palette\n..."
  },
  "screenInstances": [
    {
      "name": "projects/3780309359108792857/screens/88805...",
      "id": "88805...",
      "sourceScreen": "screens/88805...",
      "type": "SCREEN_INSTANCE",
      "width": 412,
      "height": 892,
      "x": 0,
      "y": 0,
      "hidden": false
    },
    {
      "name": "projects/3780309359108792857/screens/99901...",
      "id": "99901...",
      "sourceScreen": "screens/99901...",
      "type": "DESIGN_SYSTEM_INSTANCE",
      "width": 412,
      "height": 892,
      "x": 500,
      "y": 0,
      "hidden": false,
      "sourceAsset": "assets/design-system-123"
    }
  ]
}

上方的 designMd 内容已截断——实际内容是一份完整的自动生成设计系统文档(通常超过 500 行)。namedColors 通常包含 40 多个语义令牌;此处仅展示最常见的部分。

DesignTheme 字段参考

字段类型值 / 说明
colorMode枚举LIGHT、DARK
customColor字符串十六进制种子颜色(例如 #6366F1)。这是颜色种子——名称不是 primaryColor
colorVariant枚举MONOCHROME、NEUTRAL、TONAL_SPOT、VIBRANT、EXPRESSIVE、FIDELITY、CONTENT、RAINBOW、FRUIT_SALAD
roundness枚举ROUND_FOUR、ROUND_EIGHT、ROUND_TWELVE、ROUND_FULL
spacingScale数字0–3(密度乘数)
headlineFont枚举68 种字体:INTER、GEIST、DM_SANS、MANROPE、PLUS_JAKARTA_SANS、WORK_SANS、SPACE_GROTESK、SORA、OUTFIT、RALEWAY、QUICKSAND、MONTSERRAT、OSWALD、PLAYFAIR_DISPLAY、MERRIWEATHER、NOTO_SERIF、EB_GARAMOND、LITERATA、SOURCE_SERIF_4、SOURCE_SANS_3、NUNITO_SANS、JETBRAINS_MONO、BEBAS_NEUE、ANTON、ARCHIVO_NARROW——完整的 68 项列表请参阅 stitch-ued-guide
bodyFont枚举同一组 68 种字体
labelFont枚举同一组 68 种字体
font枚举已弃用——旧版单字体字段,使用相同的枚举
namedColors对象40 多个语义颜色令牌(primary、on_primary、surface、surface_container、outline、error 等)
overridePrimaryColor字符串十六进制覆盖色;未使用时为空字符串
overrideSecondaryColor字符串十六进制覆盖色;未使用时为空字符串
overrideTertiaryColor字符串十六进制覆盖色;未使用时为空字符串
overrideNeutralColor字符串十六进制覆盖色;未使用时为空字符串
backgroundLight字符串浅色模式的十六进制背景色
backgroundDark字符串深色模式的十六进制背景色
description字符串主题的简短美学描述
designMd字符串自动生成的设计系统 Markdown——完整的令牌规范,可能非常长
spacing对象可选。间距令牌名称 → CSS 值的映射(例如 {"sm": "8px"})
typography对象可选。排版层级名称(例如 h1、body)→ 排版令牌(fontFamily、fontSize、fontWeight、letterSpacing、lineHeight,均为可选字符串)

项目级字段

字段类型值 / 备注
deviceType字符串MOBILE、DESKTOP、TABLET、AGNOSTIC 或 DEVICE_TYPE_UNSPECIFIED
visibility枚举PRIVATE、PUBLIC
projectType枚举TEXT_TO_UI、PROJECT_DESIGN 等
origin枚举STITCH、IMPORTED_FROM_GALILEO
metadata.isRemixed布尔值此项目是否由其他项目重新混编而来
metadata.userRole字符串OWNER、VIEWER 等

ScreenInstance 字段

字段类型备注
id字符串数字屏幕 ID
sourceScreen字符串源屏幕的路径引用
type枚举SCREEN_INSTANCE、DESIGN_SYSTEM_INSTANCE、GROUP_INSTANCE
width / height数字像素尺寸
x / y数字画布位置
hidden布尔值在项目中是否隐藏
sourceAsset字符串存在于 DESIGN_SYSTEM_INSTANCE 类型中,引用设计系统资源

使用主题数据

生成新屏幕时,请使用 designMd 和 namedColors;它们包含此项目权威的设计系统。将 namedColors 传递给 stitch-design-system,即可立即提取令牌。

获取项目后

  • 记录 designTheme,用它确保新屏幕在视觉上保持一致
  • 记录 screenInstances 列表;如果需要检查特定屏幕,请提取其中的 screenId 值
  • 使用 stitch-mcp-list-screens 查看更丰富的屏幕列表,其中包括缩略图

评论

支持 Markdown