MCP for OpenCode

Connect the shadcn MCP server in OpenCode so it can find and install Efferd blocks.

Before you start

The agent can only install what the project is set up to receive. Add the @efferd registry first. Quick Setup walks through that.

Pro blocks need EFFERD_REGISTRY_TOKEN in .env.local. Free blocks do not need a token. The server reads components.json, so it uses the style you already chose.

Add the server

From the project that should receive the blocks, run:

bash

npx shadcn@latest mcp init --client opencode

That writes opencode.json:

opencode.json

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "shadcn": {
      "type": "local",
      "command": [
        "npx",
        "shadcn@latest",
        "mcp"
      ],
      "enabled": true
    }
  }
}

Confirm

Restart OpenCode and run opencode mcp list. shadcn should be listed and enabled.

Try it

Once the server is connected, copy a prompt and give it to your agent.

prompt

Find a hero section from @efferd

prompt

Build a landing page using @efferd blocks

prompt

Add a pricing block from @efferd

Guidelines

  • Match style to the UI you initialized. Use radix-* for Radix, or base-* for Base UI.
  • For a large block, have the agent run npx shadcn@latest view @efferd/hero-1 first so it can look at the files before adding them.
  • Keep EFFERD_REGISTRY_TOKEN out of git. A Pro install stops if the token is missing.
  • Copy the item name from the block preview. A name you invent will not install.
  • Leave {style} in the registry URL. The agent fills it in from components.json.

Next steps

  • Ask for a block by the name on its preview. The prompts above are a starting point.
  • If shadcn does not connect, the shadcn MCP documentation covers troubleshooting.
  • Other clients are on the MCP page.