Skip to content
Sign inJoin waitlist

Framebrick MCP server

The Framebrick MCP server connects your coding agent to the Framebrick library. Through one endpoint it searches our templates, components and page blocks with scored matching, reads the real props, returns the exact install command and plans a whole page from blocks, so the agent ships real Framebrick instead of guessing.

Endpoint https://mcp.framebrick.co
Transport Streamable HTTP (stateless)
Cost Free, no account, no key
Access Read-only: nothing is written to your project
Limit 120 requests a minute per address (answers carry RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset)

The older address https://framebrick.co/api/mcp answers the same way, so a configuration that uses it keeps working. We tested the server with the official MCP TypeScript client (initialize, the tool and prompt lists and every tool). The setup steps for each agent below follow that agent’s own documentation; we have not run each agent ourselves.

Every tool answers against the live catalog. All of them are read-only.

  • search: ranked matches for what you describe across templates, components and blocks. Arguments: query (required), type (all, template, component or block), limit (1 to 20, default 8). Each hit has a score, why it matched, its access (free, pro or ultimate), the page URL, a preview URL where there is one and the install command. weak: true means nothing fits well: the agent should say so instead of forcing a pick.
  • get_template: a template’s pages, features, use cases, the editions with the plan each needs and the demo URLs. Argument: slug.
  • get_component: the usage example, props table, notes and install command of one to ten components. Argument: slugs. Slugs that do not exist come back in notFound.
  • get_block: a block’s category, usage, props, the components it installs, its preview and install command. The source is never returned: it comes from the blocks registry with a Pro or Ultimate token. Argument: slug.
  • plan_page: turns what you want (“a landing page for a branding studio with projects, a team and a contact section”) into ordered sections, each with the best-matching block, why, its install command, its preview and a few alternatives. A section with no block says so. Arguments: intent (required) and an optional list of sections to choose yourself (Header, Hero, Services, Projects, Process, Stats, Team, Testimonials, Listings, Blog, Careers, FAQ, Call to action, Contact, Footer).
  • install_command: the exact command and components.json registry entry to install a component or block, and what the project needs first. For a template it says where to get each edition. Arguments: type and slug.
  • get_plans: what is free, what Pro and Ultimate include and their prices (null while a plan is not on sale yet).

The server also offers three MCP prompts. Clients that show MCP prompts list them as slash commands; in Claude Code they are /mcp__framebrick__build, /mcp__framebrick__add and /mcp__framebrick__fix.

  • build (request): plan a page from blocks, read every item, check the plan, install and wire in.
  • add (what): find one component or block, read it and install it.
  • fix (optional target): check how the project uses Framebrick against the real props and rules.

Each one fixes the order of work (search, read, check the plan, install, check the result) and ends with the same checks: reduced motion, keyboard, a 390 px wide screen and dark mode.

  1. Add the server. Register https://mcp.framebrick.co as an HTTP MCP server wherever your agent configures MCP. A one-line command in a CLI, a settings file in an editor, a connector screen in a hosted service. The pages for each agent are listed below.

  2. Add the registry to your project’s components.json so the install commands resolve (a Next.js or Vite project with shadcn/ui set up):

    {
    "registries": {
    "@framebrick": "https://framebrick.co/r/{name}.json"
    }
    }

    Page blocks need a Pro or Ultimate plan: see the blocks installation page.

  3. Install the Agent Skills (optional, recommended) and describe what you want in plain language. The skills make the agent work the way the commands do.

The exact command or settings path for each agent, from that agent’s own documentation:

Any other client that accepts a remote MCP server by URL needs the endpoint above, the Streamable HTTP transport and no authentication.

There is no sign-in and no key. The server answers the same to everyone; what differs is the plan an item needs, which every result states. It never returns the source of a page block: that stays behind your registry token (Pro or Ultimate), and the install command is what the agent runs. Beyond 120 requests a minute from one address the server answers 429 with a Retry-After (the seconds left in the window). Inputs are capped (a search query at 200 characters, a page intent at 500, a request body at 64 KB) and a request over a cap is refused with a clear message. If you build a tool on top of the server and need more, write to us.

Terminal window
curl -s -X POST https://mcp.framebrick.co \
-H "content-type: application/json" -H "accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

The answer lists the seven tools. A browser that opens the address is sent to framebrick.co/mcp; a GET from a client answers 405, because the server keeps no session and opens no stream.

  • The agent says it cannot connect. Check that the URL is exactly https://mcp.framebrick.co (no path, no trailing slash) and that your agent supports remote HTTP servers, then run the check above from the same machine.
  • The tools do not show up. Restart the agent after adding the server; most read the list at start.
  • Answers stopped for a minute. You passed the request limit; wait a minute.
  • The agent cannot install a block. Blocks need the registry token of a Pro or Ultimate plan in components.json; the Agent Skills tell the agent to say so instead of hand-writing the block.

Still stuck: write to us.