Skip to main content
Glama
seungdori

web-stylebook-mcp

by seungdori

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.3.0

  • Disambiguation5/5

    Each tool targets a distinct aspect of design guidance: direction recommendation, direction comparison, design principles, UX principles, UI state planning, and token composition. No two tools overlap in purpose.

    Naming Consistency5/5

    All tool names follow a verb_noun pattern (recommend, compare, get, compose) with consistent use of snake_case and predictable object naming (e.g., get_design_principle_plan, get_ux_principle_plan).

    Tool Count5/5

    6 tools is well-scoped for a design guidance server. Each tool covers a necessary function without redundancy or excessive specialization.

    Completeness4/5

    The set covers core design activities: direction selection, comparison, principles (design/UX), state planning, and token generation. A minor gap is the lack of a tool to apply or test tokens on actual components, but the scope is reasonable.

  • Average 3.8/5 across 6 of 6 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 20 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

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

    Annotations indicate read-only, idempotent, and non-destructive behavior. The description adds valuable context about output (favorable conditions and failure modes) and the criteria evaluated, which goes beyond the annotations. No contradictions.

    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 purpose and includes key behavioral details. Every word earns its place.

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

    Completeness2/5

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

    Given the complexity (3 parameters, nested objects, no output schema), the description is insufficient. It lacks explanations for the 'directions' structure, 'product' fields, and required parameters, making it hard for an agent to use correctly.

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

    Parameters1/5

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

    Schema description coverage is 0%, and the description provides no explanation of the parameters (directions, locale, product object). For a tool with nested objects and multiple fields, this is a major 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 compares 2-4 design directions across specific criteria (product fit, repeated-use suitability, etc.) and specifies it returns favorable conditions and failure modes per direction, never a single winner. This effectively distinguishes it from the sibling tool 'recommend_design_direction' which likely picks a winner.

    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 comparison across multiple directions but does not explicitly state when to use this tool versus alternatives like 'recommend_design_direction'. It contrasts 'never a single winner' but lacks explicit when-to-use or when-not-to guidance.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint and idempotentHint, so the tool is safe and non-destructive. The description adds behavioral details about the output (states, triggers, must-show/must-not, accessibility, motion, implementation order) and that it covers non-happy-path, providing sufficient context beyond annotations.

    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 a single concise sentence that front-loads the purpose and key details (surface types, output components, non-happy-path). It is efficient and easy to parse, though could be slightly more structured.

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

    Completeness2/5

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

    With 7 parameters, low schema coverage (29%), and no output schema, the description is incomplete. It does not cover parameter purposes or return value structure, which is needed for a planning tool with many parameters.

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

    Parameters2/5

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

    Schema description coverage is only 29%, with only surfaceId and styleId having descriptions. The description aligns with surfaceId by listing surfaces, but does not explain other parameters like domainSignals, productContext, criticalOnly, or includeCategories, leaving significant gaps in 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 the tool plans UI states for a specific set of surfaces, listing what it returns (required/recommended/domain-specific states, triggers, guidance, implementation order) and explicitly mentions covering non-happy-path, distinguishing it from sibling tools that focus on design directions or principles.

    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 when planning UI states for surfaces like data-table, form, etc., and emphasizes non-happy-path, but does not provide explicit guidance on when to use this tool versus sibling tools like recommend_design_direction or get_design_principle_plan.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds behavioral details beyond that: it compiles tokens, supports light/dark/both modes, accent override, and WCAG contrast warnings. No contradictions with annotations.

    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 a single sentence that front-loads the action and lists key options. It is reasonably concise and avoids redundancy, though it could be broken into multiple sentences for better readability.

    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 7 parameters, no output schema, and no param descriptions, the description provides a decent high-level overview but lacks parameter-level details needed for correct invocation. It covers the tool's purpose and key behaviors but is incomplete for parameter understanding.

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

    Parameters2/5

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

    Schema description coverage is 0%, so the description must explain parameters. It mentions high-level token categories (color, typography, etc.) but does not map them to specific parameters like primaryStyleId, secondaryStyleId, locale, or density. Details about enums and required fields are missing, leaving the agent without enough context to correctly set parameters.

    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 uses a specific verb ('Compose') and resource ('design tokens') and lists concrete categories (color, typography, etc.) and output formats. It clearly distinguishes from sibling tools like recommend_design_direction or compare_design_directions, which cover different design tasks.

    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 the tool is for generating tokens for a style, and sibling tools cover separate design decisions (direction, principles). While no explicit 'when to use' or exclusions are stated, the context makes it clear this is for token compilation rather than other design activities.

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

  • Behavior4/5

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

    Annotations indicate read-only, idempotent, non-destructive behavior, which is consistent with 'Select... Returns...' in the description. The description adds transparency by listing specific output elements (e.g., placement guidance, verification checks, relevance scores) and filtering capabilities, providing valuable context beyond annotations.

    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 efficient sentences with no redundant language. The first sentence establishes the tool's purpose and scope, and the second covers filtering and output. Every word adds value.

    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 complexity (6 parameters, no output schema), the description covers core functionality but omits details on limit and locale parameters, and does not specify behavior for edge cases like no results. Annotations provide safety context, but the description could be more thorough.

    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 0%, so the description must compensate. It explains filtering by concerns, surface, phase, or ids (4 of 6 parameters), but fails to mention limit and locale parameters. This partial coverage adds some meaning but leaves gaps.

    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 selects a small set of practical visual-design principles and details the output (placement guidance, application steps, etc.). It distinguishes from sibling tools like recommend_design_direction and get_ux_principle_plan by specifying the domain (visual-design) and output format.

    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 through filtering options (concerns, surface, phase, ids) but does not explicitly state when to use this tool over alternatives like get_ux_principle_plan or compose_design_tokens. No guidance on prerequisites or exclusions is provided.

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

  • Behavior4/5

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

    Annotations declare readOnlyHint, idempotentHint, and destructiveHint, which the description does not contradict. The description adds behavioral context by noting the output should be treated as decision prompts and lists specific return components.

    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 two sentences: first sentence states purpose and inputs, second sentence states outputs and a caveat. No redundant information; every sentence adds value.

    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 output schema, the description adequately explains return values (design questions, steps, etc.) and adds a usage caveat. It could mention default behavior for 'limit' or 'locale', but overall is complete for agent decision-making.

    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 0%, so the description must explain parameters. It mentions 'outcome, surface, phase, principle ids' which map to four of six parameters, but omits 'limit' and 'locale'. Without full coverage, the description only partially compensates.

    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 selects a set of UX principles based on specific criteria (outcome, surface, phase, IDs) and lists the return elements. It distinguishes from siblings like 'get_design_principle_plan' by focusing on UX principles and including evidence labels.

    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 through input criteria but does not explicitly state when to use or avoid this tool versus alternatives. Sibling tools like 'recommend_design_direction' are not contrasted, leaving the agent to infer.

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

  • Behavior4/5

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

    Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds context that the tool is an evidence-provider (host model picks), clarifies that scores include soft penalties, and corrects potential naming confusion for 'tone'. No contradictions.

    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: first sentence covers output, second gives usage context, third clarifies tone and score composition. Information is front-loaded and every sentence earns its place.

    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?

    Covers main output structure and usage timing, but fails to document most input parameters. With 12 parameters and 0% schema coverage, more detail on param effects is needed for full agent comprehension.

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

    Parameters2/5

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

    Only the 'tone' parameter is explained (allowed values, field name, array type). Schema coverage is 0%, so description must compensate, but other 11 parameters lack any explanatory text. The description adds marginal value beyond enum definitions in 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?

    Description specifies 'return scored style candidates' with reasons and rejected styles, clearly distinguishing from sibling 'compare_design_directions' by stating the host model makes the final pick and that this tool should be called before writing UI.

    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?

    Includes explicit directive 'Call before writing UI' and indicates the tool is for evidence provision, not decision-making. However, does not explicitly state when not to use or compare with siblings like 'compare_design_directions'.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

web-stylebook-mcp MCP server

Copy to your README.md:

Score Badge

web-stylebook-mcp MCP server

Copy to your README.md:

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/seungdori/web-stylebook-mcp'

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