Skip to main content
Glama

Validate Claim

validate_claim
Read-onlyIdempotent

"Is it true that…" / "fact check" / "verify the claim that…" / "did X really…" / "was Y actually…" / "confirm or refute" / "true or false" — natural-language claim verification against authoritative sources. Use whenever the agent needs to check whether something a user said is factually correct. Company-financial claims (revenue, net income, cash for public US companies) verify via the structured SEC EDGAR + XBRL fast path with exact percent-delta math; ANY OTHER factual claim (macro statistics, rates, prices, drug data, records) automatically falls through to the grounded pipeline — routed to the right live source, answered with verbatim evidence, then judged. Returns a verdict (confirmed / approximately_correct / refuted / inconclusive / unsupported / could_not_verify), the grounded or structured actual value with pipeworx:// citation, and reasoning. IMPORTANT for callers: could_not_verify means the check did not happen (our LLM or source failed) and carries verification_error{stage,detail} — it is NOT evidence for or against the claim, and must not be shown as one. unsupported means we looked and cover no source for it. Replaces 4–6 sequential calls (NL parsing → entity resolution → data lookup → comparison).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
claimYesNatural-language factual claim, e.g., "Apple's FY2024 revenue was $400 billion" or "Microsoft made about $100B in profit last year".
tolerance_pctNoMax percent deviation still graded approximately_correct (0.5–50). Overrides the tolerance implied by the claim wording — set 1–2 for hallucination detection where any material error must be refuted. Default: implied by wording, capped at 5.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • addedInput schema / properties / tolerance_pct
      Added value: +{
      +  "description": "Max percent deviation still graded approximately_correct (0.5–50). Overrides the tolerance implied by the claim wording — set 1–2 for hallucination detection where any material error must be refuted. Default: implied by wording, capped at 5.",
      +  "type": "number"
      +}
  2. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond annotations (readOnly, openWorld, idempotent, non-destructive), the description discloses crucial behavioral details: the meaning of 'could_not_verify' (check did not happen, not evidence for/against), the distinction between 'unsupported' and other verdicts, and the two verification paths with verbatim evidence. It also mentions the structured vs. grounded pipeline behavior. 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.

Conciseness5/5

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

The description is front-loaded with example queries, then explains the verification paths, return values, and important edge cases. Although lengthy, every sentence adds unique value—there is no fluff. It is well-structured for a complex tool, making it easy to parse.

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 output schema, the description fully explains the returned verdicts, the reasoning/evidence, and the critical error semantics (could_not_verify vs unsupported). It also covers the two data paths and the callers' obligations, making it complete for an agent to invoke correctly without needing additional context.

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 input schema provides 100% coverage with detailed descriptions for both 'claim' and 'tolerance_pct', including examples and default behavior. The tool description adds no new parameter-specific information beyond what the schema already states (e.g., tolerance_pct usage is fully described in the schema). 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 identifies the tool as a natural-language claim verification tool, providing example queries and explicitly stating its function: 'check whether something a user said is factually correct.' It also distinguishes itself from siblings by noting it replaces a multi-step pipeline (NL parsing, entity resolution, data lookup, comparison) and details the two verification paths (SEC EDGAR/XBRL for company-financial claims, grounded pipeline for all others).

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?

The description explicitly states when to use the tool: 'Use whenever the agent needs to check whether something a user said is factually correct.' It also clarifies the fall-through behavior for any factual claim and contrasts it with the alternative of making multiple sequential calls. This gives the agent clear guidance on selection.

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

A3.8/5.0
Disambiguation2/5

Multiple tools have unclear boundaries: ask_pipeworx_beta is explicitly identical to ask_pipeworx right now, and ask_pipeworx_grounded is a subtle behavioral variant, creating a real selection hazard. The six polymarket_* tools also blur together (edges vs arbitrage vs fill_risk vs kalshi_spread all relate to finding and acting on mispricings), and scan_competitor_ai_presence is largely a wrapper over ai_visibility_check.

Naming Consistency3/5

All names are snake_case and several families share clear prefixes (ask_pipeworx, polymarket_*, pipeworx_*, scan_*), which keeps the set readable. However, the set mixes verb-first names (get_sample, compare_entities, resolve_entity) with noun-first names (entity_profile, bet_research, recent_changes, polymarket_edges), and the _beta suffix signals a status while _grounded signals a behavior, so the pattern is not predictable.

Tool Count2/5

33 tools is above the threshold where a tool set starts to feel bloated, and for a server named 'Biosamples' it is an extreme scope mismatch: 31 of 33 tools relate to Pipeworx data routing, prediction markets, memory, or subscriptions rather than biological samples. The count is also padded with near-duplicates such as ask_pipeworx_beta and scan_competitor_ai_presence.

Completeness2/5

Against the server's stated identity, the BioSamples surface is severely thin: only search_samples and get_sample exist, with no batch retrieval, project/group navigation, sample-group hierarchy, or submission/update path. The 31 unrelated tools do not fill this gap — they serve a completely different domain, so an agent using this server for biological sample data will hit dead ends.