Skip to main content
Glama
impact-mcp
by 0xmortuex

impact

Analyze the blast radius of changing a file or symbol: identify direct and transitive dependents, tests to run, affected entry points, and a LOW/MEDIUM/HIGH risk summary with reasons.

Instructions

Blast radius of changing a file (or one symbol in it): direct and transitive dependents, the tests that reach it through imports (run these), entry points affected, and a LOW/MEDIUM/HIGH risk summary with reasons. With symbol, direct users are narrowed to files that import or access that name (following re-exports); the rest is an upper bound.

Input Schema

NameRequiredDescriptionDefault
pathYes
limitNo
symbolNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description must carry the behavioral burden, and it does disclose a genuinely non-obvious trait: when `symbol` is supplied, direct users are narrowed but 'the rest is an upper bound,' telling the agent the output is an over-approximation it must interpret carefully. It also explains the risk-grading output and that reasons accompany it. It does not state that the call is read-only, cheap/expensive, or how `limit` truncates results.

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, front-loaded with the core concept, then outputs, then the parameter caveat. Every clause adds information — the parenthetical '(run these)' directs action and the upper-bound note prevents misreading. No filler or restatement of the tool name.

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?

Output schema exists, so return shape need not be spelled out, yet the description still orients the agent by summarizing result categories and the risk grade, which is appropriate for an analysis tool whose value is interpretive. Against a 3-parameter tool the only real hole is `limit` and the absence of any guidance about result size or truncation.

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% and all three parameters are bare titles, so the description must compensate. It does this well for `symbol` (narrowing to files that import or access the name, following re-exports) and adequately for `path` by framing the whole tool around a file. However, `limit` (default 40) is never mentioned, leaving a truncation parameter with no meaning attached anywhere.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific analysis ('blast radius of changing a file') and enumerates exactly what the result contains: direct and transitive dependents, tests reaching it via imports, affected entry points, and a risk summary. That is far more specific than the bare name 'impact'. It stops short of a 5 because it never names a sibling (dependents, symbol_users) to show where the boundary lies, so the agent must infer that this is the composite/richer variant.

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 gives a clear decision context ('changing a file') and a concrete follow-up action ('the tests that reach it through imports (run these)'), plus a rule for choosing symbol vs. file-level mode. What is missing is any exclusion or alternative: there is no statement like 'use dependents for a cheap non-risk listing', so an agent cannot rule out the lighter siblings from this text alone.

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