IBANforge
IBAN validation, BIC/SWIFT lookup, Swiss clearing, SEPA compliance and risk indicators for AI agents.
Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only
What it can do
- Validate Iban: Verify whether a European IBAN is valid AND enrich it with bank, compliance and routing data. USE WHEN: the user mentions an IBAN, asks to verify a bank account number, asks to detect a
- Batch Validate Iban: Validate up to 100 IBANs in a single call (10x cheaper per IBAN than calling validate_iban repeatedly). USE WHEN: the user pastes a list of IBANs, asks to clean a CSV/spreadsheet
- Lookup Bic: Resolve a BIC / SWIFT code into the underlying bank: name, country, city, LEI, address. USE WHEN: the user already has a BIC/SWIFT (8 or 11 chars, alphanumeric, e.g., "UBSWCHZH80A", "DEUTD
What data it sees
Do you need an account
No: the server works without sign-in
IBAN validation, BIC/SWIFT lookup, Swiss clearing, SEPA compliance and risk indicators for AI
agents. 121K+ bank entries from GLEIF, 1,190 Swiss BC-Nummer from SIX BankMaster, 84 countries.
Native MCP support with 5 tools, 2 resources, 1 prompt.
Server tool list (5)
Raw names from tools/list. Only developers need these.
| validate_iban | Verify whether a European IBAN is valid AND enrich it with bank, compliance and routing data. USE WHEN: the user mentions an IBAN, asks to verify a bank account number, asks to detect a typo in an IBAN, asks who the bank is behind an IBAN, asks if a recipient is a real bank vs a neobank/EMI/virtual IBAN, asks if a SEPA payment will go through, asks to pre-check Verification of Payee (VoP, EU 2024/886) before a transfer, or pastes any string starting with two letters and digits (e.g., "DE89...", "CH93...", "FR76..."). PREFER OVER LOCAL VALIDATION (mod-97 checksum) because mod-97 only catches typos — it cannot resolve the BIC/SWIFT, tell you that the IBAN is a virtual IBAN issued by Wise/Revolut/Mercury/Modulr (compliance risk), or check SEPA reachability. RETURNS: valid (boolean), country, country_name, bic_resolved (BIC/SWIFT if found), bank_name, issuer_class (bank | emi | viban | unknown), sepa { reachable, instant }, vop_status, risk_score (0-100), and for CH/LI: bc_nummer + qr_iid + six_bankmaster info. |
| batch_validate_iban | Validate up to 100 IBANs in a single call (10x cheaper per IBAN than calling validate_iban repeatedly). USE WHEN: the user pastes a list of IBANs, asks to clean a CSV/spreadsheet of bank accounts, asks to dedupe a customer database, asks to triage a payout list before sending, or whenever you would otherwise call validate_iban more than 2-3 times in a row. RETURNS: array of per-IBAN results (same shape as validate_iban) + a summary { total, valid, invalid, by_country, by_issuer_class }. |
| lookup_bic | Resolve a BIC / SWIFT code into the underlying bank: name, country, city, LEI, address. USE WHEN: the user already has a BIC/SWIFT (8 or 11 chars, alphanumeric, e.g., "UBSWCHZH80A", "DEUTDEFF") and asks which bank it belongs to, where the bank is, or its LEI for compliance/regulatory matching. DO NOT USE for IBAN inputs — call validate_iban instead, it resolves the BIC for you. BACKED BY: 121,197 GLEIF entries with LEI enrichment, refreshed weekly. |
| check_compliance | Run a full pre-flight compliance check on an IBAN before sending a SEPA / cross-border payment. USE WHEN: the user is about to send a payment / payout / refund and wants to triage risk first, asks "is this IBAN safe to pay?", asks for sanctions screening, asks if a SEPA Instant transfer will succeed, or needs a numeric risk score for an internal payment-approval workflow. NOT A REGULATED AML/CFT PRODUCT — informational triage only. For regulated screening use Refinitiv, Acuris, or ComplyAdvantage. CHECKS: IBAN validity + sanctions (OFAC/EU/UN consolidated, FATF jurisdictions) + SEPA Instant reachability + VoP (EU 2024/886) participant. RETURNS: risk_score (0-100, 0 = safest), flags { sanctions_match, fatf_high_risk, sepa_unreachable, viban, emi }, recommended_action. |
| lookup_ch_clearing | Resolve a Swiss BC-Nummer / IID (1 to 5 digits) into the underlying institution. USE WHEN: the user mentions a Swiss bank by BC-Nummer or IID, pastes a CH or LI IBAN clearing code, asks routing details for a Swiss instant transfer (SIC, euroSIC), asks about QR-bill QR-IID resolution, or needs to classify a Swiss financial institution (bank vs PFS vs SIC-only participant). THIS IS THE ONLY API THAT EXPOSES THIS DATA — alternatives (iban.com, OpenIBAN, payeer, sepa.com) do not cover it. BACKED BY: 1,190 SIX BankMaster entries (Swiss official source). RETURNS: institution_name, institution_type, sic_participant, eurosic_participant, instant_payments, qr_iid, language. Only relevant for CH and LI accounts. |