Skip to main content
Glama

Compare reviewed answers across places

answer_compare
Read-onlyIdempotent

Return the reviewed answers to one question for several objects side by side (for example the minimum investment of several programmes, or a tax rate in several countries), each with its official quotations. Objects not covered are listed in missing — never guessed. Aliases count once; at least two distinct recognised objects are required. coverage describes answer availability for this request only, not completeness of law or personal applicability. Display missing objects and the coverage note when presenting partial results.

Input Schema

NameRequiredDescriptionDefault
localeNoAnswer language; Russian when omitted.
objectsYesObject codes or names.
questionYesA question code or a natural-language question.

Output Schema

NameRequiredDescriptionDefault
rowsYes
reasonNo
missingYes
coverageNoRequest availability only. A null denominator means identities could not be resolved.
noAnswerNoRecognised requested objects without a currently available whole reviewed answer.
questionYes
revisionYes
reasonScopeNo
unknownObjectsNoUnrecognised identities within the reviewed public catalogue; not a statement about all legal entities.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / evidenceNote
      Added value: +{
      +  "description": "Full native explanation of the limited role of this source.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / evidenceRole
      Added value: +{
      +  "description": "Identity-only required evidence; not proof of the answer tariff or current client eligibility.",
      +  "enum": [
      +    "provider_identity"
      +  ],
      +  "type": "string"
      +}
  2. Changed6 schema fields changed
    • addedOutput schema / properties / coverage
      Added value: +{
      +  "description": "Request availability only. A null denominator means identities could not be resolved.",
      +  "properties": {
      +    "availableCount": {
      +      "minimum": 0,
      +      "type": "integer"
      +    },
      +    "note": {
      +      "type": "string"
      +    },
      +    "requestedCount": {
      +      "anyOf": [
      +        {
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "status": {
      +      "enum": [
      +        "all_requested_available",
      +        "partial",
      +        "unavailable"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "status",
      +    "requestedCount",
      +    "availableCount",
      +    "note"
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / noAnswer
      Added value: +{
      +  "description": "Recognised requested objects without a currently available whole reviewed answer.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / reason
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / reasonScope
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / rows / items / properties / materialVersion
      Added value: +{
      +  "description": "Content-addressed version of this complete native cell, including all qualifications and source evidence; independent of the request revision.",
      +  "pattern": "^[a-f0-9]{64}$",
      +  "type": "string"
      +}
    • addedOutput schema / properties / unknownObjects
      Added value: +{
      +  "description": "Unrecognised identities within the reviewed public catalogue; not a statement about all legal entities.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
  3. Changed1 schema field changed
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / exceptionOfRef
      Added value: +{
      +  "description": "Exact native parent answer reference; null when absent. No parent is inferred.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  4. Changed6 schema fields changed
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / language
      Added value: +{
      +  "description": "Language recorded for the native quotation.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / sourceClass
      Added value: +{
      +  "description": "Normal source classification from the admitted B item.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / sourceKind
      Added value: +{
      +  "description": "Native source kind; null when withheld from the public projection.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / sourceQualification
      Added value: +{
      +  "description": "Source qualification from the admitted B item, when present.",
      +  "type": [
      +    "object",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / translationLanguage
      Added value: +{
      +  "description": "Language of the exact quotation translation; null when absent.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / verificationFingerprint
      Added value: +{
      +  "description": "Exact B source snapshot and quotation fingerprint; not current-law proof.",
      +  "properties": {
      +    "checkIdentitySha256": {
      +      "type": "string"
      +    },
      +    "fingerprintSha256": {
      +      "type": "string"
      +    },
      +    "membershipRecipe": {
      +      "type": "string"
      +    },
      +    "quoteLiteralSha256": {
      +      "type": "string"
      +    },
      +    "snapshotRepresentation": {
      +      "type": "string"
      +    },
      +    "snapshotSha256": {
      +      "type": "string"
      +    },
      +    "version": {
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "version",
      +    "snapshotRepresentation",
      +    "snapshotSha256",
      +    "quoteLiteralSha256",
      +    "membershipRecipe",
      +    "checkIdentitySha256",
      +    "fingerprintSha256"
      +  ],
      +  "type": "object"
      +}
  5. Changed3 schema fields changed
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / recordedText
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / rows / items / properties / note
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / question / properties / unit
      Added value: +{
      +  "type": "string"
      +}
  6. Changed15 schema fields changed
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / machineApplicability
      Added value: +{}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / nativeScope
      Added value: +{
      +  "type": "array"
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / ref
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / role
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / checked
      Added value: +{
      +  "description": "Actual native date the quotation was checked in the current stored snapshot; not proof of current law.",
      +  "type": "string"
      +}
    • removedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / date
      Removed value: -{
      -  "description": "Snapshot date of the stored source copy, else the date the quote was checked in it.",
      -  "type": "string"
      -}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / locator
      Added value: +{}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / quoteTranslation
      Added value: +{
      +  "description": "Exact translation supplied by the native source record; null when absent.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / sourceDate
      Added value: +{
      +  "description": "The native source document date; null when unknown. Separate from quotation verification.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / properties / verification
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / properties / rows / items / properties / answers / items / properties / sources / items / required
      Previous value: -[
      -  "quote",
      -  "url",
      -  "title",
      -  "date"
      -]New value: +[
      +  "quote",
      +  "url",
      +  "title",
      +  "sourceDate",
      +  "checked",
      +  "quoteTranslation",
      +  "verification"
      +]
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / valid
      Added value: +{}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / value
      Added value: +{}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / valueRaw
      Added value: +{}
    • addedOutput schema / properties / rows / items / properties / answers / items / properties / valueState
      Added value: +{
      +  "type": "string"
      +}
  7. Added

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly and idempotent annotations, the description discloses important behavioral traits: uncovered objects are listed in missing and never guessed, aliases count once, and coverage describes answer availability only rather than legal completeness or personal applicability. It also instructs the agent to display missing objects and the coverage note when presenting partial results.

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 the core comparison purpose, then adds only relevant constraints and presentation guidance. Every sentence contributes to correct invocation or result handling, with no redundant restatement of the 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?

Given the rich annotations, full schema coverage, and presence of an output schema, the description is complete enough for correct use. It covers purpose, minimum object requirements, missing-data behavior, alias handling, and coverage interpretation without needing to explain return fields.

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 adds useful meaning for the objects parameter: aliases count once and at least two distinct recognised objects are required. It also clarifies that the question is answered for multiple objects side by side, though locale and question format are already documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: return reviewed answers to one question for several objects side by side, with examples such as minimum investment and tax rate. It makes the multi-object comparison scope clear, but it does not explicitly distinguish itself from sibling tools like answer_lookup or answer_objects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives clear usage conditions: at least two distinct recognised objects are required, aliases count once, and missing objects must be shown rather than guessed. However, it does not explicitly name alternatives such as answer_lookup for single-object lookups or answer_objects for object discovery.

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