MCP-Server

Tru8 Evidence Research

io.github.SamYatesSmith/tru8
Wissen & Dokumentation Suche & Recherche Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Runs source-traced evidence checks for factual claims or articles and retrieves structured or raw research results.

tru8_check
Evidence research for a factual claim or article URL. Submit a claim as text or paste an article URL. URLs are auto-detected and trigger article mode: the pipeline extracts claims from the page and auto-selects up to 5 for evidence research. Tiers (in fallback order): - lookup (~£0.02, instant) — cached prior analysis - consensus (~£0.03, instant) — cross-user aggregate landscape (k≥3 checks) - quick (~£0.07, ~15s) — web search + heuristic classification - full (~£0.15, ~60-90s) — web + specialist APIs, LLM classification, coverage recovery Charges based on tier actually executed, not tier requested. Identical calls within ten minutes return the same check, so a transport retry never runs — or charges — twice. Set max_tier to control maximum spend per call. Output structure: - claims[].claimMap.elements[] — verifiable sub-claims with state (supported/disputed/unresolved) - claims[].claimMap.elements[].evidenceRefs[] — evidence mapped to elements with relationship (supports/challenges/context) and reasoning - claims[].evidence[] — sources classified by tier (primary/reporting/ commentary) and type (data/official/news/analysis/opinion/academic) - claims[].claimMap.orientation — mechanical summary from element states - _meta — execution metadata: executedTier, chargedPence, limitations Per-argument guidance lives on the parameters themselves (see the Annotated/Field declarations above), which is where a client can actually read it — a docstring "Args:" block never reaches the tool's inputSchema.
Externer Zugriff
Eingabeschema
{'type': 'object', 'title': 'tru8_checkArguments', 'required': ['claim'], 'properties': {'claim': {'type': 'string', 'title': 'Claim', 'description': 'A factual claim ("The Earth\'s average temperature rose 1.1°C since 1880") or an article URL (https://example.com/article). URLs are auto-detected and the pipeline extracts claims from the page content.'}, 'compact': {'type': 'boolean', 'title': 'Compact', 'default': False, 'description': 'If true, strip the full evidence arrays and computed analytics from the response, leaving claims and claim maps. Smaller payload for agents that only need orientation.'}, 'max_tier': {'type': 'string', 'title': 'Max Tier', 'default': 'full', 'description': 'Maximum tier to attempt â\x80\x94 "lookup", "consensus", "quick" or "full" (default). A CEILING, not a floor: cached and consensus hits still return instantly at their own lower price, so the default costs ~£0.15 only for claims never researched before. Set "quick" to cap spend at ~£0.07, accepting web-search-only sourcing and heuristic classification (see _meta.limitations).'}, 'max_age_hours': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Max Age Hours', 'default': None, 'description': 'Skip cache hits older than this many hours. Stale lookup hits are discarded and the pipeline re-runs at the next tier up to max_tier. 0 means never serve a cached result.'}}}
Ausgabeschema
{'type': 'object', 'title': 'tru8_checkOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
tru8_get_result
Retrieve a previously submitted check with pre-computed analytics. Returns the full result including a _computed block with tier/type distributions, corroboration groups, diagnostic values, timeline analysis, element state summaries, and per-claim dispositions. Use this over tru8_get_result_raw when you want structured analytics ready for summarisation or comparison without post-processing.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'title': 'tru8_get_resultArguments', 'required': ['check_id'], 'properties': {'check_id': {'type': 'string', 'title': 'Check Id', 'description': 'The check UUID returned by tru8_check. Retrieval is free and limited to your own checks; a check still running returns its status rather than a result, so this is also the poll call.'}}}
Ausgabeschema
{'type': 'object', 'title': 'tru8_get_resultOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
tru8_get_result_raw
Retrieve a previously submitted check without computed analytics. Returns claims, elements, evidence, and claim maps only. No _computed block. Smaller response payload. Use this when you will compute your own aggregations or only need specific fields from the raw data.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', 'title': 'tru8_get_result_rawArguments', 'required': ['check_id'], 'properties': {'check_id': {'type': 'string', 'title': 'Check Id', 'description': 'The check UUID returned by tru8_check. Same retrieval as tru8_get_result, without the computed analytics block.'}}}
Ausgabeschema
{'type': 'object', 'title': 'tru8_get_result_rawOutput', 'required': ['result'], 'properties': {'result': {'type': 'string', 'title': 'Result'}}}
Hinzugefügt
tru8_get_result_raw
17. September 2026 12:52
Hinzugefügt
tru8_get_result
17. September 2026 12:52
Hinzugefügt
tru8_check
17. September 2026 12:52