Skip to main content
Glama

Reality Graph Verification Tools

Check verification debt

check_verification_debt
Read-only

Estimate a software team's verification debt from team parameters. Computes the four published metrics (generation-to-verification ratio, review depth, unverified-merge rate, two-week churn) and an annual cost estimate, with the full calculation path, labeled assumptions, thresholds, and sources (GitClear, Sonar, Faros, Veracode). Deterministic arithmetic from published models - no benchmark claims. Only team_size is required; every additional parameter refines the estimate. Set lang='de' for a German report.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
langNoReport language (default: en)
team_sizeYesNumber of developers on the team (required)
prs_per_monthNoTotal merged PRs per month (default: team_size x prs_per_engineer_per_month)
hourly_rate_eurNoLoaded cost per engineer hour in EUR (default: 75, assumption)
ai_share_percentNoShare of merges that are AI-assisted, in percent (default: 60, assumption)
ai_merges_per_monthNoAI-assisted merges per month (enables the unverified-merge rate)
merged_loc_per_weekNoMerged changed lines of code per week (enables the GVR and review-depth metrics)
rework_rate_percentNoShare of AI-assisted changes reworked for a defect within 14 days, in percent (default: 2, the illustrative rate from /cost-of-verification-debt - replace it with your own reason-coded rate)
two_week_churn_percentNoShare of new lines revised or reverted within 14 days, in percent. A warning signal in the metrics block; it never enters the cost model, because it measures lines and the cost model counts changes
reviewer_hours_per_weekNoReviewer hours actually spent per week (enables the GVR metric)
hours_per_reworked_changeNoAverage hours per reworked change (default: 6, assumption)
prs_per_engineer_per_monthNoMerged PRs per engineer per month (default: 20, derived from the published worked report on /measure-verification-debt)
incident_allowance_eur_per_yearNoAnnual incident allowance in EUR (default: 0; add one only when you have a locally defined incident class, frequency and expected-loss method)
ai_merges_with_evidence_per_monthNoAI-assisted merges per month with recorded validation evidence (enables the unverified-merge rate)
review_reconstruction_hours_per_prNoAverage reviewer hours spent reconstructing intent per AI-assisted PR (default: 0.5, assumption)
substantive_review_comments_per_weekNoSubstantive review comments per week, excluding bots and nitpicks (enables the review-depth metric)

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: it promises 'the full calculation path, labeled assumptions, thresholds, and sources' and explicitly disclaims benchmark claims. It also notes language behavior ('Set lang='de' for a German report'). No contradictions with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

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

The description is two sentences and front-loaded with purpose. The first sentence covers what, the second covers usage and additional parameters. It is concise given the tool's complexity (16 params, 4 metrics). A slight length is justified, but it remains efficient and well-structured.

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 16 parameters and no output schema, the description provides a complete picture: it lists the four computed metrics, the annual cost estimate, the availability of a full calculation path, assumptions, thresholds, sources, and the optional German report. This is sufficient for an agent to invoke the tool correctly and understand expectations.

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 covers 100% of parameters with descriptions, so baseline is 3. The description adds extra semantics by explaining which parameters enable which metrics ('enables the unverified-merge rate', 'enables the GVR and review-depth metrics') and that only team_size is required. This goes beyond the schema's per-field descriptions.

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 identifies the tool's purpose: 'Estimate a software team's verification debt from team parameters. Computes the four published metrics...' It specifies the exact output (metrics and annual cost estimate), uses a specific verb ('estimate'), and distinguishes itself from siblings like calculate_verification_capacity by focusing on debt estimation rather than capacity.

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 explains when to use the tool: 'Only team_size is required; every additional parameter refines the estimate.' It also clarifies scope with 'Deterministic arithmetic from published models - no benchmark claims.' However, it does not explicitly compare against alternatives or state when not to use it, so a brief exclusion would improve clarity.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose, ranging from capacity planning to template generation and validation. There is no functional overlap; even the two template tools (get_task_contract_template and get_verification_report_template) serve different artifacts.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern using lowercase with underscores. Verbs like calculate, check, fetch, get, lint, plan, search, and validate clearly indicate actions, and the nouns are specific and singular.

Tool Count5/5

With 10 tools, the surface is well-scoped for the domain of AI coding verification. Each tool addresses a specific task without redundancy, and the count feels appropriate for a focused but complete tool suite.

Completeness5/5

The tool set covers the full lifecycle of verification: planning (plan_change_verification), specification (get_task_contract_template, lint_task_spec, validate_task_contract), execution (check_release_readiness, check_verification_debt, calculate_verification_capacity), and reporting (get_verification_report_template, fetch, search). No obvious gaps are evident.

Resources