Skip to main content
Glama
ply-ui-ng

Ply UI

Official

List Ply components

list_components
Read-onlyIdempotent

Lists Ply registry components filtered by tier, category, or case-insensitive substring and sorted by name; use it to browse available Angular/Tailwind components, not to install them.

Instructions

List Ply registry components filtered by tier, category, or a case-insensitive substring, sorted by name. Not a fuzzy match: search_components ranks uncertain names, and get_component reads one known name. Does not install. To copy a component into a project, tell the user to run npx ply-ui-cli add .

Input Schema

NameRequiredDescriptionDefault
qNoSubstring filter on name, description, usage, or keywords (case-insensitive)
tierNoFilter by license tierall
categoryNoFilter by registry category

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

The annotations already declare readOnlyHint, idempotentHint, openWorldHint, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral boundaries beyond the annotations: results are sorted by name, matching is not fuzzy, and installation must be done with the external CLI command.

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 front-loaded with the core action and filtering behavior, then uses short sentences to route the agent to alternatives and clarify the install boundary. There is no redundant or wasted 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?

For a simple three-parameter list tool with full schema coverage and safety annotations, the description covers selection, filtering, sorting, and the non-install boundary well. It does not describe the exact shape of returned component records, which is a minor gap because no output schema exists.

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 coverage is 100%, and the schema fully documents q, tier, and category including enums and defaults. The description mentions the filter dimensions but adds no syntax or format details beyond what the schema already provides.

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 gives a specific verb and resource: it lists Ply registry components, with filters and name sorting. It also explicitly distinguishes this tool from search_components and get_component, so an agent can select it without opening sibling schemas.

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?

It states when to use this tool versus alternatives: search_components for uncertain or fuzzy names, get_component for one known component, and the CLI add command for copying into a project. It also explicitly says this tool does not install.

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