Skip to main content
Glama

Neat Labs

The public site at neatlabs.design: the marketing pages and waitlist for the Neat Labs editor, an open library of React and Tailwind components and style guidelines, and a read-only MCP server that gives coding agents the same library. The editor itself is a separate, private app.

  • Components are copyable source files: no imports, no client JavaScript, styled through --nl-* CSS variables. Every one is rendered on the site before you copy it.

  • Styles set those variables: color roles for light and dark, type with font licenses, radius, section spacing, and written do and don't rules. When a style leaves a value out, the site and the MCP server say so. They don't fill it in.

  • Every item has a permission record. See PROVENANCE.md. Catalogue 0.1.0 has 7 components and 3 styles, all written for this repository.

The library is a set of references. The editor and your own agents should adapt a component to the components and tokens a project already has, not paste it in unchanged.

Run it

bun install
bun run dev        # builds the CSS, then serves the site on http://localhost:3100
bun run check      # validate the catalogue, typecheck, build CSS, run tests

Path

What it is

/

Home page and waitlist

/components

Components, with search, type filter, and a preview style

/components/:id

Desktop and phone previews in light and dark, the copyable files, requirements, token roles, accessibility notes, and the same component in every style

/styles/:id

Swatches with roles, hex values, and contrast; type specimens; radius and spacing; guidelines; missing fields

/specimen/:id?style=&mode=&example=

The isolated page each preview frame loads

/catalogue.json

The whole validated catalogue, for programs such as the Neat Labs editor

/api/mcp

The MCP server over Streamable HTTP

/connect

Client setup

/api/waitlist

Waitlist signups (JSON or a plain form post)

Related MCP server: ui-registry-mcp

MCP

The server is read-only and stateless. It returns catalogue data and preview links, and has no access to repositories, files, or accounts.

Tool

Returns

search_components

IDs, revisions, token roles, and preview links, filtered by keyword and type

get_component

Source, requirements, token roles, accessibility notes, provenance. With style, also theme.css, unresolved tokens, and font status

list_styles

Styles with light swatches, modes, and missing fields

get_style

Color roles per mode, typography and font licenses, radius, spacing, guidelines, provenance

find_components, theme_component

Older names from neatlabs.design/api/mcp, kept so existing configurations still work. brand takes a style ID

Hosted, with Claude Code:

claude mcp add --transport http neat-labs https://<site>/api/mcp

Local, over stdio:

claude mcp add neat-labs -- bun run /path/to/neat-labs/src/mcp/stdio.ts

Set NEAT_LIBRARY_URL for the stdio server if you want it to return preview links; without it, previewUrl is null.

Tested on 2026-09-25 against a local server with MCP SDK 1.30.1 (in test/mcp.test.ts), Claude Code 2.1.283 over HTTP and stdio, and Codex CLI 0.157.0 over HTTP. The public host isn't deployed yet.

Layout

catalogue/
  catalogue.json               version and release date
  components/<id>/component.tsx
  components/<id>/meta.json    type, summary, examples, states, accessibility notes, provenance
  styles/<id>.json             colors, typography, radius, spacing, guidelines, provenance
src/catalogue/                 schema, loader, theme export
src/mcp/                       tool definitions, HTTP and stdio transports
src/site/                      server-rendered pages, specimens, and the waitlist

Revisions are content hashes of each item's files, so a changed component gets a new revision. The loader rejects entries with missing fields, unknown token roles, imports in component source, or no permission record.

Deployment notes are in docs/deployment.md.

Contributing

Read CONTRIBUTING.md before opening a pull request. Items without a clear right to redistribute aren't accepted, however useful they are.

License

MIT, in LICENSE. Fonts aren't bundled and keep their own licenses: see PROVENANCE.md.

Related MCP Connectors

Related MCP Servers