BrandKit MCP 是一个开源 MCP 服务器,目标是把公司完整的品牌原子系统暴露给 AI 工具。它通过 Model Context Protocol(MCP)让 Claude 及其他 LLM 工具在帮助构建网站、应用或营销素材时,能够即时获得结构化的品牌语言与视觉规则。
用途 当 AI 参与品牌相关创作时,往往缺少对品牌规范的结构化访问。BrandKit MCP 将品牌的语言识别与视觉识别统一组织,供 AI 工具直接读取。语言识别包括定位、受众、信息、差异化、概念和语气;视觉识别包括颜色、字体、组件、令牌、动效和资产。
主要能力 项目提供 18 个只读工具、1 个本地写入工具和 14 个资源。七个创意/语言类工具(get_brand_overview、get_positioning、get_audience、get_messaging、get_differentiation、get_concepts、get_voice)会注入一个 _taste_primer 字段,逐字携带 magic_trick.md 的内容;get_magic_trick 则直接返回该入门文档而不做包装。get_tokens 工具支持 CSS 自定义属性、SCSS 变量、Tailwind 配置、W3C Design Tokens 和扁平 JSON 等令牌输出格式。
品牌文件组织 品牌原子系统位于单个 <brand-root>/ 目录下,默认是 ./brand_atomic_system。其中 human/ 目录被 MCP 服务器有意忽略,可放置 PDF、印刷规格等仅供人使用的材料;agent/ 下的所有内容会被索引并提供服务。语言内容位于 agent/verbal/,没有上下文覆盖,全局生效;视觉内容可通过 artifacts/ 层按上下文覆盖。BrandKit v2 支持三种上下文。
配置与写入 项目根目录的 brandkit.config.yaml 控制 BrandKit MCP,必须声明 version: 2;缺少该字段或声明 version: 1 会在启动时抛出 BrandkitV1ConfigError。init 默认拒绝更改已有的 brandkit.config.yaml 或 brand_atomic_system/,除非显式使用 --force;强制模式仅对常规单链接配置和真实目录执行干净替换,符号链接、硬链接配置和特殊文件目标会被拒绝。stdio 传输还暴露 sync_brand_docs,用于更新 brandkit.config.yaml、DESIGN.md 和 PRODUCT.md;网络传输默认隐藏并拒绝这个具备写入能力的工具。magic_trick.md 由人编写,MCP 只读取,sync_brand_docs 从不写入它。
传输与安全 服务器支持 stdio(推荐用于 Claude Desktop)、SSE(旧版 HTTP)和 Streamable HTTP(当前 MCP 规范)。网络传输在绑定到回环地址用于本地开发时保持未认证;在绑定到任何非回环主机前,必须设置 BRANDKIT_AUTH_TOKEN,客户端需在每个请求中发送 Authorization: Bearer <token>。网络传输默认只读,包括回环、独立和 Vercel 部署;如需通过 SSE 或 Streamable HTTP 暴露 sync_brand_docs,需以 brandkit-mcp serve --transport http --allow-write-tools 启动,或在编程式 startServer 选项中设置 allowWriteTools: true,这属于特权模式,非回环绑定仍强制认证。所有网络传输会以 HTTP 403 拒绝不受信任的 Host 和 Origin 头。预览 UI 仅限回环,拒绝任何通配、局域网或公网绑定主机。
摄取限制 品牌摄取在读取文件内容前受到限制:默认每文件最大 16 MiB、所有唯一输入合计 128 MiB、最多 1,000 个唯一文件、brand.root 下最多 16 个路径段。固定文档、发现的组件与令牌、清单、字体和图像资产共享同一预算。目录枚举上限为配置文件限制的四倍。大型品牌可将这些类型化摄取值提高到内置安全上限(每文件 64 MiB、总计 512 MiB、10,000 个文件、64 个路径段),maxTotalBytes 必须至少等于 maxFileBytes。
部署 默认 Compose 服务在 http://127.0.0.1:3001/mcp 上运行受支持的 Streamable HTTP 传输,使用内置 Acme 示例,启动前需设置 bearer token,缺失时 Compose 拒绝启动。仓库包含一个无状态 Node.js Function 位于 /api/mcp,需在每个 Vercel 环境设置 BRANDKIT_AUTH_TOKEN 并以 Bearer token 发送;默认部署显式打包 templates/starter/** 并以只读方式提供。serve 命令接受 --transport <stdio|sse|http>、--host <host>、--port <number>、--config <path>、--watch 以及特权网络选项 --allow-write-tools。
适用场景与限制 适用于需要让 AI 工具在网站、应用或营销素材创作中遵循品牌规范的团队。限制包括:v2 是破坏性版本,目录布局、上下文词汇和工具面均已改变,不包含自动迁移,路径映射需手动完成;品牌文件必须留在 brand.root 内,逃逸根目录的符号链接和清单路径会被忽略并警告;配置文件必须是常规单链接文件;网络传输默认只读且非回环绑定必须认证。项目采用 MIT 许可证,使用 TypeScript 严格模式、带 .js 扩展的 ESM 导入、Vitest 测试,基于 Anthropic 的 Model Context Protocol 构建。