Skip to main content
Glama

XKEY Intake Validation

xkey.validate
Idempotent

PAID $0.10 USDC on Base via x402. Validates and normalizes one bounded XKEY intake payload. Calling this MCP tool returns the exact PAYMENT-REQUIRED challenge and does not spend funds.

Input Schema

NameRequiredDescriptionDefault
raw_intakeYesRaw intake text to validate and normalize; 2-100000 characters.
idempotency_keyYesUnique client-generated idempotency key; 8-160 ASCII characters.

Output Schema

NameRequiredDescriptionDefault
assetNo
errorNo
inputNo
priceNo
pay_toNo
statusNo
acceptsNo
networkNo
resourceNo
capabilityNo
extensionsNo
purchaseIdNo
instructionNo
x402VersionNo
entitlementIdNo
execution_urlNo
execution_modeNo
payment_requiredNo
payment_required_headerNo
settlement_expectationsNo
confirmation_expectationsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed30 schema fields changed
    • changedOutput schema / additionalProperties
      Previous value: -falseNew value: +true
    • addedOutput schema / properties / accepts
      Added value: +{
      +  "items": {
      +    "additionalProperties": true,
      +    "properties": {},
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / asset
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • removedOutput schema / properties / balance
      Removed value: -{}
    • addedOutput schema / properties / confirmation_expectations
      Added value: +{
      +  "type": "string"
      +}
    • removedOutput schema / properties / credits_charged
      Removed value: -{}
    • addedOutput schema / properties / entitlementId
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / error
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / execution_mode
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / execution_url
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / extensions
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {},
      +  "type": "object"
      +}
    • addedOutput schema / properties / input
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {},
      +  "type": "object"
      +}
    • addedOutput schema / properties / instruction
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / network
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • removedOutput schema / properties / normalized
      Removed value: -{}
    • addedOutput schema / properties / pay_to
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / payment_required
      Added value: +{
      +  "const": true,
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / payment_required_header
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / price
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / purchaseId
      Added value: +{
      +  "type": "string"
      +}
    • removedOutput schema / properties / receipt_id
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / request_hash
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • removedOutput schema / properties / reservation_id
      Removed value: -{
      -  "type": [
      -    "string",
      -    "null"
      -  ]
      -}
    • addedOutput schema / properties / resource
      Added value: +{
      +  "additionalProperties": true,
      +  "properties": {},
      +  "type": "object"
      +}
    • addedOutput schema / properties / settlement_expectations
      Added value: +{
      +  "type": "string"
      +}
    • removedOutput schema / properties / state
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / status
      Added value: +{
      +  "type": "string"
      +}
    • removedOutput schema / properties / success
      Removed value: -{
      -  "type": "boolean"
      -}
    • addedOutput schema / properties / x402Version
      Added value: +{
      +  "const": 2,
      +  "type": "number"
      +}
    • removedOutput schema / required
      Removed value: -[
      -  "capability",
      -  "state",
      -  "success"
      -]
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "balance": {},
      +    "capability": {
      +      "type": "string"
      +    },
      +    "credits_charged": {},
      +    "normalized": {},
      +    "receipt_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "request_hash": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "reservation_id": {
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "state": {
      +      "type": "string"
      +    },
      +    "success": {
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "capability",
      +    "state",
      +    "success"
      +  ],
      +  "type": "object"
      +}
  3. Added
  4. Removed
  5. Changed1 schema field changed
    • changedInput schema / properties / idempotency_key / description
      Previous value: -"Unique client-generated key for safe retry/deduplication; 8-160 ASCII characters. Reuse only when retrying the same intake."New value: +"Unique client-generated idempotency key; 8-160 ASCII characters."
  6. Changed1 schema field changed
    • changedInput schema / properties / idempotency_key / description
      Previous value: -"Unique client-generated key for safe retry/deduplication; 8-160 characters. Reuse only when retrying the same intake."New value: +"Unique client-generated key for safe retry/deduplication; 8-160 ASCII characters. Reuse only when retrying the same intake."
  7. Added

TDQS

A4.2/5.0
Behavior4/5

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

Annotations cover idempotency (idempotentHint=true), safety (destructiveHint=false), and openness, but say nothing about cost or payment mechanics. The description fills that gap by disclosing the $0.10 USDC price, the x402/Base rail, and that the initial call only emits a challenge without spending. It stops short of describing what happens on the paid call or whether failed validations incur cost.

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?

Three short sentences, with the cost and network front-loaded before the functional claim and the no-spend guarantee. Every sentence earns its place; nothing is restated from the schema.

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, and annotations carry the safety/idempotency profile. The description adds the payment-lifecycle context that structured fields omit. Minor remaining gap: no hint about the sequence after the challenge is paid or how errors surface.

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 both parameters (raw_intake, idempotency_key) are already fully documented with formats and bounds. The description's phrase 'one bounded XKEY intake payload' loosely echoes the size limit but adds no syntax or format detail beyond the schema. Baseline 3 is correct.

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 pair and a tightly bounded resource: 'Validates and normalizes one bounded XKEY intake payload.' Combined with the upfront price line, an agent immediately knows what this does and what it costs. No sibling tool covers XKEY intake validation, so disambiguation is effectively built into the specificity.

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?

Gives crucial operational context: the call returns a PAYMENT-REQUIRED challenge and does not spend funds, which tells the agent this is a safe pre-flight step in a paid flow. It does not, however, name any alternative or state a when-not condition (e.g., what to do after payment, or when to skip validation).

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.