MCP server for UI Beats. Let your coding agent search, read and install animated React components.
UI Beats MCP server provides three well-named, discoverable tools for searching and retrieving React component documentation. Tool names follow verb_noun convention (search_, get_, list_) which is excellent for LLM discoverability. Descriptions are clear and actionable, ranging 140-200 characters. However, input schemas are not visible in the provided source code excerpt (only tool names and descriptions are shown in packages/mcp/src/index.ts references). Parameter types and output schemas cannot be verified. The server correctly implements tool annotations (toolAnnotations=true) and error classification is implicit through read-only risk designation. Main gap: cannot verify actual JSON Schema parameter definitions or return type documentation in the code provided.
Fetch the complete documentation for one component: description, when to use it, the full props table, a runnable usage example and the entire source file. Read this before writing code that uses a UI Beats component.
List every component in the catalogue, grouped by category. Use this to see what is available before searching.
Search the UI Beats catalogue by intent or name, e.g. 'card that flips', 'number counting up', 'animated background', 'flip-card'. Returns ranked matches with their description, docs URL and install command. Call get_component afterwards to read the actual source and props.
Input schemas not visible in source code. All three tools show parameter descriptions in the spec (query, category, limit, name) but actual JSON Schema type definitions, constraints, enums, and validation rules cannot be verified from the provided code excerpt.
Output schemas not documented. Tool descriptions mention what is returned ('ranked matches with description, docs URL, install command' for search_components; 'complete documentation' for get_component; 'every component grouped by category' for list_components) but no structured output schema is visible. LLMs cannot plan downstream tool chaining or reliably extract fields without explicit return schemas.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Parameter constraints underspecified. 'query' parameter has no stated length limits, pattern, or examples of valid intent phrases. 'limit' parameter accepts a number but no min/max bounds are documented (typical pagination default is 20, max 100). 'category' is marked optional with hint 'e.g. card or block', should enumerate valid categories or reference list_components output for discovery.
No pagination guidance for list_components. If the component catalogue grows (hundreds of components), list_components could return thousands of items, exceeding context limits. Baseline rubric (pattern:paginated-result) requires offset/limit + total count for discovery tools.
Error handling not explicit. All tools are marked READ_ONLY (safe from side effects) but no error recovery guidance is documented. What happens if search_components finds no matches? What if get_component is called with a nonexistent component name? Tool descriptions lack recovery hints like 'Call list_components to see available names.'