EneUI MCP
Officialby eneui
README.md
# EneUI MCP
**English** · [Italiano](README.it.md)
A UI catalogue over MCP: **109,000+ React / Tailwind / shadcn components**,
**1,556 composed blocks** and **12,000+ icons** — with the source, the declared
licence and a one-line install command on every record.
The endpoint is hosted. This repo carries the manifest, the client setup and the
examples; the catalogue itself is not redistributed here.
> Listed in the [official MCP registry](https://registry.modelcontextprotocol.io/?q=eneui) as `io.github.eneui/eneui-mcp`.
```
https://ui.eneawork.it/mcp
```
- Transport: Streamable HTTP (JSON-RPC 2.0)
- Auth: none for reading (per-IP rate limit); OAuth 2.1 + PKCE for paid tiers
- No API key, no signup, no install for the remote server
## Why this exists
Copying a component from GitHub is free and takes two clicks. What it does not
give you is the answer to the question that stops an invoice: *may I ship this
to my client?* The repository usually has a licence file, sometimes it has none,
and nobody reads it before delivery.
`check_licence` reads that file, detects the SPDX id, stores the sha256 and the
date, and says whether the library can travel inside a client project. That is
the whole product.
## 30-second setup
**Claude Code**
```bash
claude mcp add --transport http eneui https://ui.eneawork.it/mcp
```
**Cursor / any client with a JSON config**
```json
{
"mcpServers": {
"eneui": {
"type": "streamable-http",
"url": "https://ui.eneawork.it/mcp"
}
}
}
```
**No client at all** — runnable script: [`examples/curl.sh`](examples/curl.sh), or inline:
```bash
curl -s https://ui.eneawork.it/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'
```
## Tools
| Tool | What it answers |
|---|---|
| `search_components` | "find a pricing table / modal / animated hero instead of writing one" |
| `get_component` | one component: description, licence, page, install command |
| `search_blocks` | "find a whole section" (hero, pricing, navbar, FAQ, footer) |
| `get_block` | one block: files, registry dependencies, source |
| `check_licence` | **may I ship this to a client?** detects the SPDX id from the repo's licence file, returns the sha256 and a `safe_for_commercial_delivery` flag |
| `get_design_system` / `list_design_systems` | tokens before writing any style |
| `compose_page` | an ordered plan of blocks for a page, not generated code |
| `list_categories`, `get_page` | browse, and read any page as Markdown |
`check_licence` is the reason this server exists: every other catalogue tells you
a component exists, none tells you whether the licence travels with it.
## Prompts that work
```
Search EneUI for a three-tier pricing section with an annual toggle,
then check the licence of the library it comes from.
```
```
Build a landing page: hero, logos, features, pricing, FAQ, footer.
Use compose_page, then get_block for each one.
```
```
Before I ship this repo to a client, check the licence of every library
in package.json.
```
More, with the shape of a good answer: [`examples/prompts.md`](examples/prompts.md)
(Italian: [`examples/prompts.it.md`](examples/prompts.it.md)).
## What this repo is not
- Not a dump of the catalogue. The records belong to the libraries that
published them and keep their upstream licence.
- Not a legal opinion. `check_licence` reports what a licence file says, with the
hash that proves which file was read.
- Not the crawler.
## Links
- Catalogue: https://ui.eneawork.it
- Agent conventions: https://ui.eneawork.it/AGENT.md
- One-page skill: https://ui.eneawork.it/agent-skill.md
- `llms.txt`: https://ui.eneawork.it/llms.txt
- Manifest: `server.json`
- GitHub org: https://github.com/eneui
## Contributing
A wrong licence is a bug. See [`CONTRIBUTING.md`](CONTRIBUTING.md) and the licence-correction issue form — corrections are the most useful contribution this project can get.
## Licence
The code and documents in **this repo** are MIT (see `LICENSE`).
The catalogue records keep their upstream licences — see `NOTICE`.
This server cannot be deployed
Maintenance
ActivityMaintained
ResponsivenessNo recent community issues