Skip to main content
Glama

Lunium — Brazilian PIX and stablecoin payments

State of a PIX charge

lunium_get_pix_charge
Read-onlyIdempotent

Requires an API key. Returns the state of a charge created with lunium_create_pix_charge. States: pending (unpaid), under_review (PIX received, settlement in transit), paid (credited, crypto released), delayed, expired, refunded, failed.

delayed is the state that costs money when misread: the PIX WAS PAID and the provider is holding the release, commonly on a payer's first operation. The response carries delay_until and e_falha=false, and it becomes paid on its own. Do not tell the user the payment failed, do not create a second charge, do not ask them to pay again.

Use it only for charges you created. For any other PIX use lunium_verify_pix_payment. Poll at most every 10-15 seconds.

Errors: acao=esperar → back off, the charge is unaffected. acao=repetir → retry once. expired is terminal: create a new charge only after telling the user the old one is dead, and never while a previous one is pending or delayed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
charge_idYesCharge id returned by lunium_create_pix_charge.

TDQS

A4.7/5.0
Behavior5/5

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

Even though annotations already declare readOnlyHint=true and idempotentHint=true, the description adds substantial behavioral context beyond them. It details the meaning of each state, especially the costly 'delayed' state: the PIX was paid, release is being held, response carries delay_until and e_falha=false, and it auto-converts to paid. It also warns not to tell the user payment failed, not to create a second charge, and not to ask them to pay again. No contradiction with annotations.

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?

The description is longer than typical but every sentence earns its place: states are listed compactly, the delayed-state warning is critical and clearly highlighted, usage constraints are explicit, and error handling is summarized. It is structured into purposeful sections and front-loads the core purpose.

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?

With no output schema, the description carries the full burden of explaining what the tool returns and how to interpret it. It enumerates all states, explains the nuance of delayed, describes response fields (delay_until, e_falha=false), gives terminal behavior for expired, and specifies error actions. This is complete enough for an agent to invoke and interpret the tool correctly.

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 the schema already documents charge_id as 'Charge id returned by lunium_create_pix_charge.' The description reinforces that the charge must have been created by lunium_create_pix_charge, but it does not add new parameter-level details such as format, constraints, or examples. Baseline 3 is appropriate when the schema already covers the parameter.

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 description states a clear, specific operation: 'Returns the state of a charge created with lunium_create_pix_charge.' It identifies the resource (PIX charge), the action (get state), and the exact scope (charges created by the sibling tool), which cleanly distinguishes it from lunium_verify_pix_payment.

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?

The description gives explicit when-to-use guidance: 'Use it only for charges you created.' It names the alternative directly: 'For any other PIX use lunium_verify_pix_payment.' It also provides polling cadence ('Poll at most every 10-15 seconds') and describes error handling actions (acao=esperar/repetir), leaving little ambiguity about how to proceed.

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.

TDQS

A4.7/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: create vs verify PIX, quote vs confirm crypto sales, check limits, list options, and sandbox provisioning. The only potentially close pair (get_crypto_sale and verify_pix_payment) are explicitly disambiguated in descriptions, one for internal orders, the other for external verification.

Naming Consistency5/5

All tools follow a consistent `lunium_verb_noun` pattern in snake_case. Verbs are descriptive (check, create, get, list, quote, confirm, verify) and nouns clarify the resource. No mixed conventions or vague verbs.

Tool Count5/5

9 tools is well within the ideal 3-15 range. Each tool covers a distinct step in the payment flow (limits, quoting, confirming, status, verification, sandbox) without redundancy. The count feels justified for the server's scope.

Completeness4/5

The flow for both PIX charges and crypto sales is well covered: create, check limits, get status, quote, confirm, and retrieve receipts. The only notable gap is the absence of a list operation for past charges/sales, and no explicit cancel for a PIX charge, but the descriptions indicate these are handled via statuses and terminal states rather than dedicated tools. Overall, the surface is complete for the stated purpose.

Resources