shadcn.io is not affiliated with official shadcn/ui
Check it by hand
Before changing your editor's config, call the server without it. This asks whoami who you are:
An answer on the data: line, with your email, means your URL works: the problem is in the client's config. An error tells you which of the sections below applies.
It doesn't connect
- Copy the whole URL,
?token=and all, from your dashboard. A URL cut at the?connects to nothing. - Restart the client, or reload its servers, after editing its config: most read it once at startup.
- Check the transport. The server speaks MCP over HTTP. A client that only runs local servers needs the bridge:
npx -y mcp-remote <your URL>, which also needs Node.js. - Check the network. Behind a proxy or a firewall, the client needs HTTPS access to this site.
401 Unauthorized
The token is missing, or it isn't valid. Copy your URL again from your dashboard and replace it in every config: once you regenerate your token, the old URL stops working everywhere.
403 Pro required
The account behind the token has no Pro. The MCP comes with every Pro plan; your URL works again within a few minutes of Pro starting, with no config to change.
429 Too Many Requests
You've passed 600 calls a minute on your token. Wait a minute: the response's Retry-After header says how long. A prompt takes a handful of calls, so this usually means an agent stuck in a loop.
The same 429 comes from too many refused calls (no token, or a wrong one) from one network. Fix the token, then wait a minute.
The agent doesn't use the tools
- Name the server in your prompt:
use shadcnio to…. See Prompting. - Check that its tools are on. Some clients list each server's tools with a switch, and some cap how many tools they load across every server: turn off the servers you aren't using.
- Use agent mode where the client has one (Copilot Chat, Qodo Gen): plain chat may not call tools at all.
The output is too large
A whole docs page, or the install plan of a big component, can pass a client's limit. Ask for less: one part's props (get_component_api with part or prop), one demo, a docs section, and for a plan, have with what the project already has. In Claude Code, you can also raise the limit:
MAX_MCP_OUTPUT_TOKENS=50000 claudeIt used the wrong framework or primitives
Your agent reads them from package.json. If it can't (a chat app, a monorepo's root), say it in the prompt: "for Vue", "on Radix". When a component doesn't come on your base, the tools fall back to one it does, and say so in the response's note. See Frameworks and bases.
The install command fails
- 401 from the CLI: the token in the command is the one in your MCP URL. Regenerated it? Ask your agent for the command again.
- No
components.json: the project isn't set up yet. Ask your agent to set it up (get_project_setuphas theinitcommand), then run the command again. - Files in the wrong folder: the CLI follows your
components.jsonaliases. For Vue, Svelte and Solid, the plan's paths assume@/components/ui,@/liband@/hooks: ask your agent to adjust them to your aliases.
Still stuck? Each setup guide has its client's own FAQ.
FAQ
How do I tell a bad URL from a bad config?
Call whoami with curl, as on this page. An email on the data: line means the URL works and the client config is wrong. An error tells you which section below applies.
What does 401 Unauthorized mean?
The token is missing or no longer valid. Copy the URL again from your dashboard. After you regenerate a token, the old URL stops everywhere.
What does 403 Pro required mean?
The account has no Pro. The MCP comes with every Pro plan. The same URL works again within a few minutes of Pro starting.