Skip to main content
Glama

Clinical Evidence & Claim Entailment Verifier

verify_evidence
Read-onlyIdempotent

Verify medical citations and DOI authenticity, then check clinical claims against guideline evidence with GRADE certainty scoring to flag unsupported or hallucinated assertions.

Instructions

Performs two-stage medical evidence verification: validates bibliographic citation existence and DOI authenticity, and verifies clinical claim entailment against authoritative guideline corpora with GRADE certainty scoring.

When to use:

  • Verifying whether a clinical assertion, guideline claim, or medical literature citation is authentic, guideline-concordant, and free of medical hallucination.

When NOT to use:

  • Executing mathematical clinical calculators or risk algorithms (use calculate_clinical_score instead).

  • Triage screening of patient acute emergency symptoms or vital signs (use check_red_flags instead).

  • Redacting patient identifying data from clinical records (use scrub_phi instead).

Parameter constraints & formats:

  • 'ref_id': Standardized guideline registry key formatted as '[ORGANIZATION][YEAR][TOPIC]' (e.g. 'ESC_2024_AF' for ESC atrial fibrillation, 'KDIGO_2021' for chronic kidney disease, 'AHA_2023_HF' for heart failure, 'BTS_2023_PNEUMONIA' for British Thoracic Society); cross-verified against curated bibliographic registry.

  • 'claim': Natural language clinical statement, diagnostic assertion, or therapeutic recommendation (e.g. 'Oral anticoagulation is recommended for male patients with non-valvular AF and CHA2DS2-VA score >= 2'); parsed for entities, comparator thresholds, and direction of effect against source guideline text.

  • 'patient_age_years': Patient age in years to evaluate age-stratified guideline applicability (e.g. pediatric <18 cutoffs in Schwartz vs adult >=18 in CKD-EPI); omitted evaluates general adult population.

  • 'patient_is_pregnant': Flag indicating pregnancy status to activate teratogenicity checks and maternal-fetal clinical guideline boundaries.

Behavioral guarantees & return states:

  • Pure deterministic offline cross-verification; executes in memory without network telemetry or data persistence.

  • Auth & limits: Fully local execution; requires no API keys, credentials, or network auth, with zero rate limits.

  • Return contract: Returns citation_metadata (ref_id, validity boolean, DOI, publication year) and claim_entailment (status 'SUPPORTED'|'REFUTED'|'UNVERIFIED', confidence 0.0-1.0, and GRADE certainty 'HIGH'|'MODERATE'|'LOW'|'VERY_LOW').

  • Error handling: Unrecognized ref_id or unverified citation safely returns valid=false and status='UNVERIFIED' without throwing uncaught exceptions.

Input Schema

NameRequiredDescriptionDefault
claimYesThe specific clinical claim, assertion, or recommendation to verify against the source guideline evidence.
ref_idYesUnique citation reference identifier from the guideline repository (e.g., 'ESC_2024_AF', 'KDIGO_2021', 'AHA_2023_HF').
patient_age_yearsNoOptional patient age in years to evaluate age-dependent guideline scope and validity boundaries.
patient_is_pregnantNoOptional boolean flag indicating pregnancy to evaluate pregnancy-specific guideline contraindications.

Output Schema

NameRequiredDescriptionDefault
claim_entailmentYesClaim entailment assessment including entailment status, confidence score, GRADE certainty, and boundary flags.
citation_metadataYesBibliographic validation result including DOI verification, publication details, and evidence grade.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed16 schema fields changedv0.1.2
    • addedInput schema / properties / claim / examples
      Added value: +[
      +  "Oral anticoagulation is recommended for male patients with non-valvular AF and CHA2DS2-VA score >= 2"
      +]
    • addedInput schema / properties / claim / maxLength
      Added value: +1000
    • addedInput schema / properties / claim / minLength
      Added value: +5
    • addedInput schema / properties / patient_age_years / examples
      Added value: +[
      +  68
      +]
    • addedInput schema / properties / patient_age_years / maximum
      Added value: +120
    • addedInput schema / properties / patient_age_years / minimum
      Added value: +0
    • addedInput schema / properties / patient_is_pregnant / default
      Added value: +false
    • addedInput schema / properties / patient_is_pregnant / examples
      Added value: +[
      +  false
      +]
    • addedInput schema / properties / ref_id / examples
      Added value: +[
      +  "ESC_2024_AF",
      +  "KDIGO_2021",
      +  "AHA_2023_HF"
      +]
    • addedInput schema / properties / ref_id / maxLength
      Added value: +50
    • addedInput schema / properties / ref_id / minLength
      Added value: +3
    • addedOutput schema / properties / citation_metadata / properties
      Added value: +{
      +  "doi": {
      +    "description": "Digital Object Identifier (DOI) citation link.",
      +    "type": "string"
      +  },
      +  "evidence_level": {
      +    "description": "Formal guideline evidence hierarchy rating.",
      +    "type": "string"
      +  },
      +  "ref_id": {
      +    "description": "Guideline reference identifier evaluated.",
      +    "type": "string"
      +  },
      +  "title": {
      +    "description": "Full formal title of the clinical practice guideline.",
      +    "type": "string"
      +  },
      +  "valid": {
      +    "description": "True if citation exists in authoritative repository and DOI is verified.",
      +    "type": "boolean"
      +  },
      +  "year": {
      +    "description": "Publication year.",
      +    "type": "integer"
      +  }
      +}
    • addedOutput schema / properties / citation_metadata / required
      Added value: +[
      +  "ref_id",
      +  "valid"
      +]
    • addedOutput schema / properties / claim_entailment / properties
      Added value: +{
      +  "boundary_flags": {
      +    "description": "Population boundary warnings or contraindication caveats.",
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": "array"
      +  },
      +  "claim_text": {
      +    "description": "Original clinical claim evaluated.",
      +    "type": "string"
      +  },
      +  "confidence": {
      +    "description": "Mathematical entailment confidence coefficient.",
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "grade_certainty": {
      +    "description": "GRADE certainty tier.",
      +    "enum": [
      +      "HIGH",
      +      "MODERATE",
      +      "LOW",
      +      "VERY_LOW"
      +    ],
      +    "type": "string"
      +  },
      +  "status": {
      +    "description": "Entailment verdict against guideline evidence.",
      +    "enum": [
      +      "SUPPORTED",
      +      "REFUTED",
      +      "UNVERIFIED"
      +    ],
      +    "type": "string"
      +  }
      +}
    • addedOutput schema / properties / claim_entailment / required
      Added value: +[
      +  "claim_text",
      +  "status",
      +  "confidence",
      +  "grade_certainty"
      +]
    • addedOutput schema / required
      Added value: +[
      +  "citation_metadata",
      +  "claim_entailment"
      +]
  2. Changed5 schema fields changedv0.1.1
    • addedInput schema / properties / claim / description
      Added value: +"The specific clinical claim, assertion, or recommendation to verify against the source guideline evidence."
    • addedInput schema / properties / patient_age_years / description
      Added value: +"Optional patient age in years to evaluate age-dependent guideline scope and validity boundaries."
    • addedInput schema / properties / patient_is_pregnant / description
      Added value: +"Optional boolean flag indicating pregnancy to evaluate pregnancy-specific guideline contraindications."
    • addedInput schema / properties / ref_id / description
      Added value: +"Unique citation reference identifier from the guideline repository (e.g., 'ESC_2024_AF', 'KDIGO_2021', 'AHA_2023_HF')."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "description": "Verification payload containing citation metadata validation and claim entailment certainty analysis.",
      +  "properties": {
      +    "citation_metadata": {
      +      "description": "Bibliographic validation result including DOI verification, publication details, and evidence grade.",
      +      "type": "object"
      +    },
      +    "claim_entailment": {
      +      "description": "Claim entailment assessment including entailment status, confidence score, GRADE certainty, and boundary flags.",
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
  3. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnly, idempotent, closed-world, non-destructive), the description discloses offline deterministic execution, no network telemetry or persistence, no auth/credentials, zero rate limits, and a concrete error-handling contract (invalid ref_id returns valid=false and status='UNVERIFIED' rather than throwing). That is exactly the additive behavioral detail annotations cannot carry.

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?

Strongly front-loaded with labeled sections (when to use, when not, parameter constraints, guarantees/return states) that make skimming easy. It is on the long side, with minor repetition of schema examples and a return contract that restates the existing output schema.

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 two-required-parameter verification tool with an output schema, the description leaves nothing an agent would need: input formats, optional-parameter effects, failure modes, and execution environment are all covered. Return shape detail is arguably redundant given the output schema, but harmless.

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, but the description earns above that: it specifies the '[ORGANIZATION]_[YEAR]_[TOPIC]' key grammar with a worked example per organization, states what the claim string is parsed into (entities, comparator thresholds, direction of effect), and explains that age drives age-stratified cutoffs (pediatric Schwartz vs adult CKD-EPI) and pregnancy activates teratogenicity checks. Some example duplication with the schema keeps it from a 5.

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 opening sentence names a specific two-stage verb+resource: bibliographic citation/DOI validation plus clinical claim entailment scoring against guideline corpora. It is immediately distinguishable from every sibling (scoring, triage, interactions, PHI redaction, security scanning, terminology).

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?

It gives both a when-to-use condition (authenticity/guideline-concordance/hallucination checks) and an explicit 'When NOT to use' list routing to three named alternatives: calculate_clinical_score, check_red_flags, and scrub_phi. The selection logic is fully externalized.

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