Skip to main content
Glama

Bitcoin Stratigraphy Enterprise Data Engine & Agent Notary Hub

Query MCP Prices or Verify Payment Settlement

payment.get_info

Query MCP pricing parameters (action='query', the default) or verify authenticated settlement (action='settle' with a payment hash and either an L402 preimage or Base transaction hash). Use query for price discovery before calling paid tools; use settle to check payment status, not to issue an invoice. Macaroons and Lightning invoices are issued dynamically via HTTP 402 challenges with bounded expiration; operator-only admin operations are intentionally omitted. Live L402 Satoshi settlement: a configured NWC wallet issues the exact-priced Lightning invoice; paid execution requires confirmed incoming settlement and an invoice-bound payment proof. Handle HTTP 402, pay explicitly, then retry the identical request with Authorization: L402 :. Invoice creation alone is not payment; unavailable verification does not authorize execution.

Input Schema

NameRequiredDescriptionDefault
actionNoquery (default) discovers prices; settle verifies authenticated payment. Constraints: allowed values: query, settle. Example: "query".query
txHashNoBase mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: "0xabababababababababababababababababababababababababababababababab".
preimageNoOptional L402 preimage, NWC_LOOKUP, or UUID hint; the issued macaroon and exact merchant settlement remain required. Constraints: pattern: ^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$. Example: "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd".
toolNameNoOptional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: "stratigraphy.get_digest".
paymentHashNoL402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: "abababababababababababababababababababababababababababababababab".
paymentMacaroonNoOriginal invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ".

Output Schema

NameRequiredDescriptionDefault
x402NoBase mainnet USDC x402 exact terms; present only when authenticated CDP settlement is configured.
verifiedNoWhether the signed, server-bound payment was verified or settled. Example: true.
challengeNoHTTP payment challenge and response fields.
perToolSatsNoCurrent advertised canonical tool prices in sats; optional toolName narrows this map.
settlementTokenNoVerified payment claims, not a bearer token or a grant of tool access.
activeAuthSchemesNoAuthentication schemes for paid MCP calls. Only stratigraphy.list and proof.list execute free. Example: ["L402"].
standardInvoiceSatsNoStandard paid MCP execution price. Catalog and status lookups may cost less; free tools cost zero. Example: 250.
wholesaleSubVendingNoWholesale purchase and delegated redemption capability metadata.
invoiceExpirySecondsNoDefault expiry for both the issued Lightning invoice and its path-bound macaroon. Constraints: minimum: 1. Example: 3600.
macaroonRequirementsNoA valid payment proof must match the bound invoice, provider, amount, path, expiry and request quota. proof.attenuate requires payment and a valid parent token.
acceptedPaymentMethodsNoSupported MCP payment method. Example: ["Lightning L402"].
agentSolvencyAttestationNoIssuer-signed historical settlement and live revocation telemetry for the queried pubkey.
upstreamVerificationAllocationsNoDurable allocation count and integer-millisatoshi totals for upstream verification allocation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedOutput schema / properties / agentSolvencyAttestation
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "Issuer-signed historical settlement and live revocation telemetry for the queried pubkey.",
      +  "examples": [
      +    {
      +      "revoked": false,
      +      "settled_volume_sats": "0",
      +      "solvency_tier": "UNRATED",
      +      "verified_executions": 0
      +    }
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / upstreamVerificationAllocations
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "Durable allocation count and integer-millisatoshi totals for upstream verification allocation.",
      +  "examples": [
      +    {
      +      "allocations": 0,
      +      "caller_msats": "0",
      +      "upstream_msats": "0"
      +    }
      +  ],
      +  "type": "object"
      +}
    • addedOutput schema / properties / wholesaleSubVending
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "Wholesale purchase and delegated redemption capability metadata.",
      +  "examples": [
      +    {
      +      "attenuationTool": "proof.attenuate",
      +      "batchSize": 100,
      +      "supported": true
      +    }
      +  ],
      +  "type": "object"
      +}
  2. Changed3 schema fields changed
    • changedInput schema / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "action": {
      -        "const": "query",
      -        "default": "query",
      -        "description": "Pricing query (default). Example: \"query\".",
      -        "example": "query",
      -        "examples": [
      -          "query"
      -        ],
      -        "type": "string"
      -      },
      -      "toolName": {
      -        "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".",
      -        "example": "stratigraphy.get_digest",
      -        "examples": [
      -          "stratigraphy.get_digest"
      -        ],
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.",
      -    "examples": [
      -      {
      -        "paymentHash": "abababababababababababababababababababababababababababababababab",
      -        "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      -      },
      -      {
      -        "paymentHash": "0xabababababababababababababababababababababababababababababababab",
      -        "txHash": "0xabababababababababababababababababababababababababababababababab"
      -      }
      -    ],
      -    "oneOf": [
      -      {
      -        "required": [
      -          "preimage"
      -        ]
      -      },
      -      {
      -        "required": [
      -          "txHash"
      -        ]
      -      }
      -    ],
      -    "properties": {
      -      "action": {
      -        "const": "settle",
      -        "description": "Verify or execute payment settlement. Example: \"settle\".",
      -        "example": "settle",
      -        "examples": [
      -          "settle"
      -        ],
      -        "type": "string"
      -      },
      -      "paymentHash": {
      -        "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".",
      -        "example": "abababababababababababababababababababababababababababababababab",
      -        "examples": [
      -          "abababababababababababababababababababababababababababababababab"
      -        ],
      -        "pattern": "^(0x)?[0-9a-fA-F]{64}$",
      -        "type": "string"
      -      },
      -      "paymentMacaroon": {
      -        "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".",
      -        "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ",
      -        "examples": [
      -          "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ"
      -        ],
      -        "maxLength": 8192,
      -        "minLength": 1,
      -        "type": "string"
      -      },
      -      "preimage": {
      -        "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".",
      -        "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd",
      -        "examples": [
      -          "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      -        ],
      -        "pattern": "^[0-9a-fA-F]{64}$",
      -        "type": "string"
      -      },
      -      "txHash": {
      -        "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".",
      -        "example": "0xabababababababababababababababababababababababababababababababab",
      -        "examples": [
      -          "0xabababababababababababababababababababababababababababababababab"
      -        ],
      -        "pattern": "^0x[0-9a-fA-F]{64}$",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "action",
      -      "paymentHash"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "action": {
      +        "const": "query",
      +        "default": "query",
      +        "description": "Pricing query (default). Example: \"query\".",
      +        "example": "query",
      +        "examples": [
      +          "query"
      +        ],
      +        "type": "string"
      +      },
      +      "toolName": {
      +        "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".",
      +        "example": "stratigraphy.get_digest",
      +        "examples": [
      +          "stratigraphy.get_digest"
      +        ],
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "description": "Payment identifier and optional Lightning proof; retain the issued L402 macaroon for merchant verification. Base settlement requires a transaction hash and matching x402 credential.",
      +    "examples": [
      +      {
      +        "paymentHash": "abababababababababababababababababababababababababababababababab",
      +        "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      +      },
      +      {
      +        "paymentHash": "0xabababababababababababababababababababababababababababababababab",
      +        "txHash": "0xabababababababababababababababababababababababababababababababab"
      +      }
      +    ],
      +    "not": {
      +      "required": [
      +        "preimage",
      +        "txHash"
      +      ]
      +    },
      +    "properties": {
      +      "action": {
      +        "const": "settle",
      +        "description": "Verify or execute payment settlement. Example: \"settle\".",
      +        "example": "settle",
      +        "examples": [
      +          "settle"
      +        ],
      +        "type": "string"
      +      },
      +      "paymentHash": {
      +        "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".",
      +        "example": "abababababababababababababababababababababababababababababababab",
      +        "examples": [
      +          "abababababababababababababababababababababababababababababababab"
      +        ],
      +        "pattern": "^(0x)?[0-9a-fA-F]{64}$",
      +        "type": "string"
      +      },
      +      "paymentMacaroon": {
      +        "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".",
      +        "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ",
      +        "examples": [
      +          "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ"
      +        ],
      +        "maxLength": 8192,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "preimage": {
      +        "description": "Optional L402 preimage, NWC_LOOKUP, or UUID hint; the issued macaroon and exact merchant settlement remain required. Constraints: pattern: ^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".",
      +        "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd",
      +        "examples": [
      +          "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      +        ],
      +        "pattern": "^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$",
      +        "type": "string"
      +      },
      +      "txHash": {
      +        "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".",
      +        "example": "0xabababababababababababababababababababababababababababababababab",
      +        "examples": [
      +          "0xabababababababababababababababababababababababababababababababab"
      +        ],
      +        "pattern": "^0x[0-9a-fA-F]{64}$",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "action",
      +      "paymentHash"
      +    ],
      +    "type": "object"
      +  }
      +]
    • changedInput schema / properties / preimage / description
      Previous value: -"L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\"."New value: +"Optional L402 preimage, NWC_LOOKUP, or UUID hint; the issued macaroon and exact merchant settlement remain required. Constraints: pattern: ^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\"."
    • changedInput schema / properties / preimage / pattern
      Previous value: -"^[0-9a-fA-F]{64}$"New value: +"^([0-9a-fA-F]{64}|[0-9a-fA-F]{8}(-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}|NWC_LOOKUP|nwc_lookup)$"
  3. Changed8 schema fields changed
    • changedInput schema / oneOf
      Previous value: -[
      -  {
      -    "additionalProperties": false,
      -    "properties": {
      -      "action": {
      -        "const": "query",
      -        "default": "query",
      -        "description": "Pricing query (default). Example: \"query\".",
      -        "example": "query",
      -        "examples": [
      -          "query"
      -        ],
      -        "type": "string"
      -      },
      -      "toolName": {
      -        "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".",
      -        "example": "stratigraphy.get_digest",
      -        "examples": [
      -          "stratigraphy.get_digest"
      -        ],
      -        "minLength": 1,
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "additionalProperties": false,
      -    "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.",
      -    "examples": [
      -      {
      -        "paymentHash": "abababababababababababababababababababababababababababababababab",
      -        "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      -      },
      -      {
      -        "paymentHash": "0xabababababababababababababababababababababababababababababababab",
      -        "txHash": "0xabababababababababababababababababababababababababababababababab"
      -      }
      -    ],
      -    "oneOf": [
      -      {
      -        "required": [
      -          "preimage"
      -        ]
      -      },
      -      {
      -        "required": [
      -          "txHash"
      -        ]
      -      }
      -    ],
      -    "properties": {
      -      "action": {
      -        "const": "settle",
      -        "description": "Verify or execute payment settlement. Example: \"settle\".",
      -        "example": "settle",
      -        "examples": [
      -          "settle"
      -        ],
      -        "type": "string"
      -      },
      -      "paymentHash": {
      -        "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".",
      -        "example": "abababababababababababababababababababababababababababababababab",
      -        "examples": [
      -          "abababababababababababababababababababababababababababababababab"
      -        ],
      -        "pattern": "^(0x)?[0-9a-fA-F]{64}$",
      -        "type": "string"
      -      },
      -      "preimage": {
      -        "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".",
      -        "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd",
      -        "examples": [
      -          "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      -        ],
      -        "pattern": "^[0-9a-fA-F]{64}$",
      -        "type": "string"
      -      },
      -      "txHash": {
      -        "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".",
      -        "example": "0xabababababababababababababababababababababababababababababababab",
      -        "examples": [
      -          "0xabababababababababababababababababababababababababababababababab"
      -        ],
      -        "pattern": "^0x[0-9a-fA-F]{64}$",
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "action",
      -      "paymentHash"
      -    ],
      -    "type": "object"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": false,
      +    "properties": {
      +      "action": {
      +        "const": "query",
      +        "default": "query",
      +        "description": "Pricing query (default). Example: \"query\".",
      +        "example": "query",
      +        "examples": [
      +          "query"
      +        ],
      +        "type": "string"
      +      },
      +      "toolName": {
      +        "description": "Optional case-sensitive canonical MCP tool identifier (e.g., 'stratigraphy.get_digest' or 'proof.verify'); supported legacy aliases are also accepted and resolve to canonical names. When provided, filters output to return pricing specifically for that single tool. When omitted, returns the full pricing map across all registered catalog tools. Must match an exact registered tool name or supported legacy alias. Constraints: minLength: 1. Example: \"stratigraphy.get_digest\".",
      +        "example": "stratigraphy.get_digest",
      +        "examples": [
      +          "stratigraphy.get_digest"
      +        ],
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "additionalProperties": false,
      +    "description": "Payment identifier and one payment proof; the matching signed L402 or x402 credential must be supplied in HTTP headers.",
      +    "examples": [
      +      {
      +        "paymentHash": "abababababababababababababababababababababababababababababababab",
      +        "preimage": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      +      },
      +      {
      +        "paymentHash": "0xabababababababababababababababababababababababababababababababab",
      +        "txHash": "0xabababababababababababababababababababababababababababababababab"
      +      }
      +    ],
      +    "oneOf": [
      +      {
      +        "required": [
      +          "preimage"
      +        ]
      +      },
      +      {
      +        "required": [
      +          "txHash"
      +        ]
      +      }
      +    ],
      +    "properties": {
      +      "action": {
      +        "const": "settle",
      +        "description": "Verify or execute payment settlement. Example: \"settle\".",
      +        "example": "settle",
      +        "examples": [
      +          "settle"
      +        ],
      +        "type": "string"
      +      },
      +      "paymentHash": {
      +        "description": "L402 SHA-256 invoice hash, or Base tx hash when using x402. Constraints: pattern: ^(0x)?[0-9a-fA-F]{64}$. Example: \"abababababababababababababababababababababababababababababababab\".",
      +        "example": "abababababababababababababababababababababababababababababababab",
      +        "examples": [
      +          "abababababababababababababababababababababababababababababababab"
      +        ],
      +        "pattern": "^(0x)?[0-9a-fA-F]{64}$",
      +        "type": "string"
      +      },
      +      "paymentMacaroon": {
      +        "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".",
      +        "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ",
      +        "examples": [
      +          "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ"
      +        ],
      +        "maxLength": 8192,
      +        "minLength": 1,
      +        "type": "string"
      +      },
      +      "preimage": {
      +        "description": "L402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. Example: \"cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd\".",
      +        "example": "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd",
      +        "examples": [
      +          "cdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd"
      +        ],
      +        "pattern": "^[0-9a-fA-F]{64}$",
      +        "type": "string"
      +      },
      +      "txHash": {
      +        "description": "Base mainnet transaction hash, accepted only after facilitator settlement of PAYMENT-SIGNATURE. Constraints: pattern: ^0x[0-9a-fA-F]{64}$. Example: \"0xabababababababababababababababababababababababababababababababab\".",
      +        "example": "0xabababababababababababababababababababababababababababababababab",
      +        "examples": [
      +          "0xabababababababababababababababababababababababababababababababab"
      +        ],
      +        "pattern": "^0x[0-9a-fA-F]{64}$",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "action",
      +      "paymentHash"
      +    ],
      +    "type": "object"
      +  }
      +]
    • addedInput schema / properties / paymentMacaroon
      Added value: +{
      +  "description": "Original invoice macaroon, separate from this tool's paid access credential. Constraints: minLength: 1; maxLength: 8192. Example: \"eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ\".",
      +  "example": "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ",
      +  "examples": [
      +    "eyJtYWNhcm9vbiI6ImV4YW1wbGUifQ"
      +  ],
      +  "maxLength": 8192,
      +  "minLength": 1,
      +  "type": "string"
      +}
    • changedOutput schema / properties / activeAuthSchemes / description
      Previous value: -"Authentication scheme for paid MCP calls; free discovery and payment.get_info require none. Example: [\"L402\"]."New value: +"Authentication schemes for paid MCP calls. Only stratigraphy.list and proof.list execute free. Example: [\"L402\"]."
    • changedOutput schema / properties / macaroonRequirements / description
      Previous value: -"A valid payment proof must match the bound invoice, provider, amount, path, expiry and single-use restriction. proof.attenuate is free but requires a valid parent token."New value: +"A valid payment proof must match the bound invoice, provider, amount, path, expiry and request quota. proof.attenuate requires payment and a valid parent token."
    • removedOutput schema / properties / macaroonRequirements / properties / maxRequests / const
      Removed value: -1
    • changedOutput schema / properties / macaroonRequirements / properties / maxRequests / description
      Previous value: -"Each issued paid-tool macaroon is single-use. Example: 1."New value: +"Default credentials allow one call; X-L402-Batch-Size: 100 buys a tool-scoped 100-call credential. Constraints: allowed values: 1, 100. Example: 1."
    • addedOutput schema / properties / macaroonRequirements / properties / maxRequests / enum
      Added value: +[
      +  1,
      +  100
      +]
    • changedOutput schema / properties / macaroonRequirements / properties / maxRequests / examples
      Previous value: -[
      -  1
      -]New value: +[
      +  1,
      +  100
      +]
  4. Added

TDQS

A4.5/5.0
Behavior4/5

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

Annotations (readOnlyHint=false, openWorldHint=true) already signal a non-read-only, external-facing operation, and the description adds real substance beyond that: dynamically issued macaroons/invoices with bounded expiration, a configured NWC wallet issuing exact-priced invoices, and the guardrail that 'invoice creation alone is not payment' and 'unavailable verification does not authorize execution.' It stops short of describing what state `settle` mutates on success (does it mark the invoice consumed?), which keeps it off a 5.

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 correctly: the two modes and their selecting parameters come first, with the mechanism/guardrail narrative after. The final two sentences are dense crypto-protocol prose that partly belongs to server-level auth docs rather than this tool, adding length without much selection value.

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 needn't be explained, and the description covers prerequisites, the preimage/txHash alternative, and the payment-proof precondition. What is left implicit is the outcome of a pending/late settlement and how macaroon issuance interacts with which credentials to store — minor for a tool whose response shape is documented.

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 baseline is 3; the description earns above baseline by compressing the oneOf into prose — settle requires a payment hash AND either an L402 preimage or a Base tx hash — which is the non-obvious coupling an agent could miss. It omits any mention of `toolName` filtering or `paymentMacaroon`, leaving those entirely to the schema.

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 first sentence names both concrete operations with their literal parameter values: query pricing (`action='query'`, the default) or verify settlement (`action='settle'` with payment hash plus preimage/txHash). No sibling tool in the list does pricing or settlement, so the tool is unambiguously separable from the proof/stratigraphy/mesh families.

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 routing for both modes: 'Use `query` for price discovery before calling paid tools; use `settle` to check payment status, not to issue an invoice.' That is a when-to-use plus an explicit when-not-to-use. It also gives the surrounding workflow (handle HTTP 402, pay, retry the identical request with `Authorization: L402`).

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