Skip to main content
Glama

Web UI Component Specification — MCP Server

An MCP (Model Context Protocol) server that gives AI coding assistants direct access to the Web UI Component Specification — a comprehensive behavioral reference for web UI component libraries covering component specs, test scenarios, accessibility requirements, and a step-by-step build guide.


What this does

Instead of pasting spec content into prompts manually, this server lets your AI assistant query exactly what it needs, when it needs it:

  • Building a component? → Fetch its full spec on demand

  • Writing tests? → Get just the test scenarios

  • Starting a library? → Get a curated component list for your project type

  • Reviewing an implementation? → Validate it against the spec automatically


Related MCP server: mcpsystem.design MCP Server

Read the specification

Prefer the human-readable version? Download the full spec as a PDF:

Web UI Component Specification (v1.0) — PDF

All exported versions live under exports/.


Installation

uvx web-ui-component-spec-mcp

Option 2 — pip

pip install web-ui-component-spec-mcp
web-ui-component-spec-mcp

Option 3 — Clone and run

git clone https://github.com/gcsebas99/web-ui-component-spec-mcp.git
cd web-ui-component-spec-mcp
pip install -r requirements.txt

Then execute server.py.

python server.py

MCP Client Configuration

Add to your MCP client config (Claude Desktop, Cursor, etc.):

uvx:

{
  "mcpServers": {
    "ui-spec": {
      "command": "uvx",
      "args": ["web-ui-component-spec-mcp"]
    }
  }
}

pip install:

{
  "mcpServers": {
    "ui-spec": {
      "command": "web-ui-component-spec-mcp"
    }
  }
}

Clone and run:

{
  "mcpServers": {
    "ui-spec": {
      "command": "python",
      "args": ["/absolute/path/to/web-ui-component-spec-mcp/server.py"]
    }
  }
}

Source files

The spec content (Markdown files) are included in the source/ directory (latest version available):

File

Description

source/Core_Principles.md

Component philosophy, design tokens, interaction principles

source/Component_Catalog.md

Full catalog of all components with specs and tests

source/Step_By_Step_Guide.md

Step-by-step build guide


Available tools

Tool

Description

list_components

Full component index with optional category/tier filtering

get_component_spec

Full spec for one component

get_component_tests

Test scenarios only for one or more components

get_component_summary

Lightweight summary (description + main features)

get_components_by_scenario

Curated component list for a project type

get_core_principles

Core Principles by section

get_step_by_step

Step-by-step guide by step number

get_related_components

Dependencies, dependents, and alternatives

search_components

Fuzzy search by behavior or description

validate_component_checklist

Coverage report against spec requirements


Using the skill

For best results, load the skill file into your AI assistant's system prompt before starting a component build session.

Full skill (recommended for new sessions): skill/skill-full.md

Compact skill (for mid-session use when context is limited): skill/skill-compact.md


Example prompts

See examples/example-prompts.md for ready-to-use prompts covering common scenarios: building a component, starting a library, reviewing code, writing tests.


Project structure

web-ui-component-spec-mcp/
├── server.py              # MCP server entry point
├── pyproject.toml         # PyPI packaging (pip + uvx)
├── requirements.txt       # Direct install dependencies
│
├── tools/                 # One file per MCP tool
├── parsers/               # MD parsing logic
├── data/                  # In-memory store (loaded at startup)
│
├── source/                # Spec MD files (bundled; VERSION.md pins the revision)
├── exports/                # Human-readable PDF exports of the spec
├── skill/                 # Skill files for AI assistants
└── examples/              # Example prompts

Spec version

This server is built for Web UI Component Specification v1.0.

Spec version

Server version

v1.0

1.0.x


Changelog

Version

Changes

1.0.3

Pin mcp[cli] to <2 — the mcp 2.0.0 release removed the low-level Server.list_tools()/call_tool() decorators this server relies on, which broke fresh uvx/pip installs once mcp 2.x was published.

1.0.2

Script name updated to match package name; documentation updates.

1.0.1

Documentation updates.

1.0.0

Initial release.


License

MIT

Available Tools

10 tools
get_components_by_scenarioA

Return a curated component list and recommended build order for a project type. Use this when starting a library from scratch to get a sensible scope and sequence. Pass 'list' as scenario to see all available options.

ParametersJSON Schema
NameRequiredDescriptionDefault
scenarioYesProject type. e.g. 'saas_dashboard', 'ecommerce', 'forms_heavy', 'content_site', 'mobile_web', 'minimal'. Pass 'list' to see all options.

TDQS

A4.1/5.0
Behavior3/5

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

No annotations provided. Description discloses it returns a curated list and build order, but no further behavioral details (e.g., no side effects, no performance notes). Adequate but minimal.

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?

Two sentences: first states purpose, second provides usage guidance and a special case. No redundancy, front-loaded.

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?

No output schema, so description should clarify return format. It mentions 'curated component list and recommended build order' but omits structure (e.g., component names, order details). Satisfactory for a simple tool but leaves gaps.

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 coverage is 100% for the single 'scenario' parameter. Description adds value by explaining the 'list' option and giving example values, going beyond the schema's generic description.

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 'Return a curated component list and recommended build order for a project type', with a specific verb and resource. It distinguishes from siblings by focusing on scenario-based aggregation.

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?

Explicitly says when to use ('starting a library from scratch to get a sensible scope and sequence') and how to list options ('Pass 'list' as scenario'). No explicit when-not-to-use or direct alternates, but context is clear.

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

get_component_specA

Return the full behavioral specification for a single component. Includes description, all main features, secondary features (accessibility, keyboard navigation, touch, responsive, i18n, etc.), and implementation notes. Use this when implementing a component from scratch.

ParametersJSON Schema
NameRequiredDescriptionDefault
componentYesComponent name (e.g. 'Modal', 'Text Input', 'Button') or numeric id (e.g. '46', '19', '16')

TDQS

A3.9/5.0
Behavior3/5

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

No annotations provided; description lists included content but does not disclose behavioral traits like idempotency 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.

Conciseness5/5

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

Two sentences, front-loaded with purpose, then content list and usage. No wasted words.

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?

No output schema; description lists included sections but not structure or format, leaving agents to infer return type.

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

Parameters3/5

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

Schema coverage is 100% for the single parameter, but description adds no extra meaning beyond the schema's own description.

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 returns the full behavioral specification for a single component, distinguishing it from siblings like summaries or tests.

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?

Explicitly advises using this tool when implementing a component from scratch, though lacks explicit when-not-to-use or alternative guidance.

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

get_component_summaryA

Return a lightweight summary for one or more components — description and main features only, no secondary features or test scenarios. Use this for planning and surveying before deep implementation work.

ParametersJSON Schema
NameRequiredDescriptionDefault
componentsYesList of component names or ids.

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses the output includes only description and main features, omitting secondary features and test scenarios, which is good transparency for a read-only summary tool.

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?

Two sentences efficiently convey the purpose and usage. No unnecessary words, and the key information is 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 simplicity (one parameter, no output schema), the description covers the essential aspects: what is returned and when to use it. It could mention handling of missing components, but overall it’s quite complete.

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

Parameters3/5

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

Schema coverage is 100% with a description for 'components'. The description adds minimal additional context ('one or more'), so it meets the baseline but doesn’t significantly enhance parameter understanding.

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 returns a lightweight summary including description and main features, and explicitly excludes secondary features and test scenarios, distinguishing it from sibling tools that likely provide deeper details.

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 advises using this tool for planning and surveying before deep implementation work, implying it’s not for detailed tasks. It doesn’t explicitly name alternatives but the sibling list provides context.

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

get_component_testsA

Return only the Test Scenarios for one or more components. Use this when writing tests or reviewing an implementation against the spec. More token-efficient than get_component_spec when tests are all you need.

ParametersJSON Schema
NameRequiredDescriptionDefault
componentsYesList of component names or ids. e.g. ['Modal', 'Button'] or ['46', '16']

TDQS

A4.3/5.0
Behavior3/5

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

No annotations exist, so the description carries the burden. It indicates the tool returns test scenarios (read-only behavior) but does not disclose any other traits like output format, pagination, or rate limits. Minimal additional context beyond the obvious.

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?

Two sentences with no wasted words, front-loading the core function and usage. Every sentence adds value.

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's simplicity (one param, no output schema), the description fully covers its purpose, usage context, and differentiation from siblings. No missing essential information.

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

Parameters3/5

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

Schema description covers 100% of the single parameter, which is well described. The description adds no extra meaning beyond what the schema provides, so baseline 3 is appropriate.

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 the tool returns 'only the Test Scenarios for one or more components', providing a specific verb and resource. It distinguishes itself from siblings by noting token-efficiency over get_component_spec when tests are the focus.

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

Usage Guidelines5/5

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

Clearly advises using this tool 'when writing tests or reviewing an implementation against the spec' and contrasts with get_component_spec for efficiency, providing both context and an alternative.

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

get_core_principlesA

Return content from the Core Principles section of the spec. Fetch only the section you need to minimize context usage. Use 'philosophy' when starting any component work. Use 'design_tokens' when reviewing token definitions. Use 'all' sparingly.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectionNoSection to retrieve. Options: 'philosophy', 'design_tokens', 'interaction_principles', 'consistency_patterns', 'all'philosophy

TDQS

A4.8/5.0
Behavior4/5

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

No annotations provided, so the description carries full burden. It indicates a read operation (return content) with no side effects. While clear, it lacks details about possible error responses or behavior for invalid sections, but schema covers enum values.

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?

Two sentences, front-loaded with purpose, followed by targeted usage advice. No superfluous words.

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 a single parameter and no output schema, the description provides all necessary information: what the tool does, how to use the parameter, and behavioral context (minimize usage). No gaps.

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?

The schema already describes each enumerator. The description adds semantic guidance on when to use each option, going beyond the schema's static listing.

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 returns content from the Core Principles section. It specifies distinct usage for each section, and differentiates from sibling tools that focus on components.

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

Usage Guidelines5/5

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

Explicitly advises when to use each section: 'philosophy' for starting component work, 'design_tokens' for reviewing tokens, and 'all' sparingly. It also recommends fetching only needed sections to minimize context.

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

get_step_by_stepA

Return one or more steps from the Step-by-Step Build Guide. Fetch only the steps relevant to the current phase of work. e.g. pass [1, 2, 3] when defining design tokens, [7, 8] when building components.

ParametersJSON Schema
NameRequiredDescriptionDefault
stepsYesStep number(s) to retrieve, or 'all'. Steps: 1=Color, 2=Typography, 3=Spacing, 4=Look&Feel, 5=DevEnv, 6=Tokens, 7=Foundational Components, 8=Compound Components, 9=Testing, 10=Documentation, 11=Iterate

TDQS

A4.2/5.0
Behavior3/5

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

No annotations are provided, and the description does not explicitly state that the operation is read-only or safe. The behavior is implied but not transparently disclosed.

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 extremely concise, containing two sentences with an example, no wasted words.

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?

For a single-parameter tool with no output schema, the description is sufficiently complete. It could mention the return format or error handling, but the given context is adequate.

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 covers the parameter semantics thoroughly (100% coverage), and the description adds value by providing usage examples tied to phases of work.

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 returns steps from a build guide, using a specific verb and resource. It is distinct from sibling tools which focus on 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?

The description provides examples of when to pass specific step numbers (e.g., design tokens, building components), giving context on usage. However, it lacks explicit 'when not to use' guidance.

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 components in the Web UI Component Specification. Returns name, id, category, tier, and one-line summary for each. Always call this first in a new session to establish what exists. Optionally filter by category or tier.

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryNoFilter by functional category (partial match, case-insensitive). Options: 'Content & Typography', 'Layout & Structure', 'Identity & Status Indicators', 'Actions & Navigation Primitives', 'Form Inputs & Controls', 'Feedback & Communication', 'Overlays & Floating Elements', 'Adaptive Elements', 'Navigation & Wayfinding', 'Data Display & Visualization'
tierNoFilter by complexity tier: 'Basic', 'Intermediate', or 'Advanced'

TDQS

A3.8/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. It only describes return fields and filtering, but omits behavioral traits like read-only nature, performance implications, or authentication requirements.

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, no redundancy. Front-loaded with purpose and key usage instruction, every sentence earns its place.

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?

Covers purpose, return fields, usage order, and filtering. Lacks details on pagination or sorting, which would be useful for a listing tool, but overall adequate.

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

Parameters3/5

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

Both parameters are fully described in the input schema (100% coverage). The description adds context for always calling first but does not enhance parameter 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 the tool lists all components and returns specific fields (name, id, category, tier, summary). It differentiates from siblings like search_components by focusing on the full listing.

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?

Explicitly advises to call this first in a new session, providing strong when-to-use guidance. Does not explicitly mention when not to use or compare to alternatives like get_component_spec.

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

search_componentsA

Fuzzy search across component names, descriptions, and features. Use this when you know what behavior you need but not which component provides it. e.g. 'focus trap', 'date range', 'file upload', 'keyboard navigation'

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch string describing the behavior or component you're looking for.
limitNoMaximum number of results to return (default 8).

TDQS

A4.3/5.0
Behavior4/5

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

Describes the search as fuzzy and specifies the searched fields. Without annotations, the description provides sufficient behavioral context, though details like case sensitivity or result ordering are omitted.

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?

Two sentences with front-loaded purpose and embedded examples. Efficient and clear, though could be slightly tighter.

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?

With two well-documented parameters and no output schema, the description covers the search scope, usage context, and examples. It adequately supports the human agent.

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

Parameters3/5

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

Both parameters are fully described in the schema (100% coverage). The description adds no new meaning beyond the schema, so baseline score of 3 is appropriate.

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 states 'Fuzzy search across component names, descriptions, and features' with clear verb and resource. It is distinct from siblings like list_components or get_components_by_scenario, as it focuses on approximate behavior-based lookup.

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

Usage Guidelines5/5

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

Explicitly says 'Use this when you know what behavior you need but not which component provides it' and gives practical examples. This clearly differentiates from other component tools.

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

validate_component_checklistA

Compare an implementation against the spec's Main Features and Test Scenarios. Returns a coverage report showing what's covered, what's missing, and an overall status. Use this to QA a component before marking it done.

ParametersJSON Schema
NameRequiredDescriptionDefault
componentYesComponent name or id.
implemented_featuresYesList of strings describing what has been implemented. Be specific: e.g. ['closes on Escape key', 'traps focus within modal', 'has aria-modal attribute', 'backdrop click dismisses modal']
check_testsNoAlso check against Test Scenarios (default true).

TDQS

A4.2/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 cover behavioral aspects. It states the tool returns a coverage report showing covered, missing, and status, but does not disclose potential side effects, error conditions (e.g., if component doesn't exist), or performance implications. This is adequate but lacks full transparency.

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 extremely concise with only two sentences. The first sentence states the action and output, the second gives usage guidance. No unnecessary words or repetition.

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 has 3 parameters (2 required), no nested objects, no enums, and no output schema, the description covers the essential aspects: purpose, usage, and basic behavior. It lacks details on output structure (e.g., report format) but is sufficient for an agent to understand the 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?

Schema description coverage is 100%, so baseline is 3. The description adds value by explaining the comparison targets ('Main Features and Test Scenarios'), which provides context for the 'implemented_features' and 'check_tests' parameters beyond their schema descriptions.

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's purpose: comparing an implementation against spec's Main Features and Test Scenarios, returning a coverage report. It uses specific verbs and resources, distinguishing it from sibling tools like 'get_component_spec' or 'get_component_tests' which retrieve rather than compare.

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 provides explicit guidance: 'Use this to QA a component before marking it done.' This sets clear context for when the tool should be invoked. However, it does not mention when not to use it or suggest alternative tools, though the context is sufficiently clear given sibling names.

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. 10 tool updatesv1.0.2
    • First observedget_component_spec
    • First observedget_component_summary
    • First observedget_component_tests
    • First observedget_components_by_scenario
    • First observedget_core_principles
    • First observedget_related_components
    • First observedget_step_by_step
    • First observedlist_components
    • First observedsearch_components
    • First observedvalidate_component_checklist

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a uniquely scoped purpose with no overlap. For example, get_component_spec returns full specs while get_component_summary returns only top-level info. Search and list tools target different access patterns. Naming and descriptions clearly distinguish them.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern using snake_case (e.g., get_component_spec, list_components, validate_component_checklist). The naming is predictable and intuitive.

Tool Count5/5

10 tools is well-scoped for a specification server. Each tool addresses a distinct need (listing, searching, retrieving specs, tests, principles, dependencies, build steps, validation) without redundancy or excess.

Completeness5/5

The tool set covers the full lifecycle of working with component specs: discovery (list, search), detailed retrieval (spec, summary, tests, principles, related components), guided implementation (step-by-step), and quality assurance (validate checklist). No obvious gaps for the stated domain.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/gcsebas99/web-ui-component-spec-mcp'

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