Skip to main content
Glama

invoice_report_analysis_payment

Idempotent

Hand the analysis payment transaction to the server once it is mined. The server reads it on-chain: a direct USDC transfer (the USDC of the invoice network) from the invoice creator to the Vurto fee wallet, of at least analysis.amount, newer than the invoice, never used for another analysis or invoice. screening_blocked (403): the free screening rejects the receiving wallet or the creator, and the payment is not registered. analysis_payment_pending (409): not mined yet, call again in a few seconds. analysis_payment_rejected (400) with details.reason (wrong_token, wrong_destination, amount_too_low, sender_not_creator, not_a_transfer, tx_reverted, tx_before_invoice): that transaction does not pay this analysis. tx_already_used (409): the hash already paid something else. Once paid, analysis.status is paid and the invoice can be paid. On Solana (new model) pass payer too: the transaction must be signed by that payer and only the fee wallet may gain USDC in it (the split payment of an invoice never pays it, usdc_to_other_wallet); once paid the receiver analysis runs right away and receiverAnalysis.result comes back (verdict and the paid tools, never the receiving wallet).

Input Schema

NameRequiredDescriptionDefault
idYesINV-XXXX-XXXX or the 8-character id.
payerNoSolana (new model): the paying wallet that bought the receiver analysis.
txHashYesEVM transaction hash, or the Solana signature, of the analysis payment.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior5/5

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

The description adds substantial behavioral context beyond the annotations: on-chain verification rules, screening behavior, pending and rejected states, specific rejection reasons, tx_already_used handling, and Solana payer constraints. It is consistent with the annotations and gives the agent a rich picture of what happens on success and failure.

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?

The core action is front-loaded and the dense error-code details are relevant to correct invocation. The single-paragraph format is somewhat run-on, but most sentences carry useful operational information.

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?

For a complex payment-reporting tool with no output schema, the description covers success behavior, retry conditions, error codes, Solana-specific requirements, and the receiver analysis result. It gives enough context for an agent to call and interpret the tool correctly.

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 meaningful semantics for txHash and especially payer on Solana, including the requirement that the transaction be signed by that payer. It does not add much beyond the schema for id, but overall it improves parameter understanding.

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 action and resource: reporting an analysis payment transaction to the server after it is mined, with on-chain verification details. It is clear what the tool does, but it does not explicitly distinguish itself from sibling tools such as invoice_analysis_pay or invoice_report_payment.

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?

It clearly says to call once the transaction is mined and to retry after a few seconds when the payment is pending. It also explains error conditions, but it does not explicitly name when to use this tool versus related siblings like invoice_analysis_pay.

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