Skip to main content
Glama
koraykoylu

ibanchecker-mcp

Validate Multiple IBANs

validate_bulk_ibans
Read-onlyIdempotent

Validate up to 100 IBANs in one call with ISO 13616 checks (country, length, BBAN, MOD-97), returning per-IBAN validity, failure reasons, bank details, and summary counts.

Instructions

Validate a batch of up to 100 IBANs in one call, applying the same ISO 13616 checks as validate_iban (country, length, BBAN structure, MOD-97).

Returns a JSON array of per-IBAN results in the same order as the input, each with valid, countryCode, an optional reason for failures, and bank details when the code is recognized, plus a summary count of valid vs. invalid entries.

Use this instead of calling validate_iban in a loop when checking a list (e.g. a payment file or a column of supplier accounts). Split inputs larger than 100 into multiple calls. Account numbers are validated in memory and never stored.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
ibansYesArray of 1 to 100 IBAN strings to validate. Case-insensitive; spaces are tolerated. Order is preserved in the response.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.2.0
    • changedInput schema / properties / ibans / description
      Previous value: -"Array of IBANs to validate (max 100)"New value: +"Array of 1 to 100 IBAN strings to validate. Case-insensitive; spaces are tolerated. Order is preserved in the response."
    • addedInput schema / properties / ibans / items / minLength
      Added value: +5
    • addedInput schema / properties / ibans / minItems
      Added value: +1
  2. First observedv1.1.2

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds valuable context: account numbers are never stored, case-insensitivity, space tolerance, order preservation, and detailed return structure (per-IBAN results with valid, countryCode, reason, bank details, summary count). No contradictions.

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 concise with three sentences covering purpose, return format, and usage guidance. It is front-loaded with the core action and immediately differentiates from the sibling tool. Every sentence serves a purpose 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?

Despite no output schema, the description fully explains the return value (JSON array with per-IBAN fields and summary count). It covers validation rules, privacy (not stored), and batch limit. All necessary context for correct use is provided.

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% with a description for the `ibans` parameter. The description adds meaning beyond the schema: case-insensitivity, space tolerance, and order preservation. This extra detail justifies a score above the baseline of 3.

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 clearly states the tool validates a batch of up to 100 IBANs using ISO 13616 checks, explicitly distinguishing it from the sibling `validate_iban` by noting it is for batch processing. The verb 'Validate' and resource 'batch of IBANs' are specific and unambiguous.

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 explicitly advises to use this tool instead of calling `validate_iban` in a loop for lists, and provides guidance on splitting inputs larger than 100. It names the alternative tool and gives concrete examples (payment file, supplier accounts).

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