
UI Registry
io.github.mrityunjay-tiwari由 GitHub 帳號 mrityunjay-tiwari 發布v0.7.1更新於 Oct 24, 2026
Live access to 12 shadcn-style component libraries so agents compose UI from real components.
概覽
讓程式助理在建立介面時,從 12 個 shadcn 風格 UI 元件庫搜尋、比較並取得真實元件。
- 可以做什麼
- 此伺服器提供六個操作即時元件登錄庫的工具:list_registries 列出可用元件庫及其授權與付費元件提示;search_components 依自然語言描述尋找元件並理解同義詞;compare_components 將同類元件從各元件庫並排取出;get_component 回傳真實原始碼、相依套件以及確切的 npx shadcn add 指令;check_consistency 讀取程式碼並標示設計衝突,例如圓角不一致、硬編碼顏色或缺少深色模式;list_components 提供附直接連結的完整目錄。結果為即時取得而非鏡像快取,因此反映目前版本。
- 適用情境
- 當助理產生前端介面、而你希望它依據真實且持續維護的元件庫,而不是自行撰寫通用標記時使用。它最適合從多個來源組合頁面、在選擇前比較方案,以及讓混合元件保持視覺一致。
- 執行需求
- 透過 stdio 在本機執行,通常以 npx -y ui-registry-mcp 從已發佈的 npm 套件啟動,因此需要 Node.js 與網路存取以連線各元件登錄庫。未宣告帳號、API 金鑰或環境變數。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 UI Registry,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
ui-registry-mcp
[npm version] [CI] [npm downloads] [license: MIT]
Coding agents are great at logic and not so good at taste. Ask one to build a pricing page and it'll hand-roll a flat, generic card from memory - when there are thousands of beautiful, open-source components sitting one fetch away that too built by people who are great UI/UX experts.
This is an MCP server that closes that gap. It plugs into Claude Code, Cursor, Windsurf, or any MCP client and lets the agent reach into 12 real component libraries — search them, pull the actual source, compare options, and check that everything looks like it belongs together — while you stay in your editor.
The idea is simple: the agent keeps the judgment (what to use, how to compose, what to tweak). The libraries keep the craft. This server is just the bridge.
Quick start
No cloning, no build. Point your MCP client at the published package:
(In Claude Code you can also just run claude mcp add ui-registry -- npx -y ui-registry-mcp.)
Then ask for UI as:
"Build a cool pricing section - look across the libraries and pick the best component or tweaking them makes up a great pricing page."
"Add a data table and make sure it matches the card above."
Behind the scenes the agent searches, compares, pulls real code into your project, and does a quick design-consistency pass before it's done. It'll also tell you which library each piece came from, so you can credit and inspect the original.
What's inside
Twelve libraries, roughly 3,700 components, all fetched live — so you always get the current version, never a stale copy.
Everything the server hands you is openly licensed and free for commercial
use — MIT across the board, except Vercel's AI Elements, which is Apache-2.0
(keep its license notice when you ship). A couple of libraries (ReUI, Aceternity)
also list premium components in their catalog — those quietly fail to install.
You don't have to think about it: ask for verified results and the server only
returns things you can actually use. Still, check a library's own license before
you ship.
Adding another library is one entry in src/registries.ts
if it exposes a standard shadcn registry — nothing else changes.
The tools
Six tools, meant to be used roughly in this order:
list_registries— what libraries are available, with their licenses and any "heads up, this one has paid components" notes.search_components— describe what you want in plain words. It understands synonyms (ask for a "modal", it finds "dialog"), and returns just names and one-line descriptions so it never dumps a wall of code into the conversation. Addverifiedwhen you only want components that are actually installable.compare_components— the same idea (say, a "pricing table") pulled from every library at once, side by side, so the agent picks the best one instead of the first one.get_component— the real source for one component: every file, its dependencies, the exactnpx shadcn addcommand, and where it came from.check_consistency— the part that makes mixed components feel like one design. It reads the actual code and flags the little clashes — one component rounds its corners more than another, one hardcodeszinc-900where the rest use your theme, one forgot dark mode — and suggests the fix for each.list_components— the full directory, every component with its direct URL, if you want to browse or link to sources.
Under the hood
If you just want to use it, everything above is enough. What follows is the how and the why — for the curious, and for anyone thinking about contributing.
The design decisions
A few choices worth explaining, because they're the difference between a demo and something you'd actually keep installed:
- It fetches live instead of mirroring. These libraries ship updates constantly. A cached copy would rot; pulling from each registry's own endpoint means you always get today's version. A short in-memory cache keeps it snappy within a session.
- It's honest about paid components. Rather than let the agent confidently pick something that 401s on install, premium items are flagged up front and filterable. Nothing worse than an agent that recommends what it can't deliver.
- Consistency is the real value, not just fetching. Anyone can wrap a registry. The thing that actually makes agent-built UI look designed is catching the token/spacing/radius drift when you mix sources — so that's a first-class tool, not an afterthought.
- It gives credit. Every component comes back with its source URL and a ready-to-show attribution line, and the agent is told to pass that on. You should always know whose work you're building on.
- One dead library can't sink a search. Requests retry on hiccups, and a registry being down just drops it from the results instead of failing the whole call.
Local development
Roadmap — honest about what's next
It's genuinely useful today, but two things would take it further, and both are real projects rather than quick wins:
- Visual previews. You pick UI with your eyes, and right now the agent picks from text. The catch: these libraries don't expose preview images consistently, so doing this properly means rendering and screenshotting components — infrastructure, not a config flag.
- Meaning-based search. Search understands synonyms today, but not intent like "something friendly for an onboarding screen." Real embeddings would fix that.
Feedback & contributing
This exists so an agent can build UI that doesn't look like every other agent's UI — and it gets better every time someone actually uses it and tells me what broke or what was missing. If you hit a rough edge, have a feature idea, or know a library that belongs in here, please open an issue. I genuinely want to hear it.
Pull requests are very welcome — especially new registries (usually a
few-line addition in src/registries.ts) and better
consistency checks. See CONTRIBUTING.md to get set up, and
CHANGELOG.md for what's changed. If it saved you some time, a ⭐
on the repo means a lot and helps other people find it.
A real thank-you to the teams behind the libraries this stands on — ReUI, Aceternity, Tailark, Cult UI, SmoothUI, Optics, beUI, Kibo, Kokonut, useLayouts, Watermelon — and to the shadcn registry ecosystem that makes them all fit together. This is a bridge to their craft; none of it works without them.
MIT licensed.
來源:README.md,提交 1b0e276
工具
0版本歷史
1- v0.7.1最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分