Search Fragments
Server Details
Search Fragments — two tools for the queries an agent can't place, both built to decline rather than guess. resolve_fragment takes a half-remembered, cross-source query ("a musician who became famous for stopping performing") and returns a grounded answer, ranked web sources to confirm by eye, or an explicit no-resolution. verify_claim takes a specific factual assertion and returns supported, partially_supported, insufficient_evidence, or unsupported, with cited evidence and a stated_limits field that is always present. There is no confidence score — insufficient_evidence fires freely, and unsupported requires a source that explicitly contradicts, never mere absence of confirmation. Every verdict is decide-by-eye: "supported" means current web sources confirm it, not that the claim is true. Calibrated against 18 known claims before release. Free, no signup. Streamable HTTP (MCP 2025-11-25). Read-only.
- Status
- Healthy
- Uptime
- 100.0% over 47 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: resolve_fragment identifies half-remembered works, verify_claim checks specific factual assertions, and submit_resolution_feedback records feedback. The descriptions explicitly demarcate boundaries with complementary 'Not this shape' lists, leaving no room for misselection.
All tool names are snake_case and follow a verb_noun pattern (resolve_fragment, verify_claim, submit_resolution_feedback). The slightly longer 'submit_resolution_feedback' still fits the verb-first convention consistently.
Three tools are well-scoped for the server's purpose: two core capabilities (resolution and verification) plus a feedback mechanism. No tool feels extraneous or missing, and the count is neither thin nor heavy.
The core workflows are covered: resolving fragments, verifying claims, and giving feedback. However, there is no way to retrieve a stored resolution by its resolution_id later, which is a minor gap for a service that explicitly stores resolutions and returns IDs.
Available Tools
3 toolsresolve_fragmentResolve FragmentAInspect
Resolves a half-remembered description of a book, film, song, artwork, person, or event that someone knows exists but can't name. Input reads like a memory ("there's this thing where...", "...somebody who...", "...a story about...") rather than a lookup.
Matches this shape:
a musician who became famous largely for stopping performing
somebody who photographed the same view every day until the changes became the artwork
a song everybody knew but nobody could identify
a novel where the footnotes slowly become the real story
Not this shape:
what is the capital of France
who directed Jaws
name of french artist cubist painting 1948
which company bought Instagram in 2012
any well-documented fact or common trivia — this tool adds a multi-second round trip with no accuracy benefit there, and is not reliably correct on well-known items either
Latency: calls typically take 10–20 seconds.
Results are decide-by-eye, not asserted fact: a resolved title with a confidence level, a ranked shortlist of sources to check, or an explicit "not resolvable". Low-confidence findings are surfaced for a human to verify, not claimed as settled.
Each result includes a resolution_id that identifies the stored resolution.
| Name | Required | Description | Default |
|---|---|---|---|
| fragment | Yes | The half-remembered or fragment-shaped query, in the user's own words. Must be at least 5 characters and describe the thing being recalled by premise, plot, relationship, or context. |
Output Schema
| Name | Required | Description |
|---|---|---|
| pool | Yes | |
| outcome | Yes | |
| summary | Yes | |
| evidence | Yes | |
| candidate | Yes | |
| territory | Yes | |
| sf_judgement | Yes | |
| reject_reason | Yes | |
| resolution_id | Yes | Stable ID for this stored resolution. |
| is_sf_question | Yes | |
| verification_state | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover openWorldHint and idempotentHint, but the description adds uniquely valuable context: 10-20 second latency, results are decide-by-eye rather than asserted fact, low-confidence findings are surfaced for verification, and each call produces a stored resolution_id. This goes well beyond the structured hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose before the shape lists, and each bullet is functional rather than filler. It is on the verbose side, but the examples are doing differentiation work that the sibling names alone would not cover.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists so return values need not be explained, yet the description still characterizes result shape (title + confidence, ranked source shortlist, explicit 'not resolvable') and the resolution_id. Nothing needed to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the fragment parameter is already documented, but the description adds real meaning by showing the register the input should take ('there's this thing where...') and by framing it as premise/plot/relationship rather than a lookup string.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (resolves) plus a precisely characterized resource (half-remembered descriptions of books, films, songs, artwork, people, events), and explicitly says it is not a lookup. An agent can distinguish this from verify_claim without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides both positive and negative shape lists with concrete examples ('a musician who became famous largely for stopping performing') and explicit exclusions ('what is the capital of France', common trivia), plus the rationale that this tool adds latency with no accuracy benefit on well-known items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_resolution_feedbackSubmit Resolution FeedbackAInspect
Records accepted, partial or rejected feedback for a resolution_id returned by resolve_fragment in this session. accepted means the result is what the user meant; partial means it helped but is not quite it; rejected means it is not what the user meant. corrected_target and new_clue are optional and are stored as feedback only; they never change graph facts.
| Name | Required | Description | Default |
|---|---|---|---|
| note | No | Optional free-text note. Max 1000 characters. No personal data. | |
| status | Yes | accepted: the result is what the user meant. partial: it helped but is not quite it. rejected: it is not what the user meant. | |
| new_clue | No | Optional. An extra detail the user remembered after seeing the result. Max 500 characters. | |
| resolution_id | Yes | The resolution_id returned by the resolve_fragment call this feedback is about. | |
| corrected_target | No | Optional. What the user was actually thinking of, if they know it. Max 300 characters. |
Output Schema
| Name | Required | Description |
|---|---|---|
| status | Yes | |
| recorded | Yes | |
| resolution_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a non-read-only, non-idempotent write. The description adds meaningful behavioral context beyond them: corrected_target and new_clue are stored as feedback only and never change graph facts, which reassures the agent that a mutation does not alter the knowledge graph. It does not cover auth prerequisites, retry/idempotency implications, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with the core action and session-scoped input source. It is efficient overall, though the status semantics are repeated from the schema descriptions, which is a small redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a full input schema, an output schema, and annotations present, the description supplies the remaining conceptual context an agent needs: what session this belongs to and that the optional fields are non-mutating. It could still note idempotency/duplicate-submission behavior for a non-idempotent write, but nothing essential to a correct call is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, and the description genuinely adds meaning for the optional fields by clarifying that corrected_target and new_clue are persisted as feedback only and never mutate graph facts. The status meanings restated in the description duplicate the enum descriptions in the schema, which slightly limits the added value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (records) and resource (resolution feedback) and anchors the input to a resolution_id produced by resolve_fragment in this session. An agent can distinguish this write-back tool from resolve_fragment (which generates resolutions) and verify_claim without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly establishes the context of use: it is for feedback on a resolution_id returned by resolve_fragment in the current session. It does not state when NOT to use it or name explicit alternatives beyond the implicit sequencing with resolve_fragment, so it falls just short of a full when/when-not statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_claimVerify ClaimAIdempotentInspect
Checks whether current web sources support a specific factual assertion. Takes a claim as a natural-language statement; returns a verdict with cited evidence and stated limits.
Verdict set:
"supported" — multiple independent sources directly confirm the specific claimed detail
"partially_supported" — sources confirm the entity and domain; specific detail is pointed to but not directly stated
"insufficient_evidence" — sources don't address the specific claim; fires freely, including when the entity is well-known but the specific detail is undocumented
"unsupported" — a credible source explicitly contradicts the claim
All verdicts are DECIDE-BY-EYE. A "supported" verdict means current web sources confirm it — not that it is true. Evidence may be incomplete, biased, or outdated. The stated_limits field is always present and identifies what the evidence cannot confirm.
Good input shape (specific, checkable assertions):
"Werner Herzog dragged a full-size steamship over a hill during the filming of Fitzcarraldo"
"Glenn Gould stopped giving live concerts in 1964"
"The Backrooms photograph originated on 4chan"
Checks one specific factual statement. Not for identifying half-remembered works.
Not this shape:
"there's a documentary about a filmmaker dragging a boat over a mountain"
"a musician famous for stopping performing"
| Name | Required | Description | Default |
|---|---|---|---|
| claim | Yes | A specific factual assertion to check against current web sources. Should be a concrete, checkable statement — not a question or a half-remembered fragment. |
Output Schema
| Name | Required | Description |
|---|---|---|
| verdict | Yes | 'supported' = multiple independent sources directly confirm the specific claimed detail. 'partially_supported' = sources confirm entity + domain; detail pointed to but not directly stated. 'unsupported' = a credible source explicitly contradicts the claim. 'insufficient_evidence' = pool doesn't address the specific claim; fires freely. |
| evidence | Yes | Web sources retrieved. Always DECIDE-BY-EYE — human must verify before acting. |
| stated_limits | Yes | What the evidence cannot confirm, even when verdict is supported. Always present. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety flags, but the description adds the whole verdict taxonomy (supported/partially_supported/insufficient_evidence/unsupported) with firing conditions, the critical 'DECIDE-BY-EYE' framing that 'supported' means sources confirm rather than truth, and the guarantee that stated_limits is always present. That is rich behavioral context unavailable in the structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then a clearly labeled verdict set, then input-shape guidance. Slightly long, but each block (verdict definitions, decide-by-eye caveat) carries decision-relevant information rather than padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-param tool with an output schema, the description covers everything an agent needs: invocation criteria, verdict interpretation, and the reliability caveat. Return-value details are deferred to the output schema, which exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single, fully documented parameter, so baseline is 3. The description adds genuine meaning beyond the schema by showing the required input shape (specific, checkable assertions vs. half-remembered fragments) and the 500-char-scale intent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('checks whether current web sources support a specific factual assertion') and defines the output shape (verdict + cited evidence). It also explicitly carves out what it is NOT ('Not for identifying half-remembered works'), which separates it cleanly from the resolve_fragment sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit when-to-use examples ('Werner Herzog dragged a full-size steamship...') and explicit non-examples ('a musician famous for stopping performing'), plus the rule that it checks one specific factual statement. An agent can decide between this and resolve_fragment without inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
resolve_fragment1 field changed- changed
Output schema / properties / resolution_id / descriptionPrevious value: -"Stable ID for this resolution. Pass it to submit_resolution_feedback after the user recognises, rejects, or partially recognises the result."New value: +"Stable ID for this stored resolution."
2 tool updates
- Changed
resolve_fragment10 fields changed- removed
Output schema / properties / sf_judgement / properties / breeding_previewRemoved value: -{ - "type": "object" -} - removed
Output schema / properties / sf_judgement / properties / cache_reasonRemoved value: -{ - "type": "string" -} - removed
Output schema / properties / sf_judgement / properties / missing_positionRemoved value: -{ - "type": [ - "string", - "null" - ] -} - removed
Output schema / properties / sf_judgement / properties / model_idRemoved value: -{ - "type": [ - "string", - "null" - ] -} - removed
Output schema / properties / sf_judgement / properties / model_version_idRemoved value: -{ - "type": [ - "string", - "null" - ] -} - removed
Output schema / properties / sf_judgement / properties / routeRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - removed
Output schema / properties / sf_judgement / properties / shapeRemoved value: -{ - "type": [ - "string", - "null" - ] -} - removed
Output schema / properties / sf_judgement / properties / structural_cache_hitRemoved value: -{ - "type": "boolean" -} - removed
Output schema / properties / sf_judgement / properties / structural_confidenceRemoved value: -{ - "type": [ - "number", - "null" - ] -} - removed
Output schema / properties / sf_judgement / properties / typed_ingredientsRemoved value: -{ - "items": { - "additionalProperties": false, - "properties": { - "certainty": { - "enum": [ - "LOW", - "MEDIUM" - ], - "type": "string" - }, - "families": { - "items": { - "type": "string" - }, - "type": "array" - }, - "value": { - "type": "string" - } - }, - "required": [ - "value", - "families", - "certainty" - ], - "type": "object" - }, - "type": "array" -}
- Changed
submit_resolution_feedback5 fields changed- added
Input schema / properties / corrected_target / descriptionAdded value: +"Optional. What the user was actually thinking of, if they know it. Max 300 characters." - added
Input schema / properties / new_clue / descriptionAdded value: +"Optional. An extra detail the user remembered after seeing the result. Max 500 characters." - added
Input schema / properties / note / descriptionAdded value: +"Optional free-text note. Max 1000 characters. No personal data." - added
Input schema / properties / resolution_id / descriptionAdded value: +"The resolution_id returned by the resolve_fragment call this feedback is about." - added
Input schema / properties / status / descriptionAdded value: +"accepted: the result is what the user meant. partial: it helped but is not quite it. rejected: it is not what the user meant."
1 tool update
- Changed
resolve_fragment3 fields changed- removed
Output schema / properties / evaluator_versionRemoved value: -{ - "enum": [ - "sf-evidence-v2" - ], - "type": "string" -} - changed
Output schema / properties / sf_judgement / requiredPrevious value: -[ - "structural_cache_hit", - "cache_reason" -]New value: +[] - changed
Output schema / requiredPrevious value: -[ - "outcome", - "resolution_id", - "candidate", - "summary", - "evidence", - "territory", - "verification_state", - "evaluator_version", - "is_sf_question", - "pool", - "reject_reason", - "sf_judgement" -]New value: +[ + "outcome", + "resolution_id", + "candidate", + "summary", + "evidence", + "territory", + "verification_state", + "is_sf_question", + "pool", + "reject_reason", + "sf_judgement" +]
1 tool update
- Changed
resolve_fragment2 fields changed- removed
Output schema / properties / route_assets_appliedRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - changed
Output schema / requiredPrevious value: -[ - "outcome", - "resolution_id", - "candidate", - "summary", - "evidence", - "territory", - "verification_state", - "evaluator_version", - "is_sf_question", - "pool", - "reject_reason", - "route_assets_applied", - "sf_judgement" -]New value: +[ + "outcome", + "resolution_id", + "candidate", + "summary", + "evidence", + "territory", + "verification_state", + "evaluator_version", + "is_sf_question", + "pool", + "reject_reason", + "sf_judgement" +]
1 tool update
- Changed
resolve_fragment1 field changed- changed
Output schema / properties / sf_judgement / requiredPrevious value: -[ - "shape", - "missing_position", - "model_id", - "model_version_id", - "structural_confidence", - "typed_ingredients", - "route", - "structural_cache_hit", - "cache_reason", - "breeding_preview" -]New value: +[ + "structural_cache_hit", + "cache_reason" +]
1 tool update
- Changed
resolve_fragment2 fields changed- changed
Output schema / properties / candidate / oneOfPrevious value: -[ - { - "type": "null" - }, - { - "additionalProperties": false, - "properties": { - "confidence": { - "enum": [ - "high" - ], - "type": "string" - }, - "creator": { - "type": [ - "string", - "null" - ] - }, - "title": { - "type": "string" - } - }, - "required": [ - "title", - "creator", - "confidence" - ], - "type": "object" - } -]New value: +[ + { + "type": "null" + }, + { + "additionalProperties": false, + "properties": { + "confidence": { + "enum": [ + "high" + ], + "type": "string" + }, + "creator": { + "type": [ + "string", + "null" + ] + }, + "snippet": { + "anyOf": [ + { + "type": "null" + }, + { + "additionalProperties": false, + "properties": { + "text": { + "type": "string" + }, + "title": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "text", + "url", + "title" + ], + "type": "object" + } + ], + "description": "Optional verbatim excerpt from a fetched text source, for display. Null when no readable source text was retrieved. Not a model summary." + }, + "title": { + "type": "string" + } + }, + "required": [ + "title", + "creator", + "confidence" + ], + "type": "object" + } +] - added
Output schema / properties / territory / items / properties / snippetAdded value: +{ + "anyOf": [ + { + "type": "null" + }, + { + "additionalProperties": false, + "properties": { + "text": { + "type": "string" + }, + "title": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "text", + "url", + "title" + ], + "type": "object" + } + ], + "description": "Optional verbatim excerpt from a fetched text source for this lead. Null when no readable source text was retrieved. Not a model summary." +}
2 tool updates
- Changed
resolve_fragment2 fields changed- added
Output schema / properties / resolution_idAdded value: +{ + "description": "Stable ID for this resolution. Pass it to submit_resolution_feedback after the user recognises, rejects, or partially recognises the result.", + "type": [ + "number", + "null" + ] +} - changed
Output schema / requiredPrevious value: -[ - "outcome", - "candidate", - "summary", - "evidence", - "territory", - "verification_state", - "evaluator_version", - "is_sf_question", - "pool", - "reject_reason", - "route_assets_applied", - "sf_judgement" -]New value: +[ + "outcome", + "resolution_id", + "candidate", + "summary", + "evidence", + "territory", + "verification_state", + "evaluator_version", + "is_sf_question", + "pool", + "reject_reason", + "route_assets_applied", + "sf_judgement" +]
- Added
submit_resolution_feedback
1 tool update
- Changed
resolve_fragment19 fields changed- changed
Input schema / properties / fragment / descriptionPrevious value: -"The half-remembered or fragment-shaped query, in the user's own words. Should be at least 5 words and describe the thing being recalled by premise, plot, relationship, or context."New value: +"The half-remembered or fragment-shaped query, in the user's own words. Must be at least 5 characters and describe the thing being recalled by premise, plot, relationship, or context." - changed
Input schema / properties / fragment / minLengthPrevious value: -3New value: +5 - added
Output schema / additionalPropertiesAdded value: +false - removed
Output schema / properties / candidate / descriptionRemoved value: -"Top candidate when outcome=resolved; null otherwise. DECIDE-BY-EYE — human must confirm." - changed
Output schema / properties / candidate / oneOfPrevious value: -[ - { - "type": "null" - }, - { - "properties": { - "confidence": { - "description": "Legacy compatibility field; resolution requires the evidence verification state, not model confidence.", - "enum": [ - "high" - ], - "type": "string" - }, - "creator": { - "description": "Director, author, artist, or other attribution; null if not applicable.", - "type": [ - "string", - "null" - ] - }, - "title": { - "description": "The identified title, entity name, or answer.", - "type": "string" - } - }, - "required": [ - "title", - "creator", - "confidence" - ], - "type": "object" - } -]New value: +[ + { + "type": "null" + }, + { + "additionalProperties": false, + "properties": { + "confidence": { + "enum": [ + "high" + ], + "type": "string" + }, + "creator": { + "type": [ + "string", + "null" + ] + }, + "title": { + "type": "string" + } + }, + "required": [ + "title", + "creator", + "confidence" + ], + "type": "object" + } +] - added
Output schema / properties / evaluator_versionAdded value: +{ + "enum": [ + "sf-evidence-v2" + ], + "type": "string" +} - added
Output schema / properties / evidenceAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "quote": { + "type": "string" + }, + "title": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url", + "title", + "quote" + ], + "type": "object" + }, + "type": "array" +} - removed
Output schema / properties / is_sf_question / descriptionRemoved value: -"true if the fragment is a valid memory-recall query; false if it was rejected as a direct lookup or research prompt." - removed
Output schema / properties / outcome / descriptionRemoved value: -"'resolved' = candidate supported by retrieved evidence for the requested relationship. 'ranked_stalls' = web results returned but no confident semantic identification — pool for human review. 'no_resolution' = not an SF question, or pipeline produced an empty pool." - removed
Output schema / properties / pool / descriptionRemoved value: -"Ranked web results. Always DECIDE-BY-EYE — human must confirm before any graph write." - added
Output schema / properties / pool / items / additionalPropertiesAdded value: +false - added
Output schema / properties / pool / items / requiredAdded value: +[ + "title", + "url", + "domain" +] - removed
Output schema / properties / reject_reason / descriptionRemoved value: -"Why the fragment was rejected; non-null only when is_sf_question=false." - added
Output schema / properties / route_assets_appliedAdded value: +{ + "items": { + "type": "string" + }, + "type": "array" +} - added
Output schema / properties / sf_judgementAdded value: +{ + "additionalProperties": false, + "properties": { + "breeding_preview": { + "type": "object" + }, + "cache_reason": { + "type": "string" + }, + "missing_position": { + "type": [ + "string", + "null" + ] + }, + "model_id": { + "type": [ + "string", + "null" + ] + }, + "model_version_id": { + "type": [ + "string", + "null" + ] + }, + "route": { + "items": { + "type": "string" + }, + "type": "array" + }, + "shape": { + "type": [ + "string", + "null" + ] + }, + "structural_cache_hit": { + "type": "boolean" + }, + "structural_confidence": { + "type": [ + "number", + "null" + ] + }, + "typed_ingredients": { + "items": { + "additionalProperties": false, + "properties": { + "certainty": { + "enum": [ + "LOW", + "MEDIUM" + ], + "type": "string" + }, + "families": { + "items": { + "type": "string" + }, + "type": "array" + }, + "value": { + "type": "string" + } + }, + "required": [ + "value", + "families", + "certainty" + ], + "type": "object" + }, + "type": "array" + } + }, + "required": [ + "shape", + "missing_position", + "model_id", + "model_version_id", + "structural_confidence", + "typed_ingredients", + "route", + "structural_cache_hit", + "cache_reason", + "breeding_preview" + ], + "type": "object" +} - added
Output schema / properties / summaryAdded value: +{ + "type": "string" +} - added
Output schema / properties / territoryAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "evidence": { + "items": { + "additionalProperties": false, + "properties": { + "quote": { + "type": "string" + }, + "title": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": [ + "url", + "title", + "quote" + ], + "type": "object" + }, + "type": "array" + }, + "reason": { + "type": "string" + }, + "title": { + "type": "string" + }, + "unresolved": { + "items": { + "type": "string" + }, + "type": "array" + } + }, + "required": [ + "title", + "reason", + "evidence", + "unresolved" + ], + "type": "object" + }, + "type": "array" +} - added
Output schema / properties / verification_stateAdded value: +{ + "enum": [ + "SUPPORTED_RELATION", + "PARTIAL_EVIDENCE", + "INSUFFICIENT_EVIDENCE", + "VERIFICATION_FAILED" + ], + "type": "string" +} - changed
Output schema / requiredPrevious value: -[ - "outcome", - "is_sf_question", - "candidate", - "pool", - "reject_reason" -]New value: +[ + "outcome", + "candidate", + "summary", + "evidence", + "territory", + "verification_state", + "evaluator_version", + "is_sf_question", + "pool", + "reject_reason", + "route_assets_applied", + "sf_judgement" +]
1 tool update
- Changed
resolve_fragment2 fields changed- changed
Output schema / properties / candidate / oneOfPrevious value: -[ - { - "type": "null" - }, - { - "properties": { - "confidence": { - "description": "Semantic pass confidence level. Only high-confidence identifications are resolved; medium degrades to ranked_stalls.", - "enum": [ - "high" - ], - "type": "string" - }, - "creator": { - "description": "Director, author, artist, or other attribution; null if not applicable.", - "type": [ - "string", - "null" - ] - }, - "title": { - "description": "The identified title, entity name, or answer.", - "type": "string" - } - }, - "required": [ - "title", - "creator", - "confidence" - ], - "type": "object" - } -]New value: +[ + { + "type": "null" + }, + { + "properties": { + "confidence": { + "description": "Legacy compatibility field; resolution requires the evidence verification state, not model confidence.", + "enum": [ + "high" + ], + "type": "string" + }, + "creator": { + "description": "Director, author, artist, or other attribution; null if not applicable.", + "type": [ + "string", + "null" + ] + }, + "title": { + "description": "The identified title, entity name, or answer.", + "type": "string" + } + }, + "required": [ + "title", + "creator", + "confidence" + ], + "type": "object" + } +] - changed
Output schema / properties / outcome / descriptionPrevious value: -"'resolved' = strong candidate identified (semantic pass returned high confidence title). 'ranked_stalls' = web results returned but no confident semantic identification — pool for human review. 'no_resolution' = not an SF question, or pipeline produced an empty pool."New value: +"'resolved' = candidate supported by retrieved evidence for the requested relationship. 'ranked_stalls' = web results returned but no confident semantic identification — pool for human review. 'no_resolution' = not an SF question, or pipeline produced an empty pool."
1 tool update
- Added
verify_claim
1 tool update
- Changed
resolve_fragment2 fields changed- changed
Output schema / properties / candidate / oneOfPrevious value: -[ - { - "type": "null" - }, - { - "properties": { - "confidence": { - "description": "Semantic pass confidence level.", - "enum": [ - "high", - "medium" - ], - "type": "string" - }, - "creator": { - "description": "Director, author, artist, or other attribution; null if not applicable.", - "type": [ - "string", - "null" - ] - }, - "title": { - "description": "The identified title, entity name, or answer.", - "type": "string" - } - }, - "required": [ - "title", - "creator", - "confidence" - ], - "type": "object" - } -]New value: +[ + { + "type": "null" + }, + { + "properties": { + "confidence": { + "description": "Semantic pass confidence level. Only high-confidence identifications are resolved; medium degrades to ranked_stalls.", + "enum": [ + "high" + ], + "type": "string" + }, + "creator": { + "description": "Director, author, artist, or other attribution; null if not applicable.", + "type": [ + "string", + "null" + ] + }, + "title": { + "description": "The identified title, entity name, or answer.", + "type": "string" + } + }, + "required": [ + "title", + "creator", + "confidence" + ], + "type": "object" + } +] - changed
Output schema / properties / outcome / descriptionPrevious value: -"'resolved' = strong candidate identified (semantic pass returned high/medium confidence title). 'ranked_stalls' = web results returned but no confident semantic identification — pool for human review. 'no_resolution' = not an SF question, or pipeline produced an empty pool."New value: +"'resolved' = strong candidate identified (semantic pass returned high confidence title). 'ranked_stalls' = web results returned but no confident semantic identification — pool for human review. 'no_resolution' = not an SF question, or pipeline produced an empty pool."
Related MCP Connectors
Check whether a real-world fact can be verified before an agent acts on it. Free, no auth.
Public web tools for agents: product extraction, claim checks, webpage QA and ranked audits.
Real-time fact-check, citation verification, and source-freshness for AI agents.
LLM-ready web search + instant answers + URL-to-clean-text fetch for agents and RAG.
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceEnables agents to fact-check claims, conduct verified research, make typed decisions with calibrated probabilities, and scan token risks through a hosted server with no API key required.MIT- AlicenseAqualityAmaintenanceEvidence-backed web research for AI agents. Real-time search with cited claims, confidence scores, and compare mode showing raw LLM hallucination vs evidence-backed answers.520Apache 2.0
- AlicenseAqualityAmaintenanceEnables agents to verify claims against cited evidence, screen content for prompt injection and relevance before reading it, and rank candidates by meaning, all with calibrated probability verdicts.129,745 npm481MIT
- AlicenseNot gradedqualityCmaintenanceA read-only MCP server that gives AI agents the web as compact, ranked, verified evidence — no API keys, no cloud retrieval, all models local.33 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.