Magic (21st.dev)
Magic is the MCP server from 21st.dev that generates React UI components from a plain-language description inside your editor. The published npm package is now a thin shim: it announces itself as the 21st MCP and proxies every call to the hosted API at 21st.dev, which means the real work, and the billing, happen on their servers.
How we started it
npx -y @21st-dev/magicUse it only if you already have a 21st.dev account and a fresh key, because without one it starts and then does nothing. We booted it clean and it came up in 6019 ms, then listed zero tools and told us the old Magic keys had been reset. The generated components are genuinely nice and the shim is honest about what it is, but a UI generator that phones a paid API for every call is a dependency, not a local tool, and your agent gets no capability at all until you pay the toll.
Use it if
Skip it if
The bill for your context window
There is no context tax to report here, and that is the finding: with no key the tools/list response came back as 2 bytes, 0 tools, an estimate of 1 token at 4 chars per token, measured on 2026-08-19. Zero tokens spent and zero capability gained is not a bargain. Once a key is present the surface is small by design, a handful of generation and search tools rather than the two dozen a database server needs, so the honest comparison is against the heaviest servers we measured this round, which spend thousands of tokens before you ask them anything. Magic's cost lands on your invoice instead of your window.
Setup reality
Run it with npx and it starts fine as an unprivileged user with no config, which is exactly the trap: it starts, prints its notice, and offers nothing. You need a key from 21st.dev/mcp, passed either as the API_KEY argument or through the TWENTY_FIRST_API_KEY or API_KEY_21ST environment variables. Transport is stdio, the shim reports itself as v0.2.2, and the proxy target is printed in plain text on startup so you can see where your prompts are going. Keys issued for the old Magic branding were invalidated in the rename, so a working setup from last year is now a broken one.
Questions people ask
Why does the Magic MCP server show no tools?
Because it has no API key. When we started it clean it booted in 6019 ms and then returned an empty tool list along with a notice that it now proxies to 21st.dev and needs a fresh key. Supply one and the tools appear.
Does my old Magic API key still work?
No. The startup message states that old Magic keys were reset when the server became the 21st MCP, and points you to 21st.dev/mcp for a new one. Any config carrying the previous key will boot and stay empty.
Does Magic run locally or send my prompts to a server?
It sends them. The npm package is a shim that proxies to the hosted API at 21st.dev, which it prints on startup. If your prompts include proprietary code or design details, that transfer is the thing to weigh.
How this page is made: the server is spawned as an unprivileged user with a clean environment and no credentials, then asked for its tools, resources and prompts over stdio. Token figures are estimates at four characters per token, not a tokenizer count. One run, one machine. Corrections: contact the desk.