Skip to main content
Glama

Server Quality Checklist

75%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v2.1.10

  • Disambiguation5/5

    Every tool has a clearly distinct purpose, from budget allocation to behavioral analysis, graph export, and verification planning. No two tools overlap in functionality.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun snake_case pattern (e.g., analyze_pr_behavior, generate_verification_plan), making it easy to predict tool roles from names alone.

    Tool Count5/5

    17 tools cover the full verification lifecycle without being excessive. Each tool serves a necessary function, and the count is appropriate for the domain.

    Completeness5/5

    The tool set addresses the entire workflow: repository analysis, behavioral diff, risk assessment, planning, adversarial probe generation, execution feedback, drift detection, and cross-repo monitoring. No obvious gaps.

  • Average 4.4/5 across 17 of 17 tools scored.

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

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • Last stable release on
    • 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.

  • This repository includes a glama.json configuration file.

  • 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 must carry the full burden. It discloses that the tool modifies a user-level file and affects future cross-repo snapshots. However, it does not mention whether duplicates are overwritten, permissions needed, or error behavior, leaving some gaps.

    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 three sentences long, front-loads the core action and target, and provides necessary context without waste. 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?

    For a simple registration tool with three parameters and no output schema, the description covers the registry location, the effect on cross-repo-snapshot, and typical usage. It could additionally clarify idempotency or whether it overwrites existing entries, but is largely sufficient.

    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 100%, so the schema already documents each parameter. The description adds a little extra context (e.g., 'name is shown in snapshots', 'path is absolute'), but not enough to significantly exceed the baseline score of 3.

    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 that register_repo adds a local repository to a specific registry file (~/.veris/registry.json) and explains how it feeds into cross_repo_snapshot. This distinguishes it from sibling tools like allocate_budget or what_if_revert.

    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 specifies that it is a setup-time call, typically run once per repo during bootstrapping of a multi-service environment. It does not explicitly mention when not to use it or provide alternatives, but the context strongly implies its role.

    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?

    Despite no annotations, the description clearly explains behavior: generates probes with specific failure scenarios and invariants, is domain-aware, and does not indicate side effects. Could mention that it does not modify state or require auth, but it covers essential traits.

    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?

    Well-structured with front-loaded purpose, categorized examples, and usage context. Each sentence adds value; slightly verbose but within reason.

    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 zero parameters and no output schema, description covers purpose, categories, and usage thoroughly. Provides enough context for an agent to decide when and why to call this 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?

    Input schema has zero parameters with 100% coverage, so schema already fully describes input. Description does not need to add param info; baseline 3 is appropriate.

    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?

    Clearly states the tool generates concrete Tier-3 adversarial test directives per affected workflow, listing specific categories (concurrency, idempotency, etc.) and distinguishing from vague test suggestions. The purpose is specific and distinct from sibling tools like generate_verification_plan.

    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?

    Explicitly instructs to use before merging a PR ('to brief an agent on what to actually run against a PR before merging'). Does not explicitly state when not to use or contrast with siblings, but context implies proper usage.

    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?

    Describes return data comprehensively and mentions data source (state.db). No annotations provided, so description carries full burden. It implies read-only but doesn't explicitly state no side effects. Still, sufficient for a history 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?

    Two sentences, no fluff. First sentence defines the output, second provides use case. Very efficient and front-loaded.

    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?

    Covers return data well despite no output schema. Mentions multiple data types. Could mention if there are any limits or pagination, but not critical for a single node query.

    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 100%, so description adds little beyond what schema provides. The description restates the format but doesn't enrich meaning significantly.

    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 it returns a full timeline for a specific node, listing specific data types (risk score, execution attempts, history of changes). It distinguishes from siblings like confidence_history by focusing on node history across all Veris runs.

    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?

    Explicit usage example provided ('this function broke prod...'), but no explicit when-not-to-use or comparison to alternatives. However, the context is clear enough for an agent to decide.

    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?

    Despite no annotations, the description fully discloses key behaviors: results persist in SQLite, affect confidence math with 14-day half-life decay and flaky=half-credit, and are used on subsequent runs. It also notes the payload accepts an array for batching. This goes well beyond a simple action statement.

    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 longer but each sentence adds value: purpose, usage pattern, behavioral impact, and batch recommendation. It is front-loaded with the core action. Could be slightly tighter but not wasteful.

    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?

    No output schema is provided, and the description does not mention return value or error handling. While the purpose and behavior are clear, an agent would benefit from knowing what the response contains. Given the tool's complexity, this is a moderate gap.

    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 description must compensate. It mentions parameters are 'keyed to nodeId + tier + directive', adding context to the grouping. It also lists 'pass / fail / flaky / skipped' for result enum, but does not detail fields like detail or durationMs. Partial compensation but not fully comprehensive.

    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 closes the verification feedback loop by posting results. It specifies the verb 'post', the resource 'verification results', and the context of external executors. It distinguishes from siblings like 'generate_verification_plan' or 'analyze_workflow' by focusing on result reporting.

    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 provides explicit guidance: 'Call once per batch of executed targets, not per-target'. It explains the necessity of this call for confidence tracking and implies it is for external executors. However, it does not explicitly state when not to use or name alternatives.

    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?

    Describes algorithm and cost model but lacks explicit statement on side effects (e.g., read-only, no state modification). Without annotations, this is a gap for a computation tool that may be idempotent.

    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, front-loaded with purpose, then formula, then usage guidance. No wasted words.

    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 single param and no output schema, description adequately covers purpose, algorithm, and execution instructions. Could mention edge case (empty return if budget too small) but not critical.

    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?

    Adds significant value beyond schema: explains how 'minutes' is used as total budget, provides typical values, and ties to leverage formula for allocation decision.

    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?

    Clear verb+resource+method: 'greedy-allocates the highest-leverage subset of verification targets'. Leverage formula and cost estimates distinguish it from sibling tools like generate_verification_plan.

    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?

    Explicit context: 'Use this when CI minutes are scarce or when an agent needs to pick what to verify before merging within a deadline.' Could improve by contrasting with alternatives like generate_verification_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?

    No annotations are provided, so the description fully carries the burden. It discloses the use of git worktree, automatic fallback to a synthetic 70% slice when git is unavailable, and the default comparison order (origin/main → main → HEAD~1). This transparency about behavior and failure modes is rich for a read-like analysis 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 concise and well-structured: first sentence states the core action and key differentiator, second sentence lists outputs, third gives usage guidance, fourth explains fallback, fifth clarifies defaults. No redundant 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?

    Given the complexity of behavioral diff computation and risk scoring, the description covers the main aspects: what it does, what it returns (including narrative), when to use it, and fallback behavior. Without an output schema, the description sufficiently enumerates return components. Minor omission: no mention of prerequisites like git installed, but fallback handles that.

    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?

    With 100% schema coverage for the single parameter (baseRef), the description adds meaningful context beyond the schema: the default fallback order and an example value. This helps the agent understand default behavior and usage without guesswork.

    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 it computes a real behavioral diff between two git refs using git worktree, and specifies the exact outputs (impacted workflows, nodes, risk scores, narrative). It distinguishes from synthetic mocks and ties directly to a PR analysis use case, making its purpose unmistakable.

    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 advises using this tool on a PR branch before merging to assess behavioral risk. It doesn't explicitly list alternatives or when not to use it, but the context is clear and the fallback behavior (synthetic slice) ensures it never fails, which is helpful 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?

    No annotations provided, so the description carries the full burden. It discloses the extensive data returned (nodes, signals, risks, hypotheses, probe deck) but does not explicitly state read-only nature or potential side effects. However, the detailed output list provides strong 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: first lists outputs, second gives usage guidance. Front-loaded with purpose, no wasted words. Perfectly concise.

    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 complex tool with 1 parameter, no output schema, and no annotations, the description provides a comprehensive list of output components. It lacks output format details but covers the key elements sufficiently.

    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 100% with a clear description of workflowId. The description adds context by mentioning it comes from list_workflows, but this largely reiterates the schema description. Baseline 3 is appropriate.

    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 it performs a deep-dive on a single workflow by ID, listing specific components such as member nodes, inference signals, top-5 high-risk nodes, runtime-risk hypotheses, and adversarial probe deck. It distinguishes itself from the sibling 'list_workflows' by indicating it is for detailed analysis of one workflow.

    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?

    Explicitly states when to use: after list_workflows surfaces a workflow, typically the highest-max-risk one affected by a PR. This gives clear context and implies list_workflows as the alternative for discovery.

    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?

    With no annotations, the description fully explains the read-only operation, the confidence math with 14-day half-life, and reliance on local state. No side effects are implied, and the behavior is transparent.

    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 concise, with three short sentences that front-load the main action and add important context efficiently. No redundant 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?

    Given the simple nature of the tool and no output schema, the description sufficiently covers purpose, data source, math, and usage contexts. It could be slightly more explicit about output format but is otherwise complete.

    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 already describes the 'limit' parameter fully. The description adds minimal value (wording 'widen') but does not provide new semantic depth, so baseline 3 is appropriate.

    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 that the tool returns confidence-score and execution-depth trends from Veris runs, specifying the data source (local state) and distinguishing it from sibling tools like analyze_repository or detect_drift.

    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 provides use cases (dashboards, health checks, regression detection) and default behavior (last 20 runs) but does not explicitly state when not to use it or mention alternative 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?

    No annotations provided, so description carries full burden. It explains the comparison mechanism (SHA-256 hashes), three drift classes, and warns about dangerous silent rewrites, providing valuable behavioral context.

    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?

    Three sentences, each adding value: mechanism, drift classes, usage recommendation. Slightly verbose but well-structured and front-loaded.

    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?

    Given zero parameters and no output schema, description fully explains what the tool does, how it works, and when to use it, making it complete for this 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?

    Input schema has zero parameters, so baseline is 4. Description adds no parameter info, which is appropriate as none exist.

    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 it compares current workflow fingerprints against prior runs to detect drift, using specific verb 'compares' and resource 'workflow fingerprints'. It distinguishes from sibling tools like analyze_workflow by focusing on drift detection.

    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?

    Explicitly says 'Run after every PR merge to catch behavioral regressions before users do', providing clear when-to-use guidance. Does not explicitly mention alternatives but context makes it distinct.

    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 carries full burden. It discloses that the tool reads from ~/.veris/registry.json and implies a non-destructive read operation. It does not mention authorization or rate limits, but for a simple read tool this is acceptable.

    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 concise at 4 sentences, front-loaded with the core purpose. Every sentence adds value: the return type, the use case, the output ordering, and the target audience.

    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?

    Given no parameters and no output schema, the description is complete. It explains what is returned and in what order, and provides a relevant use case. No further information is necessary.

    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 input schema has no parameters, so the description cannot add parameter meaning. Baseline 4 applies as no additional clarification is needed.

    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 returns 'latest confidence score and drift summary across every repository registered in the user-level registry'. The verb 'returns' and specific resources are well-defined, and it distinguishes itself from siblings by focusing on cross-repo aggregation.

    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 provides a clear use case: 'when a single logical workflow spans multiple services' with an example. It also notes the output ordering (weakest-confidence first) to guide the user. However, it does not explicitly state when not to use this tool.

    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?

    Without annotations, the description details output structure (nodes, edges, colors, counts) and detection method (ts-morph). It does not mention performance considerations or side effects, but being a read-only export, the behavioral traits are adequately covered.

    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 paragraph with no redundant sentences. It front-loads the core purpose, then provides details and usage guidance efficiently.

    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?

    Given no output schema and no annotations, the description thoroughly covers return values (nodeCount, edgeCount, nodes/edges arrays), including node coloring by domain. It is complete for the tool's zero-param, export-oriented nature.

    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?

    Input schema has zero parameters with 100% coverage, so the description adds no param semantics. Baseline 4 is appropriate since no additional meaning is needed.

    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 exports a 'full behavioral graph' as JSON, specifying nodes (classes, methods, functions) and edges (DependsOn, Invokes). It distinguishes from siblings like 'analyze_repository' or 'export_onboarding' by focusing on raw graph export.

    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 says 'Use this when you need machine-readable graph data for downstream analysis or visualization.' It lacks explicit exclusions or alternatives but provides clear usage context.

    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 bears the full burden of behavioral disclosure. It transparently states that the tool writes markdown files (creating files in the repo), which is a side effect. However, it does not mention permission requirements or whether the operation is reversible, so it's not fully transparent.

    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 each sentence adds meaningful detail without redundancy. No wasted words.

    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?

    Given zero parameters, no output schema, and low complexity, the description sufficiently covers the tool's purpose, output format, and usage context. It differentiates from siblings and is complete for an agent to decide when to invoke it.

    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 input schema has zero parameters, so schema coverage is 100%. The description adds value by explaining the output contents (workflow purpose, member files, key risks, etc.), which compensates for the lack of parameters. Baseline for 0 parameters is 4.

    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 generates a workflow-first onboarding package for new engineers or coding agents. It specifies the output format (markdown files per workflow under veris-reports/onboarding/) and differentiates itself from reading raw source code, making it distinct from sibling tools like analyze_repository or list_workflows.

    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 states when to use the tool: 'when bringing a contributor up to speed on an unfamiliar codebase.' It implies this is better than reading raw source, but does not explicitly exclude alternative tools, earning a 4.

    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 fully details the tool's behavior: outputs three tiers of directives keyed to nodeId, covering structural, behavioral, and adversarial checks. It does not mention side effects, but the behavior is well-described.

    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 efficiently convey purpose, output details, and usage hint. Front-loaded and no wasted words.

    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?

    Given no parameters, no output schema, and sibling tools, the description is complete. It explains what it does, what it returns (tiers with nodeId), and when to use it.

    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 input schema has zero parameters, so description needs no parameter explanation. However, it adds context about using current PR or graph state, which is valuable. Baseline 4 for 0-param 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 generates a tiered verification plan for nodes impacted by a PR or graph state. It distinguishes from siblings like 'analyze_pr_behavior' by focusing on verification planning with explicit tiers.

    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 recommends use to answer 'what should I verify before merging this PR?', providing clear context. It lacks explicit when-not-to-use or alternative tools, but the context is sufficient.

    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 provided, so the description carries full burden. It details the confidence math with half-life decay and what affects scores. It does not mention side effects (likely read-only) or output format, but is fairly transparent about algorithm and parameter effect.

    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, well-structured with main purpose first, then details about confidence math and usage. No unnecessary words, every sentence earns its place.

    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?

    No output schema, but description explains return values (confidence score, unverified behaviors) and covers parameter usage comprehensively. Given tool complexity and context signals, the description is 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?

    Schema coverage is 100% (1 parameter). The description adds value beyond the schema by explaining 'executedTargetsCount' as an override for what-if scenarios and external data. Enhances 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 it returns a confidence score and list of unverified behaviors. It specifies its role as a final readout after other tools or as a CI gate, distinguishing it from siblings like analyze_pr_behavior and generate_verification_plan.

    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?

    Explicitly says when to use: after analyze_pr_behavior + generate_verification_plan, or as a CI gate. Also describes the optional parameter for what-if scenarios. Does not explicitly state when not to use, but context is clear.

    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?

    Despite no annotations, the description discloses that the tool simulates removal and recomputes results (no destructive action), explains the source of node IDs, and clarifies the outcome. It lacks explicit mention of read-only or rate limits, but the simulated nature is clear.

    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 core concept, and every phrase adds value. No redundancy or wasted words.

    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 covers the tool's purpose, mechanism, inputs, and practical use case. It implies the output (behavioral diff and risk scores) but does not detail format; still, it is sufficient for an agent to invoke correctly.

    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 has 100% coverage, but the description adds critical format details ('filepath::SymbolName') and directs the user to export_behavioral_graph for node IDs. This adds substantial value beyond the 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?

    The description clearly states the tool performs counterfactual reasoning by simulating node removal from the head graph and recomputing behavioral diff and risk scores. It directly answers the 'what if reverted' question, making its purpose specific and distinct from siblings.

    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 recommends the tool for triaging post-incident commits to evaluate revert impact without an actual revert. While it does not detail when not to use or list alternatives, the contextual guidance is strong enough to help an agent decide.

    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?

    Given no annotations, the description fully covers behavior: it details the clustering mechanism ('weighted vote across path tokens, import tokens, and symbol tokens') and exactly what is returned (narrative impact, member count, risk metrics). 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.

    Conciseness4/5

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

    The description is a single, well-structured sentence that front-loads the main action. It includes some detail (list of domains) which adds value without being overly verbose.

    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 no parameters and no output schema, the description provides ample context: it explains the clustering approach, the output contents, and its significance. It is complete enough for an agent to select and invoke correctly.

    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?

    There are zero parameters, so the schema carries no burden. According to guidelines, 0 params yields a baseline of 4. The description does not need to add parameter semantics, but it clearly explains what the tool does without them.

    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 specific verbs ('Auto-clusters', 'Returns') and clearly identifies the resource ('repository graph', 'workflow domains'). It distinguishes itself from siblings by stating it's the 'most important Veris tool for understanding what a codebase actually *does*', making the purpose distinct.

    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 when to use (for workflow-first understanding) but does not explicitly state when not to use or provide direct alternatives. However, the context is clear enough that an agent can infer its primary use case.

    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?

    Discloses the tool's behavior: parsing files, building an AST cache, and returning a summary. Although no annotations exist, the description covers key aspects. Minor gap: does not specify if the cache persists or affects state.

    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 containing all necessary information without extraneous content. Front-loaded with core action and output, then adds usage guidance.

    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 no parameters and no output schema, the description fully explains return values and its role in the analysis chain. No missing context.

    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?

    No parameters are defined, so schema coverage is 100%. The description does not need to elaborate on parameters. Baseline for 0 params is 4.

    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 function: parsing TypeScript/JavaScript files and returning a structural summary with specific counts and per-file breakdown. It distinguishes from siblings by positioning itself as the first step in the analysis chain.

    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?

    Explicitly states when to call it ('once at the start of an agent session for any repo') and explains it is the preliminary step for downstream tools, providing clear usage context.

    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

Veris MCP server

Copy to your README.md:

Score Badge

Veris 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/vighriday/Veris'

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