Skip to main content
Glama
marvkr

Better Design

Get UI Design Principle

get-ui-principle
Read-onlyIdempotent

Load visual UI design principles on demand to guide hierarchy, spacing, typography, color, accessibility, polish, and animation decisions.

Instructions

Load visual UI design principles into context on-demand.

Use this for visual surface decisions: hierarchy and emphasis, spacing/layout and grouping, typography, color, depth, images, accessibility, polish, and animation. Building a shop, product page, or product imagery: load product-pages and product-imagery. Building a landing or marketing page: load marketing, then also load positioning from get-ux-principle before writing the headline, because what the page says is decided before how it looks. For behavior, flows, forms, navigation, notifications, errors, search, onboarding, microcopy, positioning, rewards, behavior change, design process, or psychology/cognitive laws, use get-ux-principle instead.

You can either:

  1. Request a specific topic or alias: get-ui-principle({ topic: "spacing" })

  2. Semantic search: get-ui-principle({ query: "group this dense screen with clearer proximity" })

  3. Get index of all principles: get-ui-principle({})

Use maxTokens to keep responses focused (recommended: 5000–10000).

Input Schema

NameRequiredDescriptionDefault
queryNoNatural language search query to find relevant principles.
topicNoSpecific UI topic or alias to load, e.g. spacing, gestalt, hierarchy, blur test, accessibility, color, depth, animation, product-pages, product-imagery.
contextNoOptional. One sentence on WHY you are calling this and what the user asked for (e.g. 'adding nav icons for the fintech dashboard'). Used only for usage analytics; does not change the result.
maxTokensNoMaximum tokens to return. Truncates content to fit. Recommended: 5000-10000.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds value beyond them: it discloses the three invocation modes, that maxTokens truncates content, and that the context param is analytics-only and does not change results — a genuinely useful non-obvious trait.

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?

Front-loaded with the core purpose, then routing, then invocation modes — a sensible order with little wasted prose. It is on the long side and repeats the maxTokens suggestion already in the schema, but every clause carries routing or usage information.

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?

No output schema exists, and the description compensates reasonably: it explains that a no-arg call returns an index of all principles and that maxTokens truncates results. Corpus size and result shape per topic are left implicit, but nothing needed to invoke it correctly is missing.

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%, so the schema already defines each param, and the maxTokens recommendation is duplicated from the schema. What the description adds is the mutual-exclusivity pattern (topic vs query vs empty call) and natural-language examples showing query style, which is meaning beyond field-level docs.

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?

States a specific verb and resource ('Load visual UI design principles into context on-demand') and immediately scopes it to the *visual* surface, which cleanly separates it from get-ux-principle (behavior/flows). An agent can pick between the two siblings without opening either schema.

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?

Enumerates concrete when-to-use cases (hierarchy, spacing, typography, color, depth, animation, accessibility) and explicit exclusions that route to get-ux-principle. It also gives composition guidance — load marketing plus positioning from get-ux-principle before writing a headline — which is actionable routing, not just description.

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