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

    The two tools have clearly distinct roles: impact_emit produces a manifest from a Terraform plan, while impact_explain consumes an existing manifest and explains it. There is no overlap or possible misselection between them.

    Naming Consistency5/5

    Both tools follow the same predictable prefix-plus-verb pattern: impact_emit and impact_explain. The naming is consistent and immediately signals the shared domain and the action each tool performs.

    Tool Count3/5

    Two tools is on the thin side by the general rubric, but the server has a very narrow purpose: emit and explain impact manifests. The pair is reasonable for that scope, though it barely crosses the 'feels thin' boundary.

    Completeness5/5

    For the stated domain, the lifecycle is complete: impact_emit generates a manifest from a plan, and impact_explain supports all reasonable input paths (handle, file, or inline) and offers filtering for drill-down. There are no obvious missing operations for this focused workflow.

  • Average 4.8/5 across 2 of 2 tools scored.

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

    • No community issues in the last 6 months
    • 8 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 Apache 2.0.

  • 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

  • Behavior5/5

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

    Annotations already mark the tool readOnly and non-destructive. The description goes further and adds materially useful behavioral detail: the analysis is offline and plan-only, no cloud credentials are used, a plan-only manifest can never claim 'safe', and the full manifest is written to a private temp file rather than returned inline due to size. No contradiction 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.

    Conciseness5/5

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

    The description is moderately long but every sentence earns its place: purpose, parameter format, safety/behavioral caveats, and return value are each covered in a clean, front-loaded structure. No filler or repetition.

    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?

    For a tool with one parameter, safety annotations, an output schema, and a single sibling, the description covers everything needed: what it produces, what input it accepts, key limitations, the handle-based return contract, and the follow-up tool. Nothing important is missing.

    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 input schema provides no description for plan_path (0% coverage), so the description carries the full burden. It does this excellently by specifying that plan_path may point at 'terraform show -json' output or a saved .tfplan file, and that conversion is automatic. This is exactly the semantic information an agent needs.

    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 specific verb and resource: 'Produce an Impact Manifest... from a Terraform plan, using blastcheck.' It clearly states what the tool creates and from what input, and distinguishes it from the obvious sibling impact_explain by noting the returned handle is meant to be passed there.

    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 gives clear context for when to use impact_emit: when you need to generate a plan-only Impact Manifest from a Terraform plan. It explicitly routes the downstream step to impact_explain via the manifest_handle. It does not spell out 'when not to use' or formal alternatives, but the relationship to impact_explain is clear enough.

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

  • Behavior5/5

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

    Beyond the readOnly/destructive annotations, the description discloses substantial behavior: a hard character budget with an env-var override, compact grouped rendering with an explicit partial-view notice ('never a silent cut'), AND-combined filters, addresses always rendered in full detail, and lexical sorting for deterministic output. These are exactly the non-obvious traits that would otherwise surprise an agent.

    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?

    Despite its length, every sentence earns its place: purpose, input modes, output format, budget behavior, filter semantics, and determinism. The most decision-relevant info (what it does, what to provide) is front-loaded, and no sentence repeats the schema or annotations.

    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?

    For a tool with 7 optional parameters, an output schema, and meaningful failure/edge behavior (budget overruns, partial views), the description is complete. An agent can correctly select an input mode, choose filters, and predict the response shape without opening the schema or chasing external docs.

    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?

    Schema description coverage is 0%, so the description carries the full burden — and it delivers. All 7 parameters get meaningful semantics: manifest_handle's provenance, manifest_path's on-disk nature, manifest as inline document, severity with an example value, module_prefix as address prefix, resource_type with an exact-match caveat and example, and addresses as the guaranteed full-detail path. It fully compensates for the empty 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?

    Opens with a specific verb-plus-resource statement ('Explain an Impact Manifest in plain language') and then details the output contents (verdict, findings, safe-if checklist, unverifiable items), making the tool's job unmistakable. The explain/emit verb pair cleanly distinguishes it from the only sibling, impact_emit.

    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 gives clear context on the three mutually exclusive input modes (manifest_handle 'from impact_emit', manifest_path on disk, manifest inline) and how the optional filters narrow the view. It stops short of an explicit when-not-to-use statement relative to impact_emit, but the pointer that manifest_handle comes 'from impact_emit' effectively orients the agent to the sibling's role.

    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

blastcheck-mcp MCP server

Copy to your README.md:

Score Badge

blastcheck-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/prococonsulting/blastcheck-mcp'

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