Skip to main content
Glama

tovrek.resolve_current_state

Read-only

Pre-action evidence gate for Crossref records whose record type is standard: determine what the currently available technical/industry-standard DOI metadata supports before an autonomous system cites, stores, publishes, ingests, or otherwise acts, while preserving provenance, conflicts, unresolved evidence, and explicit UNKNOWN. Use when a downstream action depends on a supported metadata fact for a Crossref standard-type DOI record and the record may be stale, incomplete, conflicting, or insufficient; when publication status, supersession, revision, adoption, approval date, designator, standards-body metadata, title, DOI, edition, or metadata surface must be checked before action; or when provenance and explicit UNKNOWN handling matter. Do not use for ordinary journal articles, citation validation, retraction checking, scholarly literature verification, or general multi-provider DOI resolution. Also do not use when raw Crossref metadata alone is sufficient, or to establish scientific truth, claim validity, legal or regulatory authority, open-ended literature search, historical reconstruction, unsupported identifier families, general fact verification, or mutation.

Input Schema

NameRequiredDescriptionDefault
as_ofNoOptional ISO-8601 date/timestamp. Omission is carried as a separate flag so the runtime may use the current materialised observation.
entityYesExact Crossref standard-type DOI source identifier, for example crossref:doi:<DOI>. Ordinary journal-article DOI records are outside the current capability.
contextYesExact supported technical-standard metadata fact predicate whose current evidence-supported state must be checked. See the capability beacon supported_scope.predicates list.

Output Schema

NameRequiredDescriptionDefault
resultNoEvidence-backed resolver result preserving provenance, conflicts, unresolved evidence and explicit UNKNOWN.
retryableNo
error_codeNo
profile_idYes
reason_codeNo
capability_idYes
admission_kindNoInternal cost-bearing admission category; not a customer payment or charge.
correlation_idYes
schema_versionYes
required_actionNo
resolver_versionYes
transport_versionYes
capability_versionYes
customer_charge_statusNoThe free-machine profile does not charge the caller for this invocation.
resolver_schema_versionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedOutput schema / properties / admission_kind / description
      Added value: +"Internal cost-bearing admission category; not a customer payment or charge."
    • addedOutput schema / properties / customer_charge_status
      Added value: +{
      +  "const": "NO_CUSTOMER_CHARGE_FREE_PROFILE",
      +  "description": "The free-machine profile does not charge the caller for this invocation.",
      +  "type": "string"
      +}
  2. Changed2 schema fields changed
    • changedInput schema / properties / context / description
      Previous value: -"Exact supported DOI metadata fact predicate whose current evidence-supported state must be checked."New value: +"Exact supported technical-standard metadata fact predicate whose current evidence-supported state must be checked. See the capability beacon supported_scope.predicates list."
    • changedInput schema / properties / entity / description
      Previous value: -"Exact supported DOI source identifier, for example crossref:doi:<DOI>."New value: +"Exact Crossref standard-type DOI source identifier, for example crossref:doi:<DOI>. Ordinary journal-article DOI records are outside the current capability."
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": true,
      +  "anyOf": [
      +    {
      +      "required": [
      +        "admission_kind",
      +        "result"
      +      ]
      +    },
      +    {
      +      "required": [
      +        "error_code",
      +        "retryable"
      +      ]
      +    }
      +  ],
      +  "description": "Structured TOVREK Current-State Resolver response. Successful calls contain admission_kind and result; bounded failures contain error_code and retryable.",
      +  "properties": {
      +    "admission_kind": {
      +      "type": "string"
      +    },
      +    "capability_id": {
      +      "type": "string"
      +    },
      +    "capability_version": {
      +      "type": "string"
      +    },
      +    "correlation_id": {
      +      "type": "string"
      +    },
      +    "error_code": {
      +      "type": "string"
      +    },
      +    "profile_id": {
      +      "type": "string"
      +    },
      +    "reason_code": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "required_action": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "resolver_schema_version": {
      +      "type": "string"
      +    },
      +    "resolver_version": {
      +      "type": "string"
      +    },
      +    "result": {
      +      "description": "Evidence-backed resolver result preserving provenance, conflicts, unresolved evidence and explicit UNKNOWN.",
      +      "type": "object"
      +    },
      +    "retryable": {
      +      "type": "boolean"
      +    },
      +    "schema_version": {
      +      "type": "string"
      +    },
      +    "transport_version": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "schema_version",
      +    "profile_id",
      +    "capability_id",
      +    "capability_version",
      +    "resolver_schema_version",
      +    "resolver_version",
      +    "transport_version",
      +    "correlation_id"
      +  ],
      +  "type": "object"
      +}
  4. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations cover read-only and open-world hints, so the safety profile is established structurally. The description adds behavioral context beyond that: it preserves provenance, conflicts, unresolved evidence, and explicit UNKNOWN, and emphasizes pre-action evidence gating. It does not disclose rate limits, latency, or error behavior, but for a read-only resolver that is minor.

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

Conciseness2/5

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

The description is a single ~200-word sentence padded with enumerations and an exhaustive exclusion list. The core purpose and usage conditions are buried rather than front-loaded, and the structure forces the reader to parse one run-on clause chain to find them.

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?

An output schema exists, so return values need not be explained. The description covers scope, when/when-not, and behavior (provenance, UNKNOWN handling) sufficiently for an agent to decide and invoke correctly. The verbose phrasing is a readability problem rather than an information gap.

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 100%, so entity, context, and as_of are fully documented in the schema, including the crossref:doi:<DOI> format and the guidance to consult supported_scope.predicates. The description adds no parameter-level detail beyond that, so baseline 3 applies.

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-plus-resource: resolving current evidence-supported state for Crossref standard-type DOI records as a pre-action gate. It names concrete facets (publication status, supersession, designator, edition) that identify the resource precisely. It lacks sibling differentiation, but no siblings exist to confuse it with.

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 when-to-use conditions are given (downstream action depends on a supported metadata fact, record may be stale/conflicting/insufficient) alongside an extensive when-not list (journal articles, citation validation, retraction checking, raw Crossref sufficiency, scientific truth, unsupported identifier families, mutation). Nothing is left to inference.

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