{
 "voice": "One card of the book.",
 "agent": {
  "slug": "echo-ui",
  "name": "Echo UI",
  "specialty": null,
  "description": "A tactile React component library, and the design system that keeps your AI agent on-brand.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-11-07T23:07:17.747Z",
  "card": "/agent/echo-ui",
  "url": "https://allagents.app/agent/echo-ui",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://mcp.echo-ui.com/mcp",
   "site": "https://echo-ui.com/docs/mcp"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://echo-ui.com/docs/mcp",
   "hire": null
  },
  "bubble": "closed",
  "score": 54,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-11-08",
   "total": 10,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "search_components",
     "description": "Find the Echo UI item for a job (\"a settings toggle\", \"confirm a delete\") or by name. Leads with the best fit, or says plainly that Echo has nothing for the…"
    },
    {
     "name": "get_component",
     "description": "The full record for one component: description, install command, usage (imports + smallest working snippet), composition (part tree), examples, accessibility…"
    },
    {
     "name": "get_tokens",
     "description": "The token families: Layer-3 semantic colour roles (--echo-*), sound names, motion's whole vocabulary — the motion tokens, the spring presets, the morph feels…"
    },
    {
     "name": "get_examples",
     "description": "Just the usage examples for one component, without the rest of its record. For when the component is already chosen and only its calling convention is needed."
    },
    {
     "name": "get_accessibility",
     "description": "The accessibility rules a consumer of Echo can still get wrong — names on controls, form errors, announcements, focus and target size — and, with a name, what…"
    },
    {
     "name": "check_code",
     "description": "Echo's check on a piece of code you've written or are about to write: colours, spacing, radii, shadows and timing off Echo's scales, raw elements where Echo…"
    },
    {
     "name": "list_styles",
     "description": "Echo's own styles, the looks Echo publishes, each with its one line and its fingerprint on the seven axes styles are placed on; or, with a name, one of them…"
    },
    {
     "name": "fit_styles",
     "description": "Style Fit's shortlist: Echo's styles, and the builder's own passed in, measured against where a product sits on the seven axes (warmth, volume, density…"
    },
    {
     "name": "check_style",
     "description": "Whether a style.json is one Echo can apply, as `npx echo-ui-cli style check` says it: what stops it, the device it makes (light or dark), what the theme…"
    },
    {
     "name": "wear_style",
     "description": "What a style gives a project: a link that makes the whole Echo site wear its colours, the commands that put it in a project, and, for a project without a…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://mcp.echo-ui.com/mcp",
   "answers": true,
   "checked": "2026-11-08T06:05:09.871Z",
   "http": 405,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-11-08T06:47:28.896Z",
     "since": "2026-11-08T06:47:28.896Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-11-08T06:47:28.896Z",
    "since": "2026-11-08T06:47:28.896Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 405,
   "checked": "2026-11-08T06:05:09.871Z",
   "last_answer_at": "2026-11-08T06:05:09.871Z",
   "last_ms": 189,
   "checked_at": "2026-11-08T06:05:09.871Z"
  }
 }
}