Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool targets a distinct purpose: finding visual inspiration, scraping site metadata, general web search, listing sources, finding components, and finding effects. The overlap between find_ui_inspiration and search_design_web is minimal and clearly differentiated by scope.

    Naming Consistency5/5

    All tool names follow the consistent pattern 'kroma_<verb>_<noun>' in snake_case. Verbs are varied but always action-oriented, and the nouns clearly indicate the resource type, making the naming predictable and readable.

    Tool Count5/5

    With 6 tools, the server is well-scoped for design discovery and analysis. Each tool covers a distinct aspect of the workflow without redundancy, and the count is neither too thin nor overwhelming.

    Completeness5/5

    The tool set covers the full lifecycle implied by the domain: finding inspiration, scraping live sites, searching the web, listing available sources, and locating components and effects. There are no obvious missing operations for the server's stated purpose.

  • Average 4.3/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 status not available
  • 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

  • Behavior3/5

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

    No annotations are provided, so the description carries the burden. It mentions that results are 'sourced live' from various websites, which conveys the web-search behavior. However, it does not disclose details like API key usage, rate limits, or potential failure modes, which would improve 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 two sentences long, front-loaded with the primary action and resource, and includes a compact list of examples and sources. Every word 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?

    For a search/find tool with 6 parameters and no output schema, the description explains the purpose and sources but does not mention what the results look like or that the 'effect' parameter is required. The API key fallback is only in the schema, not the description. It is adequate but has 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%, so the baseline is 3. The description adds value by explicitly calling out category and framework as biasing parameters and providing concrete effect examples, which helps users formulate the required 'effect' parameter. This goes slightly beyond what the schema alone 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 clearly states the tool's purpose: discovering modern web micro-effects and motion techniques. It lists specific examples (GLSL/canvas shaders, Framer Motion variants, etc.) and sources, distinguishing it from sibling tools like kroma_find_ui_inspiration or kroma_find_component_code.

    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 context (finding effects) and suggests using category/framework to bias results, but it does not explicitly contrast with alternatives or state when not to use this tool. Usage is implied rather than directly guided.

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

  • Behavior3/5

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

    With no annotations, the description carries the transparency burden. It discloses the output metadata types and implies a network scrape, but it does not mention the external Serper API dependency, potential rate limits, or failure modes like blocked sites. The api_key parameter is in the schema but not discussed in the description.

    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, front-loaded with the primary action and a clear list of extracted data. The second sentence adds a concrete use case without any filler. Every clause earns its place, making it concise yet informative.

    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 scraping tool with no annotations, the description covers purpose, output content, and a use case. It does not mention return format or operational caveats (like API key requirements or blocked URL handling), but the schema partially fills those gaps. It is adequate for an agent to decide whether to use the tool.

    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?

    The schema covers 100% of parameters with descriptions, so the baseline is 3. The description does not add additional meaning about include_raw/include_markdown defaults or api_key fallback behavior; it only reinforces the core URL analysis purpose. The schema itself does the heavy lifting here.

    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 scrapes any live URL and extracts specific design metadata (title, typography, fonts, colors, framework fingerprints). The verb 'scrape' plus the resource 'live URL' and the explicit output list distinguish it from sibling tools that search or find inspiration.

    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 identifies when to use it: 'Ideal for reverse-engineering the structure and styling of a site you admire.' It provides clear context but does not mention alternatives or when not to use it, so it misses a bit of the full guideline picture.

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

  • Behavior3/5

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

    With no annotations, the description must carry the behavioral burden. It discloses that this is a live web search and that results can be scoped via `sites`, which is useful. However, it does not mention return format, error behavior, rate limits, or authentication requirements, leaving notable gaps in transparency for an unannotated 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?

    The description is only two sentences, with the core purpose front-loaded in the first sentence. It efficiently contrasts with specialized tools and highlights the optional `sites` parameter without redundant detail. 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?

    Given the tool's general-purpose nature, 7 parameters, no output schema, and no annotations, the description provides enough context for selection and invocation: what it does, when to use it, and a key parameter. It could be more complete by briefly describing the return structure or limitations, but it is not critically inadequate.

    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%, so the schema already documents all 7 parameters. The description mentions `sites` for domain scoping, but this is already in the schema, adding no new semantic value. With full schema coverage, the baseline of 3 applies.

    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 opens with a clear specific verb and resource: 'General-purpose live web search tuned for design and front-end topics.' It also differentiates from siblings by stating this is not locked to curated galleries, unlike the specialized tools. This makes the tool's 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 Guidelines5/5

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

    The description explicitly contrasts with specialized tools and gives concrete use cases: 'use it for design systems, articles, accessibility guidance, tokens, or anything else.' This tells the agent exactly when to choose this general tool over the sibling tools like kroma_find_ui_inspiration or kroma_find_component_code.

    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?

    No annotations are provided, so the description carries the behavioral burden. It transparently explains the tool performs live searches of web docs and repos (which implies network/read-only behavior) and specifies what it returns. It doesn't discuss rate limits or error behavior, but for a search tool this is sufficient core 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?

    Two sentences with the purpose, source list, return types, and key parameters included. It is front-loaded and every sentence earns its place, with no filler 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?

    Despite no output schema, the description specifies return categories (doc pages, source links, snippets), lists major sources, and names framework/keywords for refinement. It doesn't mention defaults (React, 10 results), but the schema covers those. Overall it is sufficiently complete for a search 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 coverage is 100%, giving a baseline of 3. The description adds meaning by explicitly explaining the roles of framework and keywords as refining controls, complementing the schema descriptions. This lifts it above baseline without being redundant.

    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 verb ('Search') and specific resource ('live web docs and repos') for copy-paste React/Vue/Svelte components, which distinguishes it from sibling tools focused on design inspiration or effects. It also lists return types (doc pages, source links, snippets), fully clarifying what the tool does.

    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?

    Gives clear context for when to use the tool (finding copy-paste component code) and explains how to refine with framework and keywords. It doesn't explicitly mention when not to use it or name sibling alternatives, but the component-code focus implies the boundary.

    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?

    With no annotations, the description discloses the core behavior: searching via Google Images, returning image URLs, and page/gallery info. It does not mention limitations like reliance on external APIs, but it is transparent about the mechanism and output.

    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 exactly two sentences: the first states the function and resource, the second covers output and use case. It is front-loaded, concise, and contains no filler.

    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?

    The description covers purpose, mechanism, return values, and usage context. Since there is no output schema, it does well to state what it returns. It could add limitations or error behavior, but it is sufficiently complete for a search tool with a well-defined schema.

    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?

    Although the schema covers all parameters, the description adds value by enumerating specific gallery names (e.g., Mobbin, Awwwards) that map to the `sources` parameter and explains the overall search mechanism ('via Google Images'), enriching the semantics of query, gl, hl, and num.

    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 action ('Search live design galleries via Google Images') and specific resources (Mobbin, Godly, Awwwards, etc.), distinguishing it from sibling tools like kroma_scrape_site_design or kroma_search_design_web.

    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?

    It provides clear context with 'Great for mood-boarding a screen, flow, or aesthetic,' indicating when to use it. It does not explicitly mention alternatives or exclusions, but the context implies a visual inspiration use case, distinguishing it from code/effects tools.

    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?

    With no annotations provided, the description carries the burden of disclosure. It adds valuable context by stating that it runs offline and requires no API key, which is not obvious from the schema. However, it does not describe the exact structure of the returned registry list, leaving a minor gap.

    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, front-loaded with the core action, and every sentence adds value. It avoids redundancy and clearly communicates purpose, usage, and operational traits.

    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 one-parameter tool, the description covers purpose, usage, and operational context. The absence of an output schema is offset by the clear statement that it returns the curated source registries, though it could be slightly more explicit about the return format. Overall, it is sufficiently complete.

    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 already fully covers the `category` parameter with an enum and description. The description adds extra meaning by mapping the enum values to design galleries, component libraries, and effect/shader sources, and by explaining that the output feeds the `sources` argument of other tools.

    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 curated source registries for design galleries, component libraries, and effect/shader sources. It differentiates itself from siblings by explicitly noting it is the way to discover source names for other Kroma tools.

    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?

    The description provides explicit guidance on when to use this tool: to discover exact source names for the `sources` argument of other Kroma tools. It also mentions that it runs offline and requires no API key, covering practical usage constraints.

    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

kromamcp MCP server

Copy to your README.md:

Score Badge

kromamcp 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/thatcreativetayo/kromamcp'

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