Skip to main content
Glama
stables-money

Stables MCP Server

Official

validate_payment_method

Validate bank payout details against corridor rules before creating a transfer. Discover required fields for a currency to avoid rejected transfers and wasted quotes.

Instructions

Check bank payout details against the corridor's rules without creating anything. Use it before create_transfer to find out which fields a currency needs (beneficiary address, date of birth, bank codes), instead of spending a short-lived quote on a rejected transfer.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ibanNoIBAN (EU/international)
cnapsNoCNAPS (China)
payIdNoPayID alias (AUD only). Requires payIdType
bicCodeNoBIC (EUR/GBP international)
bsbCodeNoBSB code (Australia)
networkYesPayout network: local bank rails, SWIFT, or PayID (AUD)
quoteIdNoValidate against this quote's corridor
bankCodeNoBank code / institution number (CAD)
bankNameNoName of the destination bank
ifscCodeNoIFSC code (India)
sortCodeNoSort code (UK)
payIdTypeNoPayID alias type. Required when payId is given
swiftCodeNoSWIFT code
branchCodeNoBranch code / transit number (CAD)
accountTypeNoAccount type. Required for CAD and USD bank payouts
addressCityNoBeneficiary city
bankCountryNoBank country, ISO 2-letter (e.g. 'AU', 'US')
dateOfBirthNoBeneficiary date of birth, YYYY-MM-DD. Required when recipientType is individual for AED, CAD, EUR, GBP, MXN, USD
addressStateNoBeneficiary state or region
bankCurrencyNoPayout currency, ISO 3-letter (e.g. 'EUR')
accountNumberNoBank account number, if not using IBAN
addressStreetNoBeneficiary street address
recipientTypeNoBeneficiary type. Required for AED, CAD, EUR, GBP, MXN, USD
routingNumberNoABA routing number (US)
addressCountryNoBeneficiary country, ISO 2-letter. The complete address is required for AED, CAD, EUR, GBP, MXN, USD
accountHolderNameNoAccount holder's full name, or the company name when recipientType is business
addressPostalCodeNoBeneficiary postal code

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.4.0

TDQS

A4.4/5.0
Behavior4/5

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

With no annotations present, the description carries the behavioral burden and does disclose the key trait: this is a non-mutating dry-run check ('without creating anything'). It also conveys the cost/latency motivation around short-lived quotes. It does not say whether failures return a missing-field list versus an error, nor anything about auth or rate limits, so it is good but not complete.

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?

Two sentences, zero filler, with the no-side-effect constraint front-loaded and the create_transfer routing following immediately. Every clause earns its place.

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?

For a 27-parameter tool with no annotations and no output schema, the description covers the workflow purpose and the non-mutating behavior, and implies the useful return ('find out which fields a currency needs'). It stops short of describing the actual response shape or error semantics, which is the main remaining gap given the absent output schema.

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% across all 27 parameters, so the schema already documents each field's meaning and conditional requirements (e.g. dateOfBirth, accountType). The description adds only a light hint that required fields vary by currency/corridor and that validation can target a quote's corridor, which is marginal added meaning over 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 description states a specific verb and resource ('Check bank payout details'), names the scope of validation ('against the corridor's rules'), and explicitly disclaims a side effect ('without creating anything'). An agent can distinguish it from create_transfer and create_quote without opening either 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?

It gives an explicit trigger ('Use it before create_transfer') and the reason to prefer it ('instead of spending a short-lived quote on a rejected transfer'), effectively naming the alternative tool and the condition that selects this one.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.