Skip to main content
Glama

Aceternity MCP

Model Context Protocol server for Aceternity UI components

Discover, search, and install 106 Aceternity UI components from your AI assistant. Generate full page layouts, get context-aware recommendations, and install everything with a single command.

PyPI npm Python MCP License Tests


Install

pipx install aceternity-mcp
aceternity-mcp install

Restart your AI tool. Done.

Related MCP server: aceternityui-mcp

What It Does

Your AI assistant gets 11 tools for working with Aceternity UI:

Tool

What it does

generate_page_layout

Generate a full page layout with sections, components, and install commands

search_components

Full-text search across names, descriptions, tags, categories

recommend_components

Get recommendations for a use case or design goal

recommend_combination

Get component suggestions for each page section

match_components_to_project

Match components to a whole project description

list_components

List all 106 components with optional filters

list_categories

Show all 17 categories with component counts

get_component

Get full metadata for a single component

get_category

Get all components in a category

install_component

Get install command, dependencies, and setup steps

filter_by_scores

Filter by visual intensity, animation, performance, etc.

Page Layout Generator

The standout feature. Ask your AI to generate a complete page layout and it returns:

  • Ordered sections with recommended components for each role

  • Design tone detection (dark, premium, modern, minimal, etc.)

  • Section-specific scoring using 17 role profiles

  • De-duplicated components across sections

  • Implementation notes for every section

  • Batch install command for all components at once

  • Performance estimate and dependency summary

7 page types: landing, saas, dashboard, portfolio, ecommerce, blog, documentation

Example prompts:

"Generate a page layout for a dark premium AI SaaS landing page"
"Build me a fintech dashboard layout with analytics"
"Create a portfolio page with 3D effects and scroll animations"
"Design an e-commerce store layout for a clothing brand"

Scoring signals per component:

Signal

Description

Section-role category match

17 role profiles with preferred categories

Section-role tag match

Role-specific tag boosting

Section score weights

Tuned dimension weights per role

Archetype context

Page-level scoring (SaaS, dashboard, portfolio, etc.)

Text relevance

User description keyword matching

Design tone coherence

Boosts components matching detected tones

Dependency reuse

Bonus for shared npm dependencies

Example Prompts

"Show me subtle dark background effects with low performance impact"
"Recommend a navbar + hero + CTA combination for a SaaS landing page"
"Find highly customizable card components for testimonials"
"Give me low-motion components suitable for a dashboard"
"Install Spotlight and show me what dependencies are needed"
"What components work well for dark mode dashboards?"
"Search for animated text effects"
"Filter components with visual intensity above 7 and low performance impact"

Supported AI Tools

Tool

Auto-configured

Claude Desktop

Yes

Claude Code CLI

Yes

Cursor

Yes

Cline (VS Code)

Yes

Windsurf

Yes

OpenCode

Yes

Run aceternity-mcp install and all detected tools are configured automatically.

Manual Configuration

All tools use the same server command:

{
  "mcpServers": {
    "aceternity-ui": {
      "command": "aceternity-mcp-server",
      "args": []
    }
  }
}

Tool

Config file

Cursor

~/.cursor/mcp.json

Claude Code

~/.claude/mcp.json

Cline

VS Code extension settings

Windsurf

~/.codeium/windsurf/mcp_config.json (uses mcp_servers / aceternity_ui)

OpenCode

~/.opencode/mcp.json

CLI Commands

Command

Description

aceternity-mcp install

Interactive setup wizard

aceternity-mcp status

Show installation health

aceternity-mcp update

Check for and install updates

aceternity-mcp repair

Fix registry, configs, or permissions

aceternity-mcp diagnose

Output JSON diagnostics

aceternity-mcp uninstall

Remove from all AI tools

aceternity-mcp --version

Show version

# Repair only the registry
aceternity-mcp repair --registry

# Repair only client configs
aceternity-mcp repair --configs

# Non-interactive update
aceternity-mcp update -y

Alternative Install Methods

Docker

docker pull ghcr.io/devinoldenburg/aceternity-mcp
docker run -i ghcr.io/devinoldenburg/aceternity-mcp

npm (wrapper)

npx aceternity-mcp-server

Requires the Python package installed separately (pipx install aceternity-mcp).

pip

pip install aceternity-mcp

From source

git clone https://github.com/devinoldenburg/aceternity-mcp.git
cd aceternity-mcp
pipx install .

Component Registry

106 components across 17 categories:

Category

Count

Examples

Backgrounds

18

Aurora, Beams, Grid, Spotlight, Vortex

Cards

15

3D Card, Card Hover, Expandable Card

Text Effects

13

Typewriter, Text Generate, Gradient Text

Scroll Effects

11

Parallax, Scroll Reveal, Tracing Beam

Visualization

9

Globe, World Map, SVG Mask

Hero Sections

8

Hero Parallax, Spotlight, Lamp Effect

Navigation

7

Floating Dock, Navbar Menu

Layout

81

Bento Grid, Container Scroll, Timeline

Forms

6

Input, Placeholders, Multi-Step

3D Effects

5

3D Card, 3D Pin, Globe

Each component includes: detailed description, purpose, behavior, visual characteristics, design tone, difficulty level, dependencies, install command, compatibility flags, and 7 scoring dimensions.

Scoring Dimensions

Every component is rated 1-10 on:

Dimension

What it measures

Visual Intensity

How visually dominant (1 = subtle, 10 = dramatic)

Animation Intensity

Amount of motion (1 = static, 10 = heavy animation)

Layout Importance

Structural criticality (1 = decorative, 10 = essential)

Customization Ease

Flexibility (1 = rigid, 10 = very configurable)

Landing Page Fit

Suitability for landing pages

Dashboard Fit

Suitability for dashboards

Performance Impact

Runtime cost (1 = lightweight, 10 = heavy)

Development

git clone https://github.com/devinoldenburg/aceternity-mcp.git
cd aceternity-mcp
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"

# Run tests
pytest tests/ -v

# Lint + type check
ruff check src/ tests/
mypy src/aceternity_mcp/ tests/

# Validate registry
python scripts/validate_registry.py

Quality

  • 172 tests, 9 archetypes, 17 section role profiles, 7 page templates

  • ruff lint + format, mypy strict, bandit security scan

  • CI: quality gates on every push, auto-publish on release

Security

  • Metadata only: No Aceternity source code, documentation, or images in this repository

  • No secrets: No API keys or credentials

  • Isolated: pipx provides sandboxed virtual environments

  • Install commands: Point to Aceternity's official @aceternity shadcn registry

Troubleshooting

Command not found -- Run pipx ensurepath and restart your terminal.

Registry not found -- Run aceternity-mcp repair or pipx reinstall aceternity-mcp.

MCP server not connecting -- Run aceternity-mcp diagnose and check the output. Repair configs with aceternity-mcp repair --configs.

Update issues -- Run pipx upgrade aceternity-mcp or pipx reinstall aceternity-mcp.

License

MIT -- see LICENSE.

Available Tools

12 tools
filter_by_scoresA

Filter components by numeric scoring thresholds (1-10 scale).

All parameters are optional. Only components passing every specified threshold are returned.

Scoring dimensions:

  • visualIntensity: How visually dominant (1=subtle, 10=dramatic)

  • animationIntensity: How much animation/motion (1=static, 10=heavy)

  • layoutImportance: How critical to page structure (1=decorative, 10=essential)

  • customizationEase: How easy to customise (1=rigid, 10=very flexible)

  • landingPageFit: Suitability for landing pages (1=poor, 10=perfect)

  • dashboardFit: Suitability for dashboards (1=poor, 10=perfect)

  • performanceImpact: Runtime cost (1=lightweight, 10=heavy)

Args: min_visual_intensity: Minimum visual intensity (1-10) max_visual_intensity: Maximum visual intensity (1-10) min_animation_intensity: Minimum animation intensity (1-10) max_animation_intensity: Maximum animation intensity (1-10) min_landing_page_fit: Minimum landing page fit (1-10) min_dashboard_fit: Minimum dashboard fit (1-10) max_performance_impact: Maximum performance impact (1-10) min_customization_ease: Minimum customization ease (1-10) include_pro: Include pro components (default True)

ParametersJSON Schema
NameRequiredDescriptionDefault
min_visual_intensityNo
max_visual_intensityNo
min_animation_intensityNo
max_animation_intensityNo
min_landing_page_fitNo
min_dashboard_fitNo
max_performance_impactNo
min_customization_easeNo
include_proNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must cover behavioral traits. It explains the AND filtering logic and scoring dimensions, but does not disclose whether the tool is read-only, what the return format is, or any side effects. The output schema exists but is not referenced, leaving some gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with a clear lead sentence, bullet points for dimensions, and an args list. It is informative but somewhat lengthy; a slightly more compact version could be equally clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 9 parameters and scoring thresholds, the description covers the core functionality, parameter meanings, and logical AND combination. It omits details about the output schema and any limitations, but is largely complete for a filtering tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description fully compensates. It lists all 9 parameters, explains each scoring dimension with a scale (1-10), and notes the default for include_pro. This adds complete meaning beyond the schema titles.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool filters components by numeric scoring thresholds on a 1-10 scale. The verb 'filter' and resource 'components' are specific, and the distinct focus on scoring thresholds differentiates it from sibling tools like search_components or recommend_components.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes that all parameters are optional and only components passing every threshold are returned, implying usage for narrowing down by scores. However, it does not explicitly guide when to use this tool versus alternatives like search_components or recommend_components, nor does it mention excluded cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_page_layoutA

Generate a complete page layout with component recommendations.

Analyses the description to detect the page type, selects the best template, and fills each section with recommended components. Returns an ordered layout with install commands and dependency summary.

Supported page types (auto-detected if not specified):

  • landing: Conversion-focused landing page

  • saas: SaaS product marketing page

  • dashboard: Data-rich admin dashboard

  • portfolio: Creative portfolio or showcase

  • ecommerce: E-commerce product store

  • blog: Blog or content publication

  • documentation: Documentation or knowledge base

Example descriptions:

  • "premium AI SaaS product page with dark theme"

  • "fintech dashboard with analytics and charts"

  • "designer portfolio with 3D effects"

  • "online clothing store with product grid"

  • "developer blog with code examples"

Args: page_description: Free-text description of the page to build page_type: Explicit page type (auto-detected if omitted) include_pro: Include pro components (default True) components_per_section: Components per section (default 2, max 10)

ParametersJSON Schema
NameRequiredDescriptionDefault
page_descriptionYes
page_typeNo
include_proNo
components_per_sectionNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses returns (ordered layout, install commands, dependency summary) and auto-detection behavior, but does not mention side effects, auth needs, or rate limits. Adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is well-structured with a summary, supported types list, examples, and parameter details. Some redundancy in examples could be trimmed, but overall efficient and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and output schema presence, the description covers inputs, auto-detection, and return value. Minor gap: no mention of error handling for vague descriptions. Near complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage, but the description adds full meaning to all four parameters: what they are, defaults, constraints (e.g., max for components_per_section), and auto-detection behavior for page_type. Fully compensates for schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates a complete page layout with component recommendations, listing supported page types and giving examples. It is distinct from sibling tools which focus on individual components or cache stats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (to generate a layout), but does not explicitly mention when not to use or suggest alternatives (e.g., recommend_components for component-only tasks). Usage is inferred but not fully guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cache_statsA

Get search cache statistics for monitoring and debugging.

Returns cache performance metrics including:

  • size: Current number of cached entries

  • max_size: Maximum cache capacity

  • hits: Number of cache hits

  • misses: Number of cache misses

  • evictions: Number of evicted entries

  • hit_rate_percent: Cache hit rate as percentage

Use this to monitor cache effectiveness and tune cache parameters.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Even without annotations, the description transparently explains that the tool returns performance metrics and implies a read-only, non-destructive behavior. It covers the main behavioral aspect well.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear summary line followed by a bulleted list of returned metrics. Every sentence serves a purpose without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that the tool has no parameters and an output schema exists, the description fully explains what the tool does and why it should be used. It is complete for the monitoring context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema coverage is 100%. The description adds value by detailing the output structure beyond the schema, which is appropriate for this case.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves search cache statistics for monitoring and debugging, with a specific verb and resource. It lists the exact metrics returned, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says to use it for monitoring cache effectiveness and tuning cache parameters. While it doesn't provide when-not or alternatives, the context is sufficiently clear for appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_categoryA

Get all components in a specific category.

Returns the category info and full summaries of every component that belongs to it.

Args: slug: Category slug (e.g. "hero-sections", "backgrounds", "cards")

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are absent, so description carries transparency burden. It explains return structure (category info + component summaries) but does not mention side effects, permissions, or 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences with no fluff; the main purpose is front-loaded. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values are covered. Description adds sufficient context about output contents. Could mention error conditions (e.g., invalid slug) but fine overall.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage for the 'slug' parameter, but the description adds examples and context (e.g., 'hero-sections', 'backgrounds'), significantly aiding the agent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves all components in a category, with specific return information (category info + full summaries). It differentiates from siblings like 'list_categories' and 'get_component'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 over alternatives like 'search_components' or 'filter_by_scores'. The description provides example slugs but lacks context for decision-making.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_componentA

Get the full detailed entry for a single component.

Returns ALL metadata including the 60+ word detailed description, purpose, behavior, visual characteristics, dependencies, install commands, props, compatibility, and scoring.

Args: slug: Component slug (e.g. "spotlight", "bento-grid", "hero-parallax")

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavior. It implies a read-only operation by stating 'Get...entry,' but does not explicitly confirm non-destructiveness, idempotency, or any side effects. Adequate for a simple retrieval, but lacks depth.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, with the core purpose in the first sentence, followed by a bullet-like list of return contents. The Args line is efficient. No redundant or unnecessary text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one required parameter) and the presence of an output schema, the description adequately covers the input semantics and return scope. It could mention error conditions but is still sufficient for correct usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds concrete examples for the slug parameter (e.g., 'spotlight'), which is not present in the schema. With 0% schema description coverage, this compensates well and clarifies usage beyond the raw type definition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves full details for a single component using a slug. It distinguishes from sibling tools that list or search components, though it does not explicitly name alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides minimal guidance on when to use this tool vs. alternatives like list_components or search_components. It implies use for a single component but lacks explicit context or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

install_componentA

Get full installation instructions for a component.

Returns the install command, dependencies, registry URL, documentation link, and step-by-step setup instructions.

Args: slug: Component slug (e.g. "spotlight", "sidebar", "bento-grid")

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry full burden. It lists the returned fields (install command, dependencies, etc.) but does not disclose potential side effects, access permissions, rate limits, or any additional behavioral details beyond the return content.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise: a two-sentence main description followed by a clear Args listing. The first sentence front-loads the purpose. No unnecessary words or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one required parameter and an output schema exists (not shown but indicated), the description sufficiently covers what the tool does, what it returns, and how to use it. The examples for slug provide additional clarity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage (no description in JSON Schema for the slug parameter). However, the description's Args section adds meaning with examples (e.g., 'spotlight', 'sidebar', 'bento-grid') and explains that it is a component slug, which compensates for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Get full installation instructions for a component.' It identifies a specific resource (installation instructions) and a clear action (get). This distinguishes it from siblings like 'get_component' (likely returns component details) and 'list_components'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving installation instructions but does not provide explicit guidance on when to use this tool versus alternatives, nor does it state when not to use it. There is no mention of exclusions or context where another sibling tool would be more appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_categoriesA

List all component categories with descriptions and component counts.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavioral traits. It states the tool lists data but does not mention that it is read-only, safe, or any side effects. The agent cannot infer safety from the description alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence that front-loads the action ('List all...'). Every word adds value, with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the key output fields (descriptions and component counts). Since an output schema exists (has_output_schema: true), detailed return format is unnecessary. The description is complete for this simple, parameterless tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema coverage is 100% by default. According to guidelines, 0 parameters warrant a baseline score of 4. The description adds no parameter details, but none are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all component categories and includes descriptions and component counts. It distinguishes itself from siblings like 'get_category' (single category) and 'list_components' (different resource).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

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 like filter_by_scores or generate_page_layout. There are no explicit usage contexts or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_componentsA

List all available Aceternity UI components.

Optionally filter by category slug. Returns a compact summary for each component (slug, name, category, tags, summary).

Args: category: Optional category slug (e.g. "hero-sections") include_pro: Include pro-only components (default: True)

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNo
include_proNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description discloses the return format but does not mention pagination, rate limits, or side effects. It correctly implies a read-only operation but lacks detailed behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with five lines, front-loading the main purpose and then detailing filtering and return format. Each sentence adds value, though the Args section could be integrated more smoothly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and a low-complexity tool, the description covers purpose, filtering, and return format. It lacks error handling or behavior when no results, but output schema exists. Adequate for the task.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the burden. It explains the 'category' parameter with an example slug and notes that 'include_pro' filters pro components. This adds meaning beyond the schema's type and default.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List all available Aceternity UI components' with optional filtering by category slug. It specifies the return format (compact summary with slug, name, category, tags, summary). This distinguishes it from sibling tools like search_components and filter_by_scores.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for listing components with optional category filter. However, it does not explicitly state when to use this tool over siblings (e.g., search_components for text search, filter_by_scores for scoring). No exclusions or alternatives are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

match_components_to_projectA

Match components to a whole project description.

Similar to recommend_components but biased toward layout-critical components and returns more results for full project planning.

Args: project_description: Project description (e.g. "dashboard with dark mode") max_results: Number of results (default 15, max 100) include_pro: Include pro components (default True)

ParametersJSON Schema
NameRequiredDescriptionDefault
project_descriptionYes
max_resultsNo
include_proNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so description carries full burden. It discloses that the tool returns more results and is biased, but does not explicitly state whether it is read-only or has side effects. For a matching tool, safety profile (e.g., no modification) is implied but not stated, leaving some ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is very concise: two sentences for purpose/context, then clean bullet-style args list. No wasted words, front-loaded with key differentiation.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that output schema exists (but not shown here), description does not need to explain return structure. It covers purpose, bias, and parameters well. Could be improved by noting that the tool is read-only or clarifying 'layout-critical,' but overall adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0% (no descriptions in schema), so description must add meaning. It does so clearly: gives example for project_description, specifies default and max for max_results, and default for include_pro. These details go beyond the schema's type/default information.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool matches components to a project description. It explicitly distinguishes from the sibling 'recommend_components' by noting bias toward layout-critical components and returning more results for full project planning. Verb 'match' and resource are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description provides clear context: use for full project planning with bias toward layout-critical components. It contrasts with recommend_components via 'similar to' but does not explicitly state when NOT to use. However, the context is sufficient for an agent to decide.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommend_combinationA

Recommend a full-page component combination.

Given a project or page description, returns recommended components for each page section: navigation, hero, features, background, cards, CTA, footer, and text effects.

Args: description: Description of the page or project (e.g. "AI SaaS landing page") include_pro: Include pro components (default True)

ParametersJSON Schema
NameRequiredDescriptionDefault
descriptionYes
include_proNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It describes behavior as returning recommendations, implying no side effects. Missing explicit statement about read-only nature, but sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise at 6 sentences, front-loaded with purpose, includes structured args list using docstring format, no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With output schema present, description covers inputs and high-level output. Mentions all page sections returned, sufficient for agent to invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage, but the description fully explains both parameters: 'description' with an example and 'include_pro' with default value, adding significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it recommends a full-page component combination, listing specific sections (navigation, hero, etc.), distinguishing it from sibling tools like 'recommend_components' which likely recommend individual components.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear use case: 'Given a project or page description'. Includes example input. However, it does not explicitly exclude cases or compare to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommend_componentsA

Recommend components for a specific use case or design goal.

Analyses the description against component metadata, categories, tags, and scoring dimensions to find the best matches.

Example descriptions:

  • "premium AI SaaS landing page with dark theme"

  • "subtle background effect for a login page"

  • "testimonial section for a marketing site"

  • "animated hero for a startup landing page"

Args: description: Free-text description of what you need max_results: Number of recommendations to return (default 10, max 100) include_pro: Include pro components (default True)

ParametersJSON Schema
NameRequiredDescriptionDefault
descriptionYes
max_resultsNo
include_proNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.5/5.0
Behavior2/5

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 the analysis process but does not disclose behavioral traits such as idempotency, resource consumption, or error handling. The description lacks transparency on behavior beyond the basic operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: purpose, mechanism, examples, then parameter docs. It front-loads the key information. Minor redundancy in explaining 'analyses' could be trimmed, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the description handles inputs well but omits contextual details like edge cases, no-match handling, or differentiation from similar tools. It is adequate but not fully complete for complex usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema coverage, the description fully documents all three parameters: description with illustrative examples, max_results with default and max, and include_pro with its toggle meaning. This adds substantial value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it recommends components for a use case or design goal by analyzing descriptions. It differentiates from simple search tools but not explicitly from similar tools like 'match_components_to_project'. Thus, it's clear but lacks full sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides examples that imply usage for natural language queries, but it does not explicitly state when to use this tool versus alternatives like 'search_components' or 'filter_by_scores'. Usage guidance is implicit and not robust.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_componentsA

Search components by text query with optional filters.

Searches across names, descriptions, tags, categories, purposes, behaviors, and visual characteristics. Results are ranked by relevance.

Args: query: Search query (e.g. "animated hero", "dark card") category: Optional category slug to narrow results tags: Optional comma-separated tags to filter by max_results: Max results to return (default 15, max 100) include_pro: Include pro components (default True)

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
categoryNo
tagsNo
max_resultsNo
include_proNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses ranking by relevance and default settings, but lacks details on case-sensitivity, matching behavior, or boundary conditions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: summary sentence, then detailed paragraph, then parameter list. Every sentence adds value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, the description adequately covers search scope and fields. It lacks mention of pagination or whether search is across all components or user's, but is otherwise complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description compensates fully. It explains each parameter with examples, defaults, and constraints (e.g., max_results max 100), adding significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches components by text query with optional filters, and lists the fields searched. It distinguishes from sibling tools like list_components (which lists all) and get_component (specific one).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for textual search with filters but does not explicitly state when not to use or alternatives. However, the context is clear and parameter details guide usage.

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. Dates show when Glama detected each change.

  1. 12 tool updatesv2.4.1
    • First observedfilter_by_scores
    • First observedgenerate_page_layout
    • First observedget_cache_stats
    • First observedget_category
    • First observedget_component
    • First observedinstall_component
    • First observedlist_categories
    • First observedlist_components
    • First observedmatch_components_to_project
    • First observedrecommend_combination
    • First observedrecommend_components
    • First observedsearch_components

TDQS

A4/5.0
Disambiguation3/5

Several tools serve similar recommendation purposes (recommend_components, recommend_combination, match_components_to_project, generate_page_layout), which could confuse agents. However, descriptions clarify their distinct scopes (single recommendation, per-section, whole project, full layout). Other tools like filter_by_scores, search_components, and list_components are more distinct.

Naming Consistency5/5

All tools consistently use verb_noun naming with underscores (e.g., filter_by_scores, list_components, recommend_components). The pattern is predictable, even for longer names like match_components_to_project.

Tool Count5/5

12 tools is well-scoped for a UI component library server. It covers browsing, searching, filtering, recommending, installation, and monitoring without being excessive or too sparse.

Completeness5/5

The tool surface covers the full lifecycle of component discovery: listing, filtering, searching, retrieving details, installation instructions, and cache stats. No obvious gaps for the stated purpose of helping users find and use Aceternity components.

Maintenance

ActivityStale
ResponsivenessSyncing

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/devinoldenburg/aceternity-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server