Skip to main content
Glama

close_card

Destructive

Permanently close a virtual card. This is irreversible — the card cannot be reopened. Safe to call on an already-closed card (idempotent). The user's rewards card (the card their tokenback redeems onto) is close-protected: closing it returns its balance to the wallet but retires the card number the user may have on file at AI labs, so it requires confirm_rewards_card — set it ONLY after the user explicitly confirms they want the rewards card closed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
card_idYesThe card ID to close
approval_idNoApproval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is emailed an approve link), then retry with it.
confirm_rewards_cardNoRequired to close the rewards card. Only set after the user explicitly confirms; never set it preemptively.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
cardIdNoThe ID of the card that was closed.
statusNoOutcome discriminator; always "closed" on success.
messageYesHuman-readable confirmation that the card was closed.
approvalIdNoPresent when status is approval_required: pass it back as approval_id after the user approves.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed2 schema fields changed
    • removedInput schema / approval_id
      Removed value: -{
      -  "description": "Approval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is emailed an approve link), then retry with it.",
      -  "type": "string"
      -}
    • addedInput schema / properties / approval_id
      Added value: +{
      +  "description": "Approval id from a prior approval_required response, once the user has approved. Only for cards created through ANOTHER app: first call without it (the user is emailed an approve link), then retry with it.",
      +  "type": "string"
      +}
  2. First observed

TDQS

A3.9/5.0
Behavior1/5

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

The description richly discloses irreversibility, idempotency, and rewards-card protection. However, it directly contradicts the annotation 'idempotentHint: false' by stating 'Safe to call on an already-closed card (idempotent)'. Per rule, any contradiction with annotations warrants a score of 1.

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 well-structured and front-loaded. The core purpose is stated first, followed by essential caveats, and every sentence delivers distinct, actionable information without redundancy.

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?

Given an output schema exists, the description comprehensively covers the completion flow: irreversibility, idempotent call behavior, rewards-card additional confirmation, and the approval workflow. All three parameters are addressed in sufficient operational detail.

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?

The schema already covers all parameters (100% coverage), providing the baseline of 3. The description adds significant value by explaining the two-phase approval_id workflow and the strict condition for setting confirm_rewards_card, both of which are not inferable from the schema alone.

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?

Starts with a specific verb and resource, 'Permanently close a virtual card', and makes the irreversible nature explicit. This clearly differentiates the tool from siblings like pause_card and resume_card, and the rewards-card caveat adds additional specificity without ambiguity.

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?

Clearly conveys this is the permanent closure tool, and gives detailed usage context for approval_id and confirm_rewards_card. However, it does not explicitly name alternative siblings (e.g., pause_card) for non-permanent actions, leaving that connection to inference.

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

A3.9/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, especially in areas like card management and shopping. However, the KYC flow has multiple overlapping tools (start_kyc, get_kyc_status, check_kyc_document, submit_kyc_document, submit_kyc_fields) that could confuse an agent despite detailed descriptions.

Naming Consistency4/5

Tool names consistently use snake_case with a verb_noun pattern (e.g., add_funds, create_card, list_cards). A few exceptions like surprise_me and whoami break the pattern but are still intuitive overall.

Tool Count3/5

50 tools is on the high side for a single server, but the broad domain (cards, shopping, KYC, support, settings) partially justifies it. Some tools could be merged (e.g., KYC flow tools) without losing clarity.

Completeness4/5

The tool surface covers core workflows: CRUD for cards, transactions, KYC, support, shopping, and account management. Minor gaps exist (e.g., no update_card general, no cancel order in shopping), but overall the set is comprehensive for the stated purpose.

Resources