Skip to main content
Glama

Search Fragments

Resolve Fragment

resolve_fragment

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fragmentYesThe 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

TableJSON Schema
NameRequiredDescriptionDefault
poolYes
outcomeYes
summaryYes
evidenceYes
candidateYes
territoryYes
sf_judgementYes
reject_reasonYes
resolution_idYesStable ID for this stored resolution.
is_sf_questionYes
verification_stateYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / resolution_id / description
      Previous 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. Changed10 schema fields changed
    • removedOutput schema / properties / sf_judgement / properties / breeding_preview
      Removed value: -{
      -  "type": "object"
      -}
    • removedOutput schema / properties / sf_judgement / properties / cache_reason
      Removed value: -{
      -  "type": "string"
      -}
    • removedOutput schema / properties / sf_judgement / properties / missing_position
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / sf_judgement / properties / model_id
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / sf_judgement / properties / model_version_id
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / sf_judgement / properties / route
      Removed value: -{
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • removedOutput schema / properties / sf_judgement / properties / shape
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / sf_judgement / properties / structural_cache_hit
      Removed value: -{
      -  "type": "boolean"
      -}
    • removedOutput schema / properties / sf_judgement / properties / structural_confidence
      Removed value: -{
      -  "type": [
      -    "number",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / sf_judgement / properties / typed_ingredients
      Removed 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"
      -}
  3. Changed3 schema fields changed
    • removedOutput schema / properties / evaluator_version
      Removed value: -{
      -  "enum": [
      -    "sf-evidence-v2"
      -  ],
      -  "type": "string"
      -}
    • changedOutput schema / properties / sf_judgement / required
      Previous value: -[
      -  "structural_cache_hit",
      -  "cache_reason"
      -]New value: +[]
    • changedOutput schema / required
      Previous 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"
      +]
  4. Changed2 schema fields changed
    • removedOutput schema / properties / route_assets_applied
      Removed value: -{
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • changedOutput schema / required
      Previous 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"
      +]
  5. Changed1 schema field changed
    • changedOutput schema / properties / sf_judgement / required
      Previous 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"
      +]
  6. Changed2 schema fields changed
    • changedOutput schema / properties / candidate / oneOf
      Previous 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"
      +  }
      +]
    • addedOutput schema / properties / territory / items / properties / snippet
      Added 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."
      +}
  7. Changed2 schema fields changed
    • addedOutput schema / properties / resolution_id
      Added 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"
      +  ]
      +}
    • changedOutput schema / required
      Previous 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"
      +]
  8. Changed19 schema fields changed
    • changedInput schema / properties / fragment / description
      Previous 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."
    • changedInput schema / properties / fragment / minLength
      Previous value: -3New value: +5
    • addedOutput schema / additionalProperties
      Added value: +false
    • removedOutput schema / properties / candidate / description
      Removed value: -"Top candidate when outcome=resolved; null otherwise. DECIDE-BY-EYE — human must confirm."
    • changedOutput schema / properties / candidate / oneOf
      Previous 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"
      +  }
      +]
    • addedOutput schema / properties / evaluator_version
      Added value: +{
      +  "enum": [
      +    "sf-evidence-v2"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / evidence
      Added value: +{
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "quote": {
      +        "type": "string"
      +      },
      +      "title": {
      +        "type": "string"
      +      },
      +      "url": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "url",
      +      "title",
      +      "quote"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • removedOutput schema / properties / is_sf_question / description
      Removed value: -"true if the fragment is a valid memory-recall query; false if it was rejected as a direct lookup or research prompt."
    • removedOutput schema / properties / outcome / description
      Removed 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."
    • removedOutput schema / properties / pool / description
      Removed value: -"Ranked web results. Always DECIDE-BY-EYE — human must confirm before any graph write."
    • addedOutput schema / properties / pool / items / additionalProperties
      Added value: +false
    • addedOutput schema / properties / pool / items / required
      Added value: +[
      +  "title",
      +  "url",
      +  "domain"
      +]
    • removedOutput schema / properties / reject_reason / description
      Removed value: -"Why the fragment was rejected; non-null only when is_sf_question=false."
    • addedOutput schema / properties / route_assets_applied
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / sf_judgement
      Added 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"
      +}
    • addedOutput schema / properties / summary
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / territory
      Added 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"
      +}
    • addedOutput schema / properties / verification_state
      Added value: +{
      +  "enum": [
      +    "SUPPORTED_RELATION",
      +    "PARTIAL_EVIDENCE",
      +    "INSUFFICIENT_EVIDENCE",
      +    "VERIFICATION_FAILED"
      +  ],
      +  "type": "string"
      +}
    • changedOutput schema / required
      Previous 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"
      +]
  9. Changed2 schema fields changed
    • changedOutput schema / properties / candidate / oneOf
      Previous 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"
      +  }
      +]
    • changedOutput schema / properties / outcome / description
      Previous 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."
  10. Changed2 schema fields changed
    • changedOutput schema / properties / candidate / oneOf
      Previous 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"
      +  }
      +]
    • changedOutput schema / properties / outcome / description
      Previous 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."
  11. First observed

TDQS

A4.8/5.0
Behavior5/5

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.

Conciseness4/5

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.

Completeness5/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines5/5

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.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources