Eldora UI MCP Server
Provides UI components for Clerk authentication, including OTP input components for user verification flows.
Provides UI components for GitHub-style interfaces, including inline comment components for code review experiences.
Provides device mockup components for Safari browser interfaces, enabling realistic browser UI previews and presentations.
Provides SVG-based UI components including ripple effects and other scalable vector graphics elements for web interfaces.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Eldora UI MCP Serveradd a live button with shine effect to my landing page"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@eldoraui/mcp
Official ModelContextProtocol (MCP) server for Eldora UI.
Install MCP configuration
npx @eldoraui/cli@latest install <client>Supported Clients
cursor
windsurf
claude
cline
roo-cline
Related MCP server: Webpixels MCP Server
Manual Installation
Add to your IDE's MCP config:
{
"mcpServers": {
"@eldoraui/mcp": {
"command": "npx",
"args": ["-y", "@eldoraui/mcp@latest"]
}
}
}Example Usage
Once configured, you can questions like:
"Make a marquee of logos"
"Add a live button with shine effect"
"Add a novatrix background"
Available Tools
The server provides the following tools callable via MCP:
Tool Name | Description |
| Provides a comprehensive list of all Eldora UI components. |
| Provides implementation details for grid components. |
| Provides implementation details for terminal, marquee, github-inline-comments components. |
| Provides implementation details for animated-badge, card-flip-hover, integrations, testimonal-slider components. |
| Provides implementation details for blur-in-text, fade-text, font-weight-text, gradual-spacing-text, letter-pull-up-text, multi-direction-slide-text, scale-letter-text, seperate-away-text, wavy-text, word-pull-up-text components. |
| Provides implementation details for live-button, animated-shiny-button components. |
| Provides implementation details for animated-frameworks, map, svg-ripple-effect, clerk-otp, cobe-globe components. |
| Provides implementation details for novatrix-background, hacker-background components. |
| Provides implementation details for afari-browser, iphone-17-pro, macbook-pro ,ipad ,browser components. |
MCP Limitations
Some clients have a limit on the number of tools they can call. This is why we opted to group the tools into categories. Note: For more specific context on each component, run the MCP locally and modify the logic that groups the components.
Available Tools
9 toolsgetBackgroundsB
Provides implementation details for novatrix-background, hacker-background components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It states what the tool does but lacks details on traits like whether it's read-only, requires authentication, has rate limits, or what format the implementation details are returned in. For a tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core purpose and specifies the exact components involved, making it easy to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (0 parameters, no output schema, no annotations), the description is minimally adequate. It explains what the tool does but lacks context on behavioral aspects like safety or output format. Without annotations or output schema, the description should ideally provide more guidance on what 'implementation details' entail, but it meets basic requirements for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't mention parameters, which is appropriate. Baseline for 0 parameters is 4, as the description doesn't need to compensate for any schema gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: providing implementation details for specific components (novatrix-background, hacker-background). It uses a specific verb ('provides') and identifies the target resources. However, it doesn't explicitly differentiate from sibling tools like getUIComponents or getEffects, which might also provide component details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, context for usage, or comparisons with sibling tools like getUIComponents or getEffects that might handle similar components. The agent must infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getButtonsB
Provides implementation details for live-button, animated-shiny-button components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'provides implementation details,' implying a read-only operation, but doesn't clarify aspects like authentication needs, rate limits, or what format the details are returned in. This is a significant gap for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without any wasted words. It is front-loaded and appropriately sized for a tool with no parameters, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 0 parameters, no annotations, and no output schema, the description is minimally adequate. It explains what the tool does but lacks details on behavioral traits, output format, or differentiation from siblings. For a simple tool, this might suffice, but it leaves gaps in usage and transparency.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, which aligns with the schema. A baseline of 4 is applied since it doesn't add unnecessary information beyond the schema's completeness.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Provides implementation details for live-button, animated-shiny-button components.' It specifies the verb ('provides') and resource ('implementation details'), and identifies the target components. However, it doesn't explicitly differentiate from sibling tools like getUIComponents, which might cover similar UI elements.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description offers no guidance on when to use this tool versus alternatives. It doesn't mention any context, prerequisites, or exclusions, nor does it refer to sibling tools like getUIComponents that might overlap. This leaves the agent without clear usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getDevicesC
Provides implementation details for safari-browser, iphone-17-pro, macbook-pro, ipad, browser components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool 'provides implementation details,' implying a read-only operation, but doesn't disclose behavioral traits such as data format, rate limits, permissions needed, or error handling. This is inadequate for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that lists the target components without unnecessary words. It could be more front-loaded by specifying the verb earlier, but it's appropriately sized and avoids waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a description that only lists components without explaining return values, format, or usage context, the description is incomplete. It fails to provide enough information for effective tool selection and invocation in a complex environment with many sibling tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter semantics, but this is acceptable given the lack of parameters, aligning with the baseline for 0 parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'provides implementation details' for specific device/browser components, which gives a general purpose but lacks a clear verb+resource pairing. It mentions specific targets (safari-browser, iphone-17-pro, etc.) but doesn't distinguish from sibling tools like getUIComponents or getMedia, making it somewhat vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description lists device/browser components but doesn't specify contexts, exclusions, or relationships to sibling tools like getUIComponents or getMedia, leaving usage unclear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getEffectsC
Provides implementation details for animated-frameworks, map, svg-ripple-effect, clerk-otp, cobe-globe components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'provides implementation details' but doesn't disclose behavioral traits like whether this is a read-only operation, what format the details are in, if there are rate limits, or if authentication is required. The description is too vague to inform the agent about how the tool behaves beyond its basic purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that lists component types, which is concise but not front-loaded with critical information. It could be more structured by clarifying the tool's output or usage context. While not wasteful, it lacks the efficiency of higher-scoring examples that pack more value into fewer words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a vague description, the tool's complexity is unclear but likely involves retrieving technical details. The description fails to provide complete context—it doesn't explain what 'implementation details' include, the return format, or any behavioral constraints. This leaves significant gaps for an agent to understand how to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add param info, but that's acceptable here. Baseline is 4 for zero parameters, as the schema fully covers the absence of inputs without requiring description compensation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'provides implementation details' for specific components, which gives a general purpose but lacks a clear verb-resource pairing. It distinguishes from siblings by listing specific component types (animated-frameworks, map, etc.), but doesn't explain what 'implementation details' means or how this differs from similar tools like getTextEffects or getUIComponents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description lists component types but doesn't indicate scenarios, prerequisites, or exclusions. With siblings like getTextEffects and getUIComponents that might overlap, the absence of usage context leaves the agent guessing about appropriate selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getLayoutC
Provides implementation details for grid components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It doesn't reveal whether this is a read-only operation, if it requires authentication, what the output format might be, or any rate limits. The phrase 'Provides implementation details' suggests a read operation but lacks clarity on safety or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, making it appropriately sized. However, it could be more front-loaded with specific action and resource details to improve clarity, but it's efficient given its brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (implied by 'implementation details' and sibling tools suggesting a UI/design system), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what 'implementation details' entail, the return format, or behavioral traits, leaving significant gaps for an AI agent to understand how to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so there are no parameters to document. The description doesn't need to add parameter semantics, and it doesn't introduce any confusion about inputs. Baseline is 4 for zero parameters, as the schema fully covers the absence of inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Provides implementation details for grid components' states a purpose but is vague about what 'implementation details' means and doesn't specify what kind of grid components. It distinguishes from siblings like 'getButtons' or 'getUIComponents' by focusing on 'grid components', but lacks specificity about the verb (e.g., 'retrieves', 'lists') and resource scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context, or exclusions, and with siblings like 'getUIComponents' that might overlap, there's no explicit differentiation. Usage is implied only by the tool name and vague description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getMediaC
Provides implementation details for terminal, marquee, github-inline-comments components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'Provides implementation details' but does not disclose behavioral traits such as whether this is a read-only operation, if it requires authentication, rate limits, or what the output format might be. The description is minimal and lacks critical behavioral context for a tool with no annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded and to the point, with no wasted words. It efficiently states the tool's scope. However, it could be slightly more structured by clarifying the action, but overall it is concise and well-sized for its purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a vague description, the description is incomplete. It does not explain what 'implementation details' entail, the return format, or behavioral aspects. For a tool with zero parameters but potential complexity in output, more context is needed to guide the agent effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100%, so there are no parameters to document. The description does not need to add parameter semantics, and it appropriately does not mention any. Baseline is 4 for zero parameters, as the schema fully covers the absence of inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Provides implementation details for terminal, marquee, github-inline-comments components' which is somewhat vague about what 'implementation details' means (e.g., documentation, code examples, configuration). It distinguishes from siblings by listing specific components, but the verb 'Provides' is generic and the resource 'implementation details' is ambiguous. This is better than a tautology but lacks specificity about the action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide explicit guidance on when to use this tool versus alternatives like getUIComponents or other siblings. It lists specific components, but this is more about scope than usage context. No exclusions, prerequisites, or comparisons are mentioned, leaving the agent with little direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getMotionC
Provides implementation details for animated-badge, card-flip-hover, integrations, testimonal-slider components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions 'provides implementation details,' which suggests a read-only operation, but doesn't specify format, permissions, rate limits, or other behavioral traits. The description lacks details on what 'implementation details' include, leaving the agent uncertain about the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that lists components, making it concise but not front-loaded with critical information. It could be more structured by clarifying what 'implementation details' means upfront. While efficient, it lacks depth and could benefit from additional context to improve usability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a vague description, the tool's context is incomplete. The description doesn't explain return values or behavioral aspects, leaving gaps in understanding. For a tool with 0 parameters, more detail on output and usage would enhance completeness, but it's currently inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter semantics, but this is acceptable given the schema's completeness. Baseline is 4 for 0 parameters, as the schema fully covers the absence of inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool 'provides implementation details' for specific components, which gives a general purpose but lacks a clear verb-resource pairing. It mentions animated-badge, card-flip-hover, integrations, and testimonial-slider components, but doesn't specify what 'implementation details' entails (e.g., code snippets, configurations, usage instructions). It distinguishes from siblings by listing unique component types, but the purpose remains vague.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. The description lists component types, which might imply usage for those specific components, but it doesn't clarify context, prerequisites, or exclusions. Without any when-to-use or when-not-to-use statements, the agent has minimal direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getTextEffectsB
Provides implementation details for blur-in-text, fade-text, font-weight-text, gradual-spacing-text, letter-pull-up-text, multi-direction-slide-text, scale-letter-text, seperate-away-text, wavy-text, word-pull-up-text components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It only states what information is provided ('implementation details') but doesn't describe the format of those details, whether they include code examples, configuration options, or just descriptions. It doesn't mention if this is a read-only operation, what permissions might be needed, or any rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that lists all 10 text effect components covered. While comprehensive, listing 10 specific components makes it somewhat dense. However, every element earns its place by precisely defining the tool's scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description adequately explains what information is returned (implementation details for specific text effects). However, it doesn't describe the format or structure of those details, which would be helpful given the lack of output schema. The completeness is minimal but viable for a simple lookup tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters with 100% schema description coverage, so the baseline is 4. The description appropriately doesn't discuss parameters since none exist, and instead focuses on what the tool returns (implementation details for specific text effect components).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states what the tool does ('Provides implementation details for... components') and specifies the exact components covered (10 specific text effect types). It distinguishes itself from siblings like 'getEffects' by focusing specifically on text effects rather than general effects. However, it doesn't explicitly contrast with 'getUIComponents' which might also contain text-related components.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. There's no mention of when this tool is appropriate versus 'getEffects' (which might include non-text effects) or 'getUIComponents' (which might include text components without effect details). The agent must infer usage context from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
getUIComponentsB
Provides a comprehensive list of all Eldora UI components.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'Provides a comprehensive list,' implying a read-only operation, but doesn't specify details like pagination, rate limits, or response format. For a tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that clearly states the tool's purpose without waste. It's appropriately sized for a simple tool, though it could be slightly more structured by including usage context, but it's well-front-loaded and concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'comprehensive list' entails (e.g., format, structure, or limitations), and with siblings suggesting more specific tools, it fails to provide enough context for an agent to use it effectively in this environment.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, earning a baseline score of 4 for not introducing unnecessary information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Provides') and resource ('all Eldora UI components'), making it easy to understand what it does. However, it doesn't explicitly differentiate from sibling tools like 'getButtons' or 'getLayout', which appear to be more specific subsets of UI components, so it doesn't reach the highest score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. With siblings like 'getButtons' and 'getLayout' that might retrieve specific component types, there's no indication of whether this tool is comprehensive or how it relates to them, leaving the agent without usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.0.0- Changed
getBackgrounds2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getButtons2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getDevices2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getEffects2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getLayout2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getMedia2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getMotion2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getTextEffects2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
- Changed
getUIComponents2 fields changed- added
Input schema / $schemaAdded value: +"http://json-schema.org/draft-07/schema#" - added
Input schema / additionalPropertiesAdded value: +false
9 tool updates
- First observed
getBackgrounds - First observed
getButtons - First observed
getDevices - First observed
getEffects - First observed
getLayout - First observed
getMedia - First observed
getMotion - First observed
getTextEffects - First observed
getUIComponents
TDQS
Scored across 9 tools
Each tool has a clearly distinct purpose focused on different categories of UI components, such as backgrounds, buttons, devices, effects, layout, media, motion, text effects, and a comprehensive overview. There is no overlap in functionality, making it easy for an agent to select the right tool for a specific query.
All tool names follow a consistent 'get' + plural noun pattern (e.g., getBackgrounds, getButtons, getDevices), with no deviations in style or convention. This predictability enhances usability and clarity for agents navigating the tool set.
With 9 tools, the server is well-scoped for its purpose of providing implementation details for UI components. Each tool covers a distinct category, ensuring comprehensive coverage without being overwhelming or sparse, which is ideal for this domain.
The tool set offers complete coverage of UI component categories, from backgrounds and buttons to effects and text effects, with a comprehensive overview tool. There are no obvious gaps, as it systematically addresses all major aspects of UI design and implementation in this context.
Maintenance
Related MCP Connectors
Find UI components and themes, retrieve code, and generate with hosted 21st AI when enabled.
- FlowstepOAuthai.flowstep
Generate, inspect, and manage Flowstep UI designs directly from your AI assistant.
Search and pull 500+ production-ready React + Tailwind sections and elements
Discover and install Aura UI Blade components for Laravel, Livewire and Tailwind CSS 4.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables developers to generate beautiful, modern UI components through natural language descriptions. Integrates with popular IDEs to instantly create and customize React components inspired by 21st.dev's component library.44 npmISC

Webpixels MCP Serverofficial
AlicenseAqualityDmaintenanceEnables AI assistants to search, retrieve, and assemble Bootstrap UI components from the Webpixels library. It provides tools to explore component categories, fetch HTML snippets, and build complete web pages.52 npm3MIT- AlicenseNot gradedqualityFmaintenanceEnables AI assistants to generate UI components and web interfaces from natural language descriptions using the Magic Patterns API.3 npm4MIT
- AlicenseAqualityCmaintenanceEnables AI-powered UI component generation from natural language descriptions, integrating with IDEs like Cursor, Windsurf, and VS Code.416,131 npmISC