Skip to main content
Glama

MVR API - Minimum Viable Relationships

Resolve the venture and market

mvr_entity_resolve
Read-only

Use when a startup, venture, programme, company, partner, or market actor must be resolved to a country, sector, and archetype before relational-readiness evidence is assessed. Use when: Use immediately after mvr_first_call when the user gives a company, venture, sector, country, or ambiguous market actor name, so the subject and target geography are resolved before evidence is assessed. Do not use when: Do not use as a readiness verdict or for unrelated entity lookup. Never submit secrets, personal identifiers, raw private interviews, or confidential evidence. Evidence input location: arguments.payload. Full replacement evidence_pack: object array; retain workflow context. String fields: id, claim, evidence_type, source_class, stakeholder_class, verification_status, geography, source_date, source_doc_id. geography: source-country string; evidence_geography: {country,city?,region?}, all strings. source_date: YYYY-MM-DD or ISO timestamp with timezone. Omit unknown dates/references, never null or invented. Unchecked: verification_status: unverified. Keep adverse facts in claim; formatting is not verification.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
payloadYesEntity and market context to canonicalize before evidence assessment.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
statusNo
warningNo
next_stepsNo
workflow_idNo
claim_reviewNo
evidence_fitNo
mcp_next_callNo
mcp_next_toolNo
response_metaNo
source_reviewNo
evidence_intakeNo
workflow_statusNo
canonical_entityNo
decision_domainsNo
workflow_expires_atNo
domain_routing_basisNoRouting basis, not a verified classification.
evidence_field_guideNoSelf-contained public evidence field types and unknown-metadata policy. Formatting guidance, not verification or authority.
mvr_response_receiptNo
required_user_inputsNo
evidence_requirementsNo
evidence_input_feedbackNo
continuation_dispositionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / evidence_field_guide
      Added value: +{
      +  "description": "Self-contained public evidence field types and unknown-metadata policy. Formatting guidance, not verification or authority.",
      +  "type": "string"
      +}
  2. Changed1 schema field changed
    • addedOutput schema / properties / evidence_intake
      Added value: +{
      +  "properties": {
      +    "boundary": {
      +      "description": "Intake format is not evidence assessment.",
      +      "type": "string"
      +    },
      +    "content_assessment_performed": {
      +      "type": "boolean"
      +    },
      +    "contract_version": {
      +      "description": "Intake disclosure version.",
      +      "type": "string"
      +    },
      +    "evidence_count_semantics": {
      +      "description": "Counts submitted entries, not underlying records or verified sources.",
      +      "type": "string"
      +    },
      +    "source_authenticity_verified": {
      +      "type": "boolean"
      +    },
      +    "status": {
      +      "enum": [
      +        "invalid_submission",
      +        "described_not_structured",
      +        "no_evidence_supplied",
      +        "structured_items_supplied",
      +        "mixed_descriptions_and_structured_items"
      +      ],
      +      "type": "string"
      +    },
      +    "structured_item_count": {
      +      "type": "integer"
      +    },
      +    "underlying_records_checked": {
      +      "type": "boolean"
      +    },
      +    "unstructured_description_count": {
      +      "type": "integer"
      +    }
      +  },
      +  "type": "object"
      +}
  3. Changed4 schema fields changed
    • addedOutput schema / properties / claim_review / properties / content_item_count
      Added value: +{
      +  "type": "integer"
      +}
    • addedOutput schema / properties / claim_review / properties / linkage_gaps
      Added value: +{
      +  "items": {
      +    "properties": {
      +      "blocking": {
      +        "type": "boolean"
      +      },
      +      "code": {
      +        "description": "Stable correction code.",
      +        "type": "string"
      +      },
      +      "message": {
      +        "description": "Correction without echoing source content.",
      +        "type": "string"
      +      },
      +      "path": {
      +        "description": "Indexed submitted payload path.",
      +        "type": "string"
      +      },
      +      "severity": {
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / claim_review / properties / linkage_gaps_truncated
      Added value: +{
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / claim_review / properties / unlinked_evidence_count
      Added value: +{
      +  "type": "integer"
      +}
  4. Changed8 schema fields changed
    • addedInput schema / properties / payload / properties / claims
      Added value: +{
      +  "description": "Optional explicit target claims and source-specific support links. Reuses the governed claim-audit vocabulary. Public links are caller declarations, never authenticated reviewer attestations.",
      +  "items": {
      +    "properties": {
      +      "claim": {
      +        "description": "Minimal public-safe target proposition.",
      +        "type": "string"
      +      },
      +      "claim_id": {
      +        "description": "Opaque claim identifier.",
      +        "type": "string"
      +      },
      +      "support_links": {
      +        "items": {
      +          "properties": {
      +            "claim_id": {
      +              "description": "Must match the containing claim.",
      +              "type": "string"
      +            },
      +            "evidence_id": {
      +              "description": "Must identify an item in this complete evidence pack.",
      +              "type": "string"
      +            },
      +            "locator": {
      +              "description": "Specific page, cell or section. A locator is not proof.",
      +              "type": "string"
      +            },
      +            "relationship": {
      +              "enum": [
      +                "direct_support",
      +                "qualifies",
      +                "contradicts",
      +                "context_only"
      +              ],
      +              "type": "string"
      +            },
      +            "review_event_id": {
      +              "description": "Only the licensed review service can check this event; ignored as authority by public preflight.",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "claim_id",
      +            "evidence_id",
      +            "relationship",
      +            "locator"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "claim_id",
      +      "claim"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / claim_review
      Added value: +{
      +  "properties": {
      +    "blocking": {
      +      "type": "boolean"
      +    },
      +    "boundary": {
      +      "type": "string"
      +    },
      +    "claim_count": {
      +      "type": "integer"
      +    },
      +    "content_assessment_performed": {
      +      "type": "boolean"
      +    },
      +    "declared_contradiction_count": {
      +      "type": "integer"
      +    },
      +    "declared_qualification_count": {
      +      "type": "integer"
      +    },
      +    "issues": {
      +      "items": {
      +        "properties": {
      +          "blocking": {
      +            "type": "boolean"
      +          },
      +          "code": {
      +            "description": "Stable correction code.",
      +            "type": "string"
      +          },
      +          "message": {
      +            "description": "Correction without echoing source content.",
      +            "type": "string"
      +          },
      +          "path": {
      +            "description": "Indexed submitted payload path.",
      +            "type": "string"
      +          },
      +          "severity": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "links": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "source_authenticity_verified": {
      +      "type": "boolean"
      +    },
      +    "status": {
      +      "type": "string"
      +    },
      +    "unlinked_claim_count": {
      +      "type": "integer"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / decision_domains
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / domain_routing_basis
      Added value: +{
      +  "description": "Routing basis, not a verified classification.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / evidence_fit
      Added value: +{
      +  "properties": {
      +    "analysis_date": {
      +      "type": "string"
      +    },
      +    "analysis_timezone": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "blocking": {
      +      "type": "boolean"
      +    },
      +    "coverage_exclusion_count": {
      +      "type": "integer"
      +    },
      +    "issues": {
      +      "items": {
      +        "properties": {
      +          "blocking": {
      +            "type": "boolean"
      +          },
      +          "code": {
      +            "description": "Stable correction code.",
      +            "type": "string"
      +          },
      +          "message": {
      +            "description": "Correction without echoing source content.",
      +            "type": "string"
      +          },
      +          "path": {
      +            "description": "Indexed submitted payload path.",
      +            "type": "string"
      +          },
      +          "severity": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "source_authenticity_verified": {
      +      "type": "boolean"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidence_input_feedback
      Added value: +{
      +  "properties": {
      +    "contract_version": {
      +      "description": "Feedback version.",
      +      "type": "string"
      +    },
      +    "error_count": {
      +      "type": "integer"
      +    },
      +    "issues": {
      +      "items": {
      +        "properties": {
      +          "blocking": {
      +            "type": "boolean"
      +          },
      +          "code": {
      +            "description": "Stable correction code.",
      +            "type": "string"
      +          },
      +          "message": {
      +            "description": "Correction without echoing source content.",
      +            "type": "string"
      +          },
      +          "path": {
      +            "description": "Indexed submitted payload path.",
      +            "type": "string"
      +          },
      +          "severity": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "issues_truncated": {
      +      "type": "boolean"
      +    },
      +    "warning_count": {
      +      "type": "integer"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / evidence_requirements
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / source_review
      Added value: +{
      +  "properties": {
      +    "evidence_strength": {
      +      "type": [
      +        "number",
      +        "null"
      +      ]
      +    },
      +    "required_before_consequential_reliance": {
      +      "type": "boolean"
      +    },
      +    "status": {
      +      "type": "string"
      +    },
      +    "tasks": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
  5. Changed6 schema fields changed
    • changedInput schema / properties / payload / properties / analysis_date / description
      Previous value: -"Optional YYYY-MM-DD or ISO timestamp with timezone, no later than today; defaults to the server UTC date. Carried through the public handoff."New value: +"Optional YYYY-MM-DD or ISO timestamp with timezone, no later than today in analysis_timezone (UTC by default). Defaults to the current date in that calendar. Carried through the public handoff."
    • addedInput schema / properties / payload / properties / analysis_timezone
      Added value: +{
      +  "description": "Optional IANA timezone, for example Africa/Nairobi, for the analysis calendar. Defaults to UTC; never inferred from country or IP. Date-only values keep their declared calendar day.",
      +  "type": "string"
      +}
    • changedInput schema / properties / payload / properties / evidence_items / items / properties / provenance_ledger / properties / source_locator / description
      Previous value: -"Redacted, reviewable document locator. Shared references count together."New value: +"Redacted document-specific locator, not the shared folder holding unrelated documents. Never invent a locator. Genuine shared upstream references count together."
    • changedInput schema / properties / payload / properties / evidence_items / items / properties / source_locator / description
      Previous value: -"Redacted, reviewable document locator. Shared references count together."New value: +"Redacted document-specific locator, not the shared folder holding unrelated documents. Never invent a locator. Genuine shared upstream references count together."
    • changedInput schema / properties / payload / properties / evidence_pack / items / properties / provenance_ledger / properties / source_locator / description
      Previous value: -"Redacted, reviewable document locator. Shared references count together."New value: +"Redacted document-specific locator, not the shared folder holding unrelated documents. Never invent a locator. Genuine shared upstream references count together."
    • changedInput schema / properties / payload / properties / evidence_pack / items / properties / source_locator / description
      Previous value: -"Redacted, reviewable document locator. Shared references count together."New value: +"Redacted document-specific locator, not the shared folder holding unrelated documents. Never invent a locator. Genuine shared upstream references count together."
  6. Changed11 schema fields changed
    • addedInput schema / properties / payload / properties / analysis_date
      Added value: +{
      +  "description": "Optional YYYY-MM-DD or ISO timestamp with timezone, no later than today; defaults to the server UTC date. Carried through the public handoff.",
      +  "type": "string"
      +}
    • addedInput schema / properties / payload / properties / context_freshness_window_days
      Added value: +{
      +  "description": "Optional caller-declared maximum evidence age in days. No universal freshness cutoff is invented when absent; age alone does not prove validity.",
      +  "minimum": 1,
      +  "type": "integer"
      +}
    • changedInput schema / properties / payload / properties / evidence_available / description
      Previous value: -"Optional context labels, not structured evidence and never counted as proof. Use evidence_pack for items."New value: +"Short optional context labels, not proof. For supplied document summaries use incomplete evidence_pack items instead; do not mark claims verified merely because a document exists."
    • addedInput schema / properties / payload / properties / evidence_items / items / properties / evidence_geography
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "city": {
      +      "description": "Declared source city.",
      +      "type": "string"
      +    },
      +    "country": {
      +      "description": "Declared source country, not the target country.",
      +      "type": "string"
      +    },
      +    "region": {
      +      "description": "Declared source region.",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / payload / properties / evidence_items / items / properties / freshness_date
      Added value: +{
      +  "description": "Compatibility alias for source_date; conflicting supplied dates require correction.",
      +  "type": "string"
      +}
    • changedInput schema / properties / payload / properties / evidence_items / items / properties / geography / description
      Previous value: -"Geography represented by this source. Public preflight does not verify geographic relevance."New value: +"Source country name/code or broader geographic description. Known country conflicts are flagged; local applicability is not authenticated."
    • changedInput schema / properties / payload / properties / evidence_items / items / properties / source_date / description
      Previous value: -"Source date, preferably YYYY-MM-DD. Public preflight does not assess freshness or date validity."New value: +"Declared source date, YYYY-MM-DD or ISO timestamp with timezone. Date validity and age can be checked; the source and current applicability remain unverified."
    • addedInput schema / properties / payload / properties / evidence_pack / items / properties / evidence_geography
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "city": {
      +      "description": "Declared source city.",
      +      "type": "string"
      +    },
      +    "country": {
      +      "description": "Declared source country, not the target country.",
      +      "type": "string"
      +    },
      +    "region": {
      +      "description": "Declared source region.",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / payload / properties / evidence_pack / items / properties / freshness_date
      Added value: +{
      +  "description": "Compatibility alias for source_date; conflicting supplied dates require correction.",
      +  "type": "string"
      +}
    • changedInput schema / properties / payload / properties / evidence_pack / items / properties / geography / description
      Previous value: -"Geography represented by this source. Public preflight does not verify geographic relevance."New value: +"Source country name/code or broader geographic description. Known country conflicts are flagged; local applicability is not authenticated."
    • changedInput schema / properties / payload / properties / evidence_pack / items / properties / source_date / description
      Previous value: -"Source date, preferably YYYY-MM-DD. Public preflight does not assess freshness or date validity."New value: +"Declared source date, YYYY-MM-DD or ISO timestamp with timezone. Date validity and age can be checked; the source and current applicability remain unverified."
  7. Changed5 schema fields changed
    • addedInput schema / properties / payload / properties / evidence_available
      Added value: +{
      +  "description": "Optional context labels, not structured evidence and never counted as proof. Use evidence_pack for items.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / payload / properties / evidence_items
      Added value: +{
      +  "description": "Alias for evidence_pack. Supply one field, not conflicting copies.",
      +  "items": {
      +    "additionalProperties": true,
      +    "description": "A caller-declared, consented and redacted evidence item. No required fields at intake: incomplete items receive correction feedback. Passing coverage never verifies truth, permission or readiness.",
      +    "properties": {
      +      "claim": {
      +        "description": "Minimal, non-confidential claim supported by the item; do not send raw private interviews.",
      +        "type": "string"
      +      },
      +      "evidence_origin": {
      +        "description": "Alias for source_class. Source-class precedence: source_class, evidence_origin, source_family, then evidence_type.",
      +        "type": "string"
      +      },
      +      "evidence_type": {
      +        "description": "What was collected, for example interview, field observation or licence record. Not merely the conclusion.",
      +        "type": "string"
      +      },
      +      "geography": {
      +        "description": "Geography represented by this source. Public preflight does not verify geographic relevance.",
      +        "type": "string"
      +      },
      +      "id": {
      +        "description": "Optional item identifier. Does not establish a distinct source.",
      +        "type": "string"
      +      },
      +      "is_load_bearing": {
      +        "description": "Compatibility alias for load_bearing.",
      +        "type": "boolean"
      +      },
      +      "load_bearing": {
      +        "description": "True if the target recommendation materially depends on this item.",
      +        "type": "boolean"
      +      },
      +      "parent_source_ids": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "provenance_ledger": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "parent_source_ids": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "source_doc_id": {
      +            "description": "Opaque source-document reference, not an evidence-item ID or personal identifier.",
      +            "type": "string"
      +          },
      +          "source_locator": {
      +            "description": "Redacted, reviewable document locator. Shared references count together.",
      +            "type": "string"
      +          },
      +          "source_url": {
      +            "description": "Source reference only; the sandbox does not fetch or authenticate it.",
      +            "type": "string"
      +          },
      +          "synthetic_fields": {
      +            "description": "Source-reference fields that were generated rather than observed; these do not establish lineage.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "upstream_source_ids": {
      +            "description": "Disclose shared upstream sources; distinct identifiers do not prove independence.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "source_class": {
      +        "description": "Origin label, for example entity_reported, regulator_published, structured_field_research, operational_data or counterparty_reference. Not a claim of independence.",
      +        "type": "string"
      +      },
      +      "source_date": {
      +        "description": "Source date, preferably YYYY-MM-DD. Public preflight does not assess freshness or date validity.",
      +        "type": "string"
      +      },
      +      "source_doc_id": {
      +        "description": "Opaque source-document reference, not an evidence-item ID or personal identifier.",
      +        "type": "string"
      +      },
      +      "source_family": {
      +        "description": "Compatibility origin label; source_class takes precedence.",
      +        "type": "string"
      +      },
      +      "source_grade": {
      +        "description": "Caller-supplied grade. Not a substitute for verification or source lineage.",
      +        "type": "string"
      +      },
      +      "source_hash": {
      +        "description": "Optional SHA-256 source hash, 64 hexadecimal characters; a hash does not authenticate its origin.",
      +        "type": "string"
      +      },
      +      "source_locator": {
      +        "description": "Redacted, reviewable document locator. Shared references count together.",
      +        "type": "string"
      +      },
      +      "source_url": {
      +        "description": "Source reference only; the sandbox does not fetch or authenticate it.",
      +        "type": "string"
      +      },
      +      "stakeholder_class": {
      +        "description": "Role represented, for example guardian, customer, supplier or partner. Do not submit a person identifier.",
      +        "type": "string"
      +      },
      +      "status": {
      +        "description": "Legacy alias for verification_status.",
      +        "type": "string"
      +      },
      +      "upstream_source_ids": {
      +        "description": "Disclose shared upstream sources; distinct identifiers do not prove independence.",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "verification_status": {
      +        "description": "Caller label. verified, independently_verified, corroborated, attested, confirmed and validated count for the structural prefilter only. self_attested, unverified, missing and other labels do not. Do not change labels without actually checking the source.",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / payload / properties / evidence_pack
      Added value: +{
      +  "description": "Full current evidence pack. Rechecks replace the pack; the server does not append or retrieve evidence.",
      +  "items": {
      +    "additionalProperties": true,
      +    "description": "A caller-declared, consented and redacted evidence item. No required fields at intake: incomplete items receive correction feedback. Passing coverage never verifies truth, permission or readiness.",
      +    "properties": {
      +      "claim": {
      +        "description": "Minimal, non-confidential claim supported by the item; do not send raw private interviews.",
      +        "type": "string"
      +      },
      +      "evidence_origin": {
      +        "description": "Alias for source_class. Source-class precedence: source_class, evidence_origin, source_family, then evidence_type.",
      +        "type": "string"
      +      },
      +      "evidence_type": {
      +        "description": "What was collected, for example interview, field observation or licence record. Not merely the conclusion.",
      +        "type": "string"
      +      },
      +      "geography": {
      +        "description": "Geography represented by this source. Public preflight does not verify geographic relevance.",
      +        "type": "string"
      +      },
      +      "id": {
      +        "description": "Optional item identifier. Does not establish a distinct source.",
      +        "type": "string"
      +      },
      +      "is_load_bearing": {
      +        "description": "Compatibility alias for load_bearing.",
      +        "type": "boolean"
      +      },
      +      "load_bearing": {
      +        "description": "True if the target recommendation materially depends on this item.",
      +        "type": "boolean"
      +      },
      +      "parent_source_ids": {
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "provenance_ledger": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "parent_source_ids": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "source_doc_id": {
      +            "description": "Opaque source-document reference, not an evidence-item ID or personal identifier.",
      +            "type": "string"
      +          },
      +          "source_locator": {
      +            "description": "Redacted, reviewable document locator. Shared references count together.",
      +            "type": "string"
      +          },
      +          "source_url": {
      +            "description": "Source reference only; the sandbox does not fetch or authenticate it.",
      +            "type": "string"
      +          },
      +          "synthetic_fields": {
      +            "description": "Source-reference fields that were generated rather than observed; these do not establish lineage.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "upstream_source_ids": {
      +            "description": "Disclose shared upstream sources; distinct identifiers do not prove independence.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "source_class": {
      +        "description": "Origin label, for example entity_reported, regulator_published, structured_field_research, operational_data or counterparty_reference. Not a claim of independence.",
      +        "type": "string"
      +      },
      +      "source_date": {
      +        "description": "Source date, preferably YYYY-MM-DD. Public preflight does not assess freshness or date validity.",
      +        "type": "string"
      +      },
      +      "source_doc_id": {
      +        "description": "Opaque source-document reference, not an evidence-item ID or personal identifier.",
      +        "type": "string"
      +      },
      +      "source_family": {
      +        "description": "Compatibility origin label; source_class takes precedence.",
      +        "type": "string"
      +      },
      +      "source_grade": {
      +        "description": "Caller-supplied grade. Not a substitute for verification or source lineage.",
      +        "type": "string"
      +      },
      +      "source_hash": {
      +        "description": "Optional SHA-256 source hash, 64 hexadecimal characters; a hash does not authenticate its origin.",
      +        "type": "string"
      +      },
      +      "source_locator": {
      +        "description": "Redacted, reviewable document locator. Shared references count together.",
      +        "type": "string"
      +      },
      +      "source_url": {
      +        "description": "Source reference only; the sandbox does not fetch or authenticate it.",
      +        "type": "string"
      +      },
      +      "stakeholder_class": {
      +        "description": "Role represented, for example guardian, customer, supplier or partner. Do not submit a person identifier.",
      +        "type": "string"
      +      },
      +      "status": {
      +        "description": "Legacy alias for verification_status.",
      +        "type": "string"
      +      },
      +      "upstream_source_ids": {
      +        "description": "Disclose shared upstream sources; distinct identifiers do not prove independence.",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": "array"
      +      },
      +      "verification_status": {
      +        "description": "Caller label. verified, independently_verified, corroborated, attested, confirmed and validated count for the structural prefilter only. self_attested, unverified, missing and other labels do not. Do not change labels without actually checking the source.",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / properties / payload / properties / stage
      Added value: +{
      +  "description": "Free-text venture stage, for example pre-MVP, pilot, grant-funded programme or scaling. No closed enum.",
      +  "type": "string"
      +}
    • changedOutput schema / properties / canonical_entity / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
  8. Changed1 schema field changed
    • addedOutput schema / properties / next_steps
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "automatic_action_authorized": {
      +      "const": false,
      +      "type": "boolean"
      +    },
      +    "boundary": {
      +      "type": "string"
      +    },
      +    "offer_registry": {
      +      "format": "uri",
      +      "type": "string"
      +    },
      +    "options": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "id": {
      +            "type": "string"
      +          },
      +          "label": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "format": "uri",
      +            "type": "string"
      +          },
      +          "when_to_use": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "label",
      +          "url",
      +          "when_to_use"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 3,
      +      "type": "array"
      +    },
      +    "purpose": {
      +      "const": "optional_routing_not_recommendation",
      +      "type": "string"
      +    },
      +    "schema_version": {
      +      "const": "mvr-optional-routing@1.0",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "schema_version",
      +    "purpose",
      +    "automatic_action_authorized",
      +    "boundary",
      +    "offer_registry",
      +    "options"
      +  ],
      +  "type": "object"
      +}
  9. Changed7 schema fields changed
    • addedOutput schema / properties / continuation_disposition
      Added value: +{
      +  "enum": [
      +    "call_now",
      +    "await_input",
      +    "terminal"
      +  ],
      +  "type": "string"
      +}
    • addedOutput schema / properties / mcp_next_call
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "null"
      +    },
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "arguments": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "payload": {
      +              "additionalProperties": true,
      +              "type": "object"
      +            }
      +          },
      +          "required": [
      +            "payload"
      +          ],
      +          "type": "object"
      +        },
      +        "name": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "name",
      +        "arguments"
      +      ],
      +      "type": "object"
      +    }
      +  ]
      +}
    • addedOutput schema / properties / mcp_next_tool
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "null"
      +    },
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "arguments": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "payload": {
      +              "additionalProperties": true,
      +              "type": "object"
      +            }
      +          },
      +          "required": [
      +            "payload"
      +          ],
      +          "type": "object"
      +        },
      +        "tool_name": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "tool_name",
      +        "arguments"
      +      ],
      +      "type": "object"
      +    }
      +  ]
      +}
    • addedOutput schema / properties / required_user_inputs
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / workflow_expires_at
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / workflow_id
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / workflow_status
      Added value: +{
      +  "type": "string"
      +}
  10. Changed2 schema fields changed
    • addedOutput schema / properties / mvr_response_receipt / properties / mcp_protocol_versions
      Added value: +{
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • changedOutput schema / properties / mvr_response_receipt / required
      Previous value: -[
      -  "receipt_schema_version",
      -  "mcp_tool",
      -  "core_api_version",
      -  "mcp_contract_version",
      -  "tool_profile_version",
      -  "sdk_version",
      -  "policy_version",
      -  "calibration_version",
      -  "deployment_revision",
      -  "host_recipe_version",
      -  "authority_boundary"
      -]New value: +[
      +  "receipt_schema_version",
      +  "mcp_tool",
      +  "core_api_version",
      +  "mcp_protocol_versions",
      +  "mcp_contract_version",
      +  "tool_profile_version",
      +  "sdk_version",
      +  "policy_version",
      +  "calibration_version",
      +  "deployment_revision",
      +  "host_recipe_version",
      +  "authority_boundary"
      +]
  11. Changed1 schema field changed
    • addedOutput schema / properties / mvr_response_receipt
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "authority_boundary": {
      +      "type": "string"
      +    },
      +    "calibration_version": {
      +      "type": "string"
      +    },
      +    "core_api_version": {
      +      "type": "string"
      +    },
      +    "deployment_revision": {
      +      "type": "string"
      +    },
      +    "host_recipe_version": {
      +      "type": "string"
      +    },
      +    "mcp_contract_version": {
      +      "type": "string"
      +    },
      +    "mcp_tool": {
      +      "type": "string"
      +    },
      +    "policy_version": {
      +      "type": "string"
      +    },
      +    "receipt_schema_version": {
      +      "type": "string"
      +    },
      +    "sdk_version": {
      +      "type": "string"
      +    },
      +    "tool_profile_version": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "receipt_schema_version",
      +    "mcp_tool",
      +    "core_api_version",
      +    "mcp_contract_version",
      +    "tool_profile_version",
      +    "sdk_version",
      +    "policy_version",
      +    "calibration_version",
      +    "deployment_revision",
      +    "host_recipe_version",
      +    "authority_boundary"
      +  ],
      +  "type": "object"
      +}
  12. Changed3 schema fields changed
    • changedInput schema / properties / payload / description
      Previous value: -"Entity-resolution request body."New value: +"Entity and market context to canonicalize before evidence assessment."
    • addedInput schema / properties / payload / minProperties
      Added value: +1
    • addedInput schema / properties / payload / properties
      Added value: +{
      +  "country": {
      +    "description": "ISO country code or country name when known.",
      +    "type": "string"
      +  },
      +  "entity_archetype": {
      +    "description": "Known MVR archetype, if already identified.",
      +    "type": "string"
      +  },
      +  "entity_name": {
      +    "description": "Venture, company, market actor, or hypothetical entity name.",
      +    "type": "string"
      +  },
      +  "market_scope": {
      +    "additionalProperties": true,
      +    "description": "Target geography for the proposed decision.",
      +    "properties": {
      +      "city": {
      +        "type": "string"
      +      },
      +      "corridor": {
      +        "type": "string"
      +      },
      +      "country": {
      +        "type": "string"
      +      },
      +      "region": {
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "organization_type": {
      +    "description": "Founder, SME, corporate, investor, institution, or other operator type when relevant.",
      +    "type": "string"
      +  },
      +  "query": {
      +    "description": "Free-text entity description when no stable name exists.",
      +    "type": "string"
      +  },
      +  "sector": {
      +    "description": "Sector or operating category when known.",
      +    "type": "string"
      +  }
      +}
  13. Changed1 schema field changed
    • removedInput schema / properties / api_key
      Removed value: -{
      -  "type": "string"
      -}
  14. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "properties": {
      +    "canonical_entity": {
      +      "type": "object"
      +    },
      +    "response_meta": {
      +      "type": "object"
      +    },
      +    "status": {
      +      "type": "string"
      +    },
      +    "warning": {
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  15. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint true, destructiveHint false, openWorldHint false). The description adds real behavioral context beyond them: an explicit prohibition on secrets, personal identifiers, raw private interviews and confidential evidence, plus the note that a supplied hash or locator does not authenticate origin. It could say more about what the resolution returns, but with annotations carrying safety this is solid.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

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

The usage guidance is front-loaded and useful, but the paragraph duplicates itself ('Use when ...' followed by 'Use when: Use immediately after mvr_first_call ...') and the tail-end field list re-enumerates schema properties, which wastes space against a schema that already carries that detail.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return-value explanation is not owed. The description covers ordering relative to mvr_first_call, the exclusion of readiness verdicts, privacy constraints, and evidence format requirements, leaving little an agent needs beyond the schema. Only the resolution result itself is unaddressed.

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?

Schema description coverage is effectively 100% and every nested field is richly documented, so 3 is the baseline. The description's trailing 'String fields: id, claim, evidence_type...' list and date-format guidance largely restate what the schema already declares, adding little new meaning.

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 opening sentence states a specific verb (resolve) and resource (startup, venture, company, market actor) and names the exact output of resolution: country, sector, and archetype. It also distinguishes itself from siblings by placing the action before relational-readiness evidence is assessed and after mvr_first_call, so an agent can route 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.

Usage Guidelines5/5

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

Explicit 'Use when' and 'Do not use when' clauses are present, with a named sibling trigger ('immediately after mvr_first_call') and a named sibling exclusion ('not a readiness verdict'). The alternative conditions are stated rather than implied.

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.