EneUI Catalogue

io.github.eneuiPublished by GitHub account eneuiv1.0.0Updated Nov 14, 2026

Search 109k UI components and 1,556 blocks with licence evidence. Ask before you ship.

VerifiedStreamable HTTPWeb executableKnowledge & MemoryDeveloper ToolsMedia & Design

Overview

AI-generated overview

Hosted catalogue of React/Tailwind/shadcn components and blocks that lets an assistant find UI parts, get install commands, and check licences before shipping.

What you can do
  • Search and read components: find React/Tailwind/shadcn components and fetch one by library and name with licence, page URL and install command
  • Search and read blocks: find whole page sections such as hero, pricing, navbar or FAQ, and read a block's files and registry dependencies
  • Check licences: read a library's licence file and return the detected SPDX id, repository, file hash, check date and a commercial-delivery flag
  • Design systems: list available design systems and return tokens for colours, typography, radius, shadows and spacing
  • Compose pages: produce an ordered plan of catalogue blocks for a page, with slugs, URLs, dependencies and constraints
  • Browse the catalogue: list categories…
When to use it
Use it when building or assembling a web UI and you would rather reuse an existing component or section than write one from scratch, or when you need to confirm that a library's licence allows shipping it inside a client project.
Requirements
A remote Streamable HTTP endpoint; no install, API key or signup is needed for reading. Paid tiers use OAuth 2.1 with PKCE. Network access to the hosted endpoint is required.
Before you install
Reading is open but rate-limited per IP. Licence results report what a licence file says and are not a legal opinion; libraries whose licence cannot be read come back unverified. compose_page returns a plan, not generated code, so code still comes from upstream libraries under their own licences.

Installation

In SourceWeft

  1. Open EneUI Catalogue in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.eneui%2Feneui-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "eneui-catalogue": {
      "type": "http",
      "url": "https://ui.eneawork.it/mcp"
    }
  }
}

README

EneUI MCP

English · Italiano

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 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, 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

ToolWhat it answers
search_components"find a pricing table / modal / animated hero instead of writing one"
get_componentone component: description, licence, page, install command
search_blocks"find a whole section" (hero, pricing, navbar, FAQ, footer)
get_blockone block: files, registry dependencies, source
check_licencemay 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_systemstokens before writing any style
compose_pagean ordered plan of blocks for a page, not generated code
list_categories, get_pagebrowse, 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 libraryin package.json.

More, with the shape of a good answer: examples/prompts.md (Italian: 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

Contributing

A wrong licence is a bug. See 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.

Source: README.md at commit 5339fa0

Tools

10

search_components

Find an existing React/Tailwind/shadcn component instead of writing one from scratch. Call this first for any UI task: modal, pricing table, animated hero, form, dashboard card. Every result carries the licence and the one-line install command, so the code can ship inside a client project.

Parameterslimitqueryrequiredlibrarycategory

get_component

Read one component by library + name: description, license, page URL and the install command.

Parametersnamerequiredlibraryrequired

search_blocks

Find a whole page section (hero, pricing, navbar, footer, testimonial, FAQ) instead of assembling one by hand. A block is a complete section published as `registry:block`, not a single component. Use this when the task is 'build the page', and check_licence before shipping a block to a client.

Parameterslimitqueryrequiredsource

get_block

Read one block by source + name: description, file list, registry dependencies and where it is published.

Parametersnamerequiredsourcerequired

check_licence

Check whether a library may be shipped inside a client project. Reads the repository's licence file and returns the detected SPDX id, the repository, the sha256 of that file, the check date and a safe_for_commercial_delivery flag. A library whose licence could not be read comes back as unverified — never assume it is permissive. Call this before delivering code that contains a third-party library.

Parameterslibraryrequired

get_design_system

Return design tokens (colours, typography, radius, shadows, spacing) plus agent instructions, so generated UI stays visually consistent. Call this before composing a page.

Parametersslug

list_design_systems

List the available design systems with one-line descriptions.

Takes no parameters.

compose_page

Compose a page from real catalogue blocks. Returns an ordered plan with block slugs, page URLs, dependencies and constraints, not generated code.

ParameterslimitthemeintentrequiredpageTypesections

list_categories

List catalog categories with the number of components in each, so an agent can browse instead of guessing queries.

Takes no parameters.

get_page

Fetch any catalog page as Markdown (a component, a category hub, a library page, an article). Use the same paths as the site, e.g. /components/cat/modal or /blog.

Parameterspathrequired

Version history

1
  1. v1.0.0LatestNov 14, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts