Brandpilot Mcp

dev.brandpilotPublished by brandpilot.devOfficial publisherv1.0.0Updated Oct 29, 2026

BrandPilot brands and design systems for coding agents: tokens, design context, repo rules.

VerifiedStreamable HTTPWeb executableDeveloper ToolsMedia & Design

Overview

AI-generated overview

BrandPilot MCP brings brands and design systems into coding agents: public design-system tokens and manifests, plus workspace tools via an API key.

What you can do
  • List public design systems with name, brand color, status, version and endpoints
  • Read a system's full adoption manifest: tokens, components, pages, brand assets and design direction
  • Export a system's tokens in formats such as globals-css, colors-ts, spacing-ts, typography-ts, tailwind-theme, tailwind-v4, brand-manifest or dtcg
  • Get a Markdown adoption brief with copy-paste prompts for bootstrapping a design package and running a design round
  • With a workspace API key, proxy to the hosted BrandPilot MCP for brands, design context, repo rules packs, design system kits and importing finished work
When to use it
Useful when a coding agent should build UI that follows a specific brand or design system, or when you want tokens and repo rules pulled into a project without copying them by hand. The keyless mode is enough to browse and export public design systems.
Requirements
Node.js 20 or newer; runs as a local stdio process via npx or as a remote endpoint. Network access to brandpilot.dev. Optional workspace API key in BRANDPILOT_API_KEY (or an Authorization bearer header) to enable proxy mode; BRANDPILOT_MCP_URL, BRANDPILOT_ORIGIN and BRANDPILOT_TIMEOUT_MS can override defaults.
Before you install
The workspace API key (BRANDPILOT_API_KEY, sent as an Authorization bearer header) grants access to your BrandPilot workspace; keep it out of committed config files and prefer environment variables. In proxy mode calls go to the hosted BrandPilot service, and some hosted tools import or finish design work, which changes data in your workspace. Read-only keys may be rejected with HTTP 403 for write tools.

Installation

In SourceWeft

  1. Open Brandpilot Mcp in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/dev.brandpilot%2Fbrandpilot-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "brandpilot": {
      "type": "http",
      "url": "https://brandpilot.dev/api/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

brandpilot-mcp

MCP server for BrandPilot: bring a brand into your coding agent - list your brands, read a design's context and continuation contract, install its repo rules pack and tokens, and fetch its design system kit - natively from Claude Code, Codex, Cursor, Claude Desktop or any other MCP client.

The package runs in one of two modes:

  • With a workspace API key (BRANDPILOT_API_KEY): a thin stdio proxy onto the hosted BrandPilot MCP at https://brandpilot.dev/api/mcp. Every tools/list, tools/call, prompts/list and prompts/get is forwarded and the answer relayed, so the tool list is always the one BrandPilot serves today - new tools arrive without a package update.
  • Without one: the public design-system tools, served over the BrandPilot REST API v2 with no account and no key.

It never touches a database; any machine with network access to brandpilot.dev can run it. Requires Node.js 20 or newer.

Connect with an API key

Create a workspace API key in BrandPilot under Settings, API keys. It starts with bp_live_. Replace bp_live_your_key_here below with it, and keep it out of committed files.

Claude Code

bash
claude mcp add brandpilot --scope user -e BRANDPILOT_API_KEY=bp_live_your_key_here -- npx -y brandpilot-mcp

Then run /mcp in Claude Code to confirm brandpilot is connected, and ask "Ask BrandPilot who I am and list my brands".

Codex

bash
codex mcp add brandpilot --env BRANDPILOT_API_KEY=bp_live_your_key_here -- npx -y brandpilot-mcp

or in ~/.codex/config.toml:

toml
[mcp_servers.brandpilot]command = "npx"args = ["-y", "brandpilot-mcp"]
[mcp_servers.brandpilot.env]BRANDPILOT_API_KEY = "bp_live_your_key_here"

To keep the key out of the file, export BRANDPILOT_API_KEY in your shell and use env_vars = ["BRANDPILOT_API_KEY"] in place of the env table.

Cursor

Add to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):

json
{  "mcpServers": {    "brandpilot": {      "command": "npx",      "args": ["-y", "brandpilot-mcp"],      "env": {        "BRANDPILOT_API_KEY": "bp_live_your_key_here"      }    }  }}

Any other MCP client

Run npx -y brandpilot-mcp as a stdio server with BRANDPILOT_API_KEY in its environment. The same shape works in Claude Desktop's claude_desktop_config.json.

What the errors mean

MessageCauseFix
BrandPilot rejected the API key (HTTP 401)The key is mistyped, expired or revokedCreate a new key and restart the server
The API key does not have the permission this call needs (HTTP 403)The key lacks a scope (for example a read-only key calling finish_external_design)Use a key with that scope
The hosted BrandPilot MCP is not enabled (HTTP 404)The hosted MCP is not switched on for that BrandPilot instance yetUnset BRANDPILOT_API_KEY to use the public tools meanwhile, or check BRANDPILOT_MCP_URL
did not answer within N sThe hosted call took longer than BRANDPILOT_TIMEOUT_MSRetry; raise the timeout for slow calls

The key is sent only in the Authorization header and is never printed, including in error messages and on stderr.

Tools

In API-key mode the tools and prompts come from the hosted server (brands, design context, repo rules pack, design system kit, importing finished work back for review, and more); the current list is at https://brandpilot.dev/api/v2/mcp/tools and on brandpilot.dev/docs. A good first call is whoami.

Without a key the server serves these public tools, all over the BrandPilot REST API v2:

ToolAuthWhat it does
list_public_systemsnoneList public design systems (name, display name, brand color, status, version, v2 endpoints)
get_system_manifestnoneFull adoption manifest for a public system: tokens, components, pages, brand assets, direction
export_system_tokensnoneExport a system's tokens (globals-css, colors-ts, spacing-ts, typography-ts, tailwind-theme, tailwind-v4, brand-manifest, dtcg)
get_adoption_briefnoneMarkdown onboarding doc: bootstrap a design package and run a design round (a Design canvas for Claude Code, local HTML drafts for other agents)

Upgrading from 0.x

1.0.0 is a major release because tools and a variable were removed. BrandPilot API v1 and the per-design handoff keys stop answering on 2026-12-15 (HTTP 410), so every 0.x install loses its keyless calls that day; upgrade before then.

  • The public tools now call API v2 (/api/v2/..., and /api/v2/systems/{name}/export for tokens) instead of API v1 and /api/systems/export/{name}, and take the v2 names the hosted server uses: list_systems is now list_public_systems, get_system_adoption is get_system_manifest, get_system_tokens is export_system_tokens and get_agent_prompt is get_adoption_brief. Arguments are unchanged; export_system_tokens also accepts tailwind-v4 and dtcg.
  • get_adoption_brief returns the new v2 brief: a design round on a Design canvas (Claude Code) or local HTML drafts (other agents), instead of the Claude Design steps.
  • get_design_handoff, get_design_prompt_pack, import_design_artifacts and finish_external_design are removed from the keyless server, and DESIGNFLOW_HANDOFF_KEY is no longer read (a leftover value only prints one line asking you to remove it). Their v2 successors (get_design_context, get_design_brief, import_design_work, finish_design_import) are served by the hosted MCP: create a workspace API key in BrandPilot (Settings, API keys) and set BRANDPILOT_API_KEY, see Connect with an API key.
  • The Claude Design prompt pack is gone with it: claude.ai/design closes on 2026-12-14. The hosted tools return a design's context and repo rules pack for building in your own repo instead.
  • brandpilot-mcp/catalog now exports the four public tools only, with their v2 endpoints.

Environment variables

VariableDefaultPurpose
BRANDPILOT_API_KEY(none)Workspace API key; turns on proxy mode
BRANDPILOT_MCP_URL${BRANDPILOT_ORIGIN}/api/mcpHosted MCP endpoint in proxy mode. Must be https, except on localhost
BRANDPILOT_TIMEOUT_MS70000Per-request timeout in proxy mode (1000 to 600000)
BRANDPILOT_ORIGINhttps://brandpilot.devOrigin for the public tools, and the base of the default BRANDPILOT_MCP_URL - override to point at a local dev server

Local development

bash
npm installnpm run buildnpm test

The e2e tests drive the built server against a fake origin that answers API v2 and returns 410 on every v1 path. To run them against a local BrandPilot instead, set BRANDPILOT_E2E_ORIGIN=http://localhost:3005 (any origin that serves API v2) before npm test.

npm link then an MCP config pointing at the linked bin is the fastest way to verify against a live server: in API-key mode confirm whoami names your workspace; without a key confirm list_public_systems returns the curated pool and nothing private.

See CHANGELOG.md for release notes.

Source: README.md at commit 6415eff

Tools

4

list_public_systems

The showcased public design systems in the BrandPilot pool: name, display name, brand color, status, version and their v2 endpoints.

Takes no parameters.

get_system_manifest

Full adoption manifest for a public system: tokens, components, pages, brand asset URLs and the binding design-direction block.

Parametersnamerequired

export_system_tokens

A public system's tokens in one format: globals-css, colors-ts, spacing-ts, typography-ts, tailwind-theme, tailwind-v4, brand-manifest or dtcg.

Parametersnamerequiredformat

get_adoption_brief

Markdown onboarding doc for a public system: the two copy-paste prompts a coding agent uses to bootstrap a design package and run a design round (a Design canvas for Claude Code, local HTML drafts for any other agent).

Parametersnamerequired

Version history

3
  1. v1.0.0LatestOct 22, 2026
  2. v0.3.1Oct 14, 2026
  3. v0.3.0Oct 13, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts