Mlola UI
MCP serverMediaGives your coding agent Mlola's UI components, design tokens, style rules, and a way to check its markup.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use Mlola UI to get design rules
About this server
Mlola UI components, tokens and design rules for coding agents, with a markup checker
Install Mlola UI
The server’s own address, for the clients that take one directly. Or connect ahel onceand every client you use reads it from one address, with the account kept on ahel rather than in each client’s config.
Claude Code
claude mcp add --transport http --scope user mlola-ui 'https://ui.mlola.com/mcp'Run it once in your project, then open /mcp to approve any sign-in the server asks for.
Claude Desktop
https://ui.mlola.com/mcpAdd a custom connector in Settings, paste this address, and approve the sign-in.
Cursor
cursor://anysphere.cursor-deeplink/mcp/install?name=mlola-ui&config=eyJ1cmwiOiJodHRwczovL3VpLm1sb2xhLmNvbS9tY3AifQ==Open the link and Cursor adds the server at that address.
ChatGPT
https://ui.mlola.com/mcpIn Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.
Codex
codex mcp add mlola-ui --url 'https://ui.mlola.com/mcp'Run it once, then sign in with codex mcp login mlola-ui if the server asks for an account.
From the project's README
As published by mlolahq/mlola-ui in README.md.
A framework-free design system with a machine-readable contract.
The engine emits plain CSS and DTCG JSON with no runtime dependency, interaction behavior ships as a standard DOM module, and React is one supported consumption path — source-copied components — rather than a requirement. Mlola does not ship a utility framework or outsource its identity to a styling, animation, primitive, or icon runtime.
The contract is generated from the stylesheet and audited, so a model cannot
invent a class or attribute that does not exist.
contract.json lists every class and
the data-* / aria-* attributes the CSS reacts to, and
agents.md is generated from the same
source. Both are checked in CI, so the guide can never describe a library that
is not there.
Your coding agent knows it too. npx mlola-ui init writes the guide and an
AGENTS.md section into the project, and npx mlola-ui mcp is an MCP server
that Claude Code, Cursor, Codex and VS Code can ask: which component fits,
which token to read, whether the markup it just wrote is right. See
Coding agents.
Mlola Theme
A theme is a coherent transformation across eight expression channels:
type · geometry · density · depth · motion · texture · rhythm · icon
Component anatomy, semantics, keyboard behavior, accessible names, and state contracts remain invariant. Accessibility and user preferences always take precedence over expression.
Canonical themes:
- Graphite (
graphite, default) — neutral, crisp, quiet, and product-first - Atelier Umami (
atelier) — editorial, warm, tactile, and measured - Machined Titanium (
machined) — compact, angular, exact, and damped - Aerogel Glass (
aerogel) — light, luminous, elastic, and translucent - Nordic Earth (
nordic) — organic, airy, earthy, and gently rounded
Activate a theme with native attributes:
<html data-theme="graphite" data-mode="light">
Theme methodology
- Theme states the intended character as one normalized vector.
- Anatomy fixes semantics and interaction contracts.
- Synthesis derives tokens, recipes, spring motion curves, and icon parameters from the vector and a deliberately sparse set of couplings.
- Tuning maps those derived foundations into intent-oriented component recipes.
- Evaluation enforces accessibility, perceptual distance, browser behavior, and performance.
Accessibility is a projection applied at every stage, not a channel the vector can trade away. See the architecture, the theme methodology, and the quality contract.
Layers
Source is four ordered layers, each built from the one below:
- Components — a single primitive with one job (
Button,Card,Tabs). - Blocks — one section of a page (
Hero,Navbar,Pricing tiers). - Pages — one complete route assembled from blocks (
Landing,Pricing,Dashboard). - Templates — a multi-page flow with routes and cross-page state (the storefront: catalog → product → cart → checkout → confirmation).
The open-source core is MIT: the engine, tokens, behavior, motion, scene, icons, the free components and the CLI. Mlola Pro adds the AI, code, canvas, editor, workflow and chart components, plus blocks, pages and templates. Pro is a one-time commercial license and is not in this distribution; see ui.mlola.com/pricing.
Every item is source-owned through the CLI. See component anatomy.
Packages
@mlola-ui/engine— generated static CSS, spring easings, and theme metadata@mlola-ui/behavior— framework-free interaction runtime and shared decision logic@mlola-ui/motion— native kinetic primitives and the spring integrator@mlola-ui/scene— optional lightweight spatial presentation@mlola-ui/icons— Mlola Glyph DNA icon catalog@mlola-ui/registry— validated source metadata and snapshotmlola-ui— source-copy CLI
Components, blocks, and templates are source-owned through the CLI. React
components vendor their own small runtime helpers and share pure decisions with
the framework-free runtime through @mlola-ui/behavior/logic, so the two paths
cannot drift.
Quick start
npx mlola-ui init
npx mlola-ui add button card input tabs sheet
npx mlola-ui doctor
Then import styles/mlola/index.css once and set data-theme="graphite" on the
root element. init installs the engine and add the packages each component
imports; files go where your @/ alias points, or into src/. Next.js and Vite
both work as created, with or without Tailwind.
The CLI installs the open-source components. With a Mlola Pro license, create a token at ui.mlola.com/account, then:
npx mlola-ui login mlp_…
npx mlola-ui add conversation kanban
Development
npm install
npm test
The public repository, mlolahq/mlola-ui,
is exported from the main repository, where code generation and the full audit
suite run; its generated stylesheets, tokens and registry are their output.
See MIRROR.md there.
The repository rejects shipped Tailwind, clsx, tailwind-merge, CVA, Lucide, Radix, transitions.dev, and external motion runtimes. Development-only verification tools are not shipped to consumers.
See CONTRIBUTING.md, the changelog, and the 0.3 to 1.0 migration guide.
Tools it offers (6)
What this server listed when ahel dialed its public endpoint in Sep 2026, with no key and no account of yours. The names are the server’s own.
get_design_rulessearch_componentsget_componentget_tokenscheck_markupget_install_command
Signals
- Last commit
- Sep 2026
- Weekly downloads
- 4k
Advanced
- Delivery
- mlola-ui MCP server → your ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
io-github-mlolahq-mlola-ui- Source
- github.com/mlolahq/mlola-ui
- Hosted endpoint
https://ui.mlola.com/mcp