Skip to main content
Glama

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.

Input Schema

TableJSON 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".
preimageNoL402 32-byte hex preimage; also send Authorization: L402 <server-issued macaroon>:<preimage>. Constraints: pattern: ^[0-9a-fA-F]{64}$. 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

TableJSON 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.
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"].

Schema Changelog

Changes observed during successful MCP inspections.

  1. 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
      +]
  2. Added

TDQS

A4.7/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false, idempotentHint=false, destructiveHint=false, so the safety profile is partially covered. The description adds meaningful context beyond them: macaroons and Lightning invoices are issued dynamically via HTTP 402 challenges with bounded expiration, and admin operations are intentionally omitted. It does not fully state idempotency behavior of settle, so it stops short of 5.

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 dense sentences, each earning its place: the first defines both modes, the second routes usage, the third covers the 402/auth mechanics. Front-loaded with the action semantics.

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

Completeness5/5

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

Output schema exists so return values need not be described. The description covers both action branches, the required credential flow via HTTP headers, and the intentional omission of admin operations. Nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds real semantic value by explaining the settle-mode parameter combination ('a payment hash and either an L402 preimage or Base transaction hash'), which the flat schema lists as separate fields without that relational context.

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+resource with a dual mode: query MCP pricing parameters or verify authenticated settlement. The action values and their distinct purposes are named explicitly, so an agent can tell this apart from siblings like proof.verify or mesh.get_status 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?

Gives explicit when-to-use for each mode: 'Use query for price discovery before calling paid tools; use settle to check payment status, not to issue an invoice.' It also names an exclusion (admin operations omitted) and clarifies that this tool does not issue invoices.

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