Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Buoy

by ahoybuoyversion 0.8.15i★ –iRuns on your computer
Registry nameio.github.ahoybuoy/buoy

Install

Overview

Description from the maker (original English)

The design system your coding agents check before they ship: tokens plus exact UI fixes.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Developer tools

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • The registry lists no key to fill in.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "buoy": {
      "command": "npx",
      "args": [
        "-y",
        "@buoy-design/cli",
        "mcp",
        "serve"
      ]
    }
  }
}

Run this in your terminal

claude mcp add buoy -- npx -y @buoy-design/cli mcp serve

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "buoy": {
      "command": "npx",
      "args": [
        "-y",
        "@buoy-design/cli",
        "mcp",
        "serve"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "buoy": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@buoy-design/cli",
        "mcp",
        "serve"
      ]
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account ahoybuoy, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Developer toolsi

  • More stars than 0% of the other 4932 servers in this category
  • Published to the registry more recently than 99% of the other 4932 servers in this category
  • Basic checks equal to or better than 100% of the other 4932 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Buoy safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.8.15) reached the registry today.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: GitHub, Desktop Commander, Cloudflare MCP

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

GitHub

GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.

by githubWidely used★ 34.2KUpdated 5 days ago

Computer or cloud

Desktop Commander

MCP server for terminal commands, file operations, and process management

by wonderwhy-erWidely used↓ 709.6K/wk★ 10.2KUpdated 17 days ago

Runs on your computer

Cloudflare MCP

Cloudflare MCP servers

by cloudflareGrowing★ 4.4KUpdated 14 months ago

Runs in the cloud✓ mcp.cloudflare.com

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Buoy

Catch design drift before it ships.

AI coding tools are fast—but they don't know your design system. They'll write #3b82f6 when you have --color-primary. They'll use padding: 17px when your spacing scale is multiples of 4.

Buoy watches for these issues and helps you fix them.

src/components/Button.tsx:24

hardcoded-value: #3b82f6 → var(--color-primary) (92% match)

Code-first System Observability

Your shipped code is the design-system source of truth. Declare the packages you own, then use Buoy to map adoption, unmanaged UI surface area, and the blast radius of a component or token change. Figma and other design tools can remain optional inputs; they are not required for the system map.

# .buoy.yaml

project: name: acme

system: components:

  • packages/ui/src/** tokens:
  • packages/tokens/src/** owners:
  • name: Checkout paths:
  • apps/checkout/**
buoy system map                 # Canonical system vs unmanaged surface area

buoy system impact Button # Consumers and migration risk for a change buoy system impact color-primary --kind token

This is the foundation for cloud adoption trends, deprecation planning, and AI-assisted iteration reporting: every result is derived from code and can be attributed to a repository path and owner.

Quick Start

# See your design system immediately (zero config)

npx ahoybuoy show all

Add project configuration and local integrations when ready

npx ahoybuoy dock

No config needed. Buoy auto-detects your framework and starts working immediately.

What It Catches

IssueExample
Hardcoded colors#ff0000 instead of var(--color-primary)
Arbitrary spacingpadding: 17px instead of design scale
Tailwind escape hatchesp-[13px] instead of p-4
Naming inconsistenciesButtonNew, ButtonV2, ButtonOld
Unused componentsDefined but never imported or rendered
Semantic mismatchesSame prop typed string in one, number in another
Repeated patternsSame Tailwind classes copy-pasted 5+ times
Framework sprawlReact + Vue + jQuery in same codebase
Detached componentsInstances without main component

Commands

buoy

├── show # Read design system info (for AI agents) │ ├── components # Components in codebase │ ├── tokens # Design tokens found │ ├── drift # Design system violations │ ├── health # Health score │ ├── history # Scan history │ ├── config # Current .buoy.yaml configuration │ ├── skills # AI agent skill files │ ├── agents # Configured AI agents │ ├── context # Design system context in CLAUDE.md │ ├── hooks # Configured hooks │ ├── commands # Installed slash commands │ ├── graph # Knowledge graph stats │ ├── plugins # Available scanners │ └── all # Everything combined ├── drift # Drift detection and fixing │ ├── scan # Scan codebase for components/tokens │ ├── check # Pre-commit drift check │ ├── fix # Suggest/apply fixes │ └── ignore # Ignore existing drift │ ├── all # Ignore all current drift (requires --reason) │ ├── show # View ignored drift signals │ ├── add # Add new drift to ignore list (requires --reason) │ └── clear # Remove ignore list ├── rescue # Complete measure → repair → guard → prove journey │ ├── plan # Build a local baseline and repair plan │ ├── apply # Apply reviewed safe fixes on a new branch │ ├── verify # Run detected typecheck/test scripts │ ├── guard # Record reviewed legacy drift with reasons │ ├── report # Generate JSON, Markdown, and HTML evidence │ └── rollback # Restore local pre-Rescue backups ├── dock # Dock tools into your project │ ├── config # Create .buoy.yaml │ ├── skills # Create AI agent skills │ ├── agents # Set up AI agents │ ├── context # Generate CLAUDE.md context │ ├── hooks # Set up hooks (--claude for self-validating AI) │ ├── commands # Install Claude slash commands │ ├── plugins # Show available scanners │ ├── tokens # Generate/export design tokens │ │ ├── compare # Compare token sources │ │ └── import # Import tokens from Figma/CSS │ └── graph # Build design system knowledge graph │ └── learn # Learn patterns from codebase └── ahoy # Cloud features ├── login # Authenticate ├── logout # Sign out ├── status # Account + bot + sync status ├── github # Set up GitHub PR bot ├── gitlab # Set up GitLab PR bot (soon) ├── billing # Manage subscription └── plans # Compare pricing

For AI Agents

Coding agents hardcode values because they never read your token file. Give them Buoy as an MCP server:

npx @buoy-design/cli mcp install claude   # or cursor, codex, windsurf, all

Claude Code (and any MCP client) gets four tools: list_design_tokens, find_token_for_value (#1a73e8 → --color-primary), check_ui_against_design_system (line-level, with the token and an exact line edit) and design_system_context. Claude Code also gets a PostToolUse hook that checks every style file it edits and hands the fixes back before it moves on. See docs/integrations/mcp.

In Claude Code, the plugin bundles all of it: /plugin marketplace add ahoybuoy/buoy, then /plugin install buoy@buoy.

To review every pull request as well, install the free GitHub App; no Buoy account is needed.

The show command outputs JSON for AI agents to consume:

# Get everything an AI agent needs

buoy show all --json

Just drift signals

buoy show drift --json

Components inventory

buoy show components --json

Example output:

{

"components": [...], "tokens": [...], "drift": { "signals": [...], "summary": { "total": 12, "critical": 2, "warning": 7, "info": 3 } }, "health": { "score": 78 } }

Getting Started

Complete a Rescue journey
buoy rescue plan

Review .buoy/rescue/runs/ /report.html

buoy rescue apply --run --approve buoy rescue guard --run --reason "Reviewed legacy baseline" --actor "Design systems team" buoy rescue report --run

Rescue keeps ambiguous findings review-only, runs detected project checks after applying high-confidence changes, and retains local backups for rollback. It does not commit, push, open a pull request, or upload source code. See docs/rescue.md for the complete workflow.

Configure Your Project
buoy dock

Smart walkthrough that sets up:

  1. .buoy.yaml — Project configuration
  2. AI agent skills — For Claude Code, Copilot, etc.
  3. CLAUDE.md context — Design system documentation
  4. Git hooks — Pre-commit drift checking
Configure severities per drift type
# .buoy.yaml

project: name: my-app

drift: severity: hardcoded-value: critical naming-inconsistency: warning

Ignore specific drift (filter by type, file, component, token, value, severity)

ignore:

  • type: hardcoded-value file: "src/legacy/**"
  • severity: info

Promote matching drift to a higher severity

promote:

  • type: hardcoded-value file: "src/components/**" to: critical reason: "Design system components must use tokens"

Enforce — always treat matching drift as critical

enforce:

  • type: naming-inconsistency component: "^Button" reason: "Button naming is standardized"

health:

CI gate — exit code 1 if health score falls below threshold

failBelow: 70

Drift Detection

Quick Check
buoy drift check

Fast pre-commit hook friendly. Exits with error code if drift found.

Detailed Analysis
buoy show drift
{

"drifts": [ { "type": "hardcoded-value", "severity": "warning", "file": "src/components/Button.tsx", "line": 24, "message": "#3b82f6 should use var(--color-primary)", "suggestion": "var(--color-primary)" } ] }

Fix Issues
buoy drift fix                    # Interactive fix suggestions

buoy drift fix --dry-run # Preview changes buoy drift fix --apply # Apply reviewed high-confidence fixes

Ignore Existing Drift

For brownfield projects, ignore existing issues and only flag new ones:

buoy drift ignore all -r "Legacy code before design system"     # Ignore all current drift with reason

buoy drift ignore add -r "Third-party components" # Add new drift to ignore list buoy drift ignore show # View ignored drift with reasons buoy drift check # Only fails on new drift

A reason is required when ignoring drift to maintain accountability.

CI Integration

GitHub Actions
name: Design System Check

on: [pull_request]

jobs: buoy: runs-on: ubuntu-latest steps:

  • uses: actions/checkout@v4
  • uses: actions/setup-node@v4 with: node-version: "20"
  • run: npx ahoybuoy drift check
Design health badge

Repos scanned by Buoy Cloud get a live score badge for the README:

[![design health](https://api.buoy.design/badges/OWNER/REPO.svg)](https://buoy.design)

Green at 80+, yellow at 60+, red below. It updates within five minutes of each scan.

PR Comments with Buoy Cloud
# Set up GitHub PR bot

buoy ahoy login buoy ahoy github

The GitHub bot automatically comments on PRs with drift analysis.

AI Guardrails

Keep AI coding assistants (Copilot, Claude, Cursor) aligned with your design system:

# Set up AI agents with design system context

buoy dock agents

Creates:

  • AI Skills — Design system knowledge for Claude Code
  • Claude Hooks — Auto-inject context at session start
  • CLAUDE.md — Project-specific AI instructions
Self-Validating Agents (Claude Code)

Turn Claude Code into a self-correcting agent. When Claude writes a component, Buoy checks it and feeds corrections back automatically:

buoy mcp install claude     # MCP server + line-level hook (recommended)

buoy dock hooks --claude # hook only, component-level

This installs a PostToolUse hook that:

  1. Claude writes/edits a component file
  2. Hook runs buoy drift check on the modified file
  3. If drift detected, feedback returns to Claude
  4. Claude self-corrects without prompting

Example feedback Claude receives:

⚠️ Design drift detected in Button.tsx:

• hardcoded-value: Component "Button" has 3 hardcoded colors: #3b82f6, #ffffff, #1e40af

Run buoy show drift for full details.

Works with React, Vue, Svelte, and Angular components. Skips test files and configs.

Configuration

Works without config, but you

Only the beginning is shown; read the rest in the repo

Ask PopNx