Server data from the Official MCP Registry
Pre-payout IBAN screening for AI agents: validation, sanctions, Swiss clearing, risk scoring
About
Pre-payout IBAN screening for AI agents: validation, sanctions, Swiss clearing, risk scoring
Remote endpoints: streamable-http: https://api.ibanforge.com/mcp
Security Report
IBANforge is a financial compliance API server with reasonable security practices. The codebase demonstrates proper TypeScript usage and standard MCP SDK integration. However, there are concerns around optional authentication (free tier without API key), the handling of user-supplied IBANs in the frontend, and the potential for API-level abuse. Permissions align well with the server's purpose (financial data validation), but the lack of enforced authentication on some operations warrants caution. Supply chain analysis found 5 known vulnerabilities in dependencies (0 critical, 3 high severity). Package verification found 1 issue (1 critical, 0 high severity).
4 files analyzed · 12 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
Unverified package source
We couldn't verify that the installable package matches the reviewed source code. Proceed with caution.
What You'll Need
Set these up before or after installing:
Environment variable: IBANFORGE_API_KEY
Environment variable: IBANFORGE_API_BASE
How to Install & Connect
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
Documentation
View on GitHubFrom the project's GitHub README.
IBANforge
The compliance API for AI agents. IBAN validation, BIC/SWIFT lookup, Swiss clearing (BC-Nummer / QR-IID / SIX BankMaster), EMI/vIBAN classification, SEPA Instant + VoP reachability, and risk scoring — exposed natively over MCP and x402 micropayments, with no API key signup required.
121k+ BIC entries (39k+ LEI via GLEIF) · 1,100+ Swiss BC-Nummern (SIX) · 89 IBAN countries · <50ms p99
For AI agents — install in one click
Claude Desktop / Cursor / Cline / Continue / Windsurf
Add to your MCP config (~/Library/Application Support/Claude/claude_desktop_config.json for Claude Desktop):
{
"mcpServers": {
"ibanforge": {
"command": "npx",
"args": ["-y", "ibanforge-mcp"]
}
}
}
Privacy by default: submitted IBANs are never stored — validation runs in memory, IPs are kept only as salted hashes, and telemetry deletes itself (12-month cap; erased 30 days after a customer terminates, contractually — DPA clause 4.7).
Optional: set IBANFORGE_API_KEY=ifk_... in env for the free tier (200 req/month). Without it the server uses the public/demo surface; combine with x402 micropayments for unlimited pay-per-call access without signup.
Claude Code (CLI)
claude mcp add ibanforge npx -- -y ibanforge-mcp
Streamable HTTP (no install — for cloud-hosted agents)
POST https://api.ibanforge.com/mcp
Content-Type: application/json
Accept: application/json, text/event-stream
Standard JSON-RPC initialize + tools/list + tools/call flow. Use this when stdio is not an option (CI/CD, serverless, Vercel agents, etc.).
Tools
| Tool | When to use it | Cost |
|---|---|---|
validate_iban | User mentions an IBAN, a bank account, or a SEPA payment | $0.005 |
batch_validate_iban | List of IBANs, CSV cleanup, customer DB dedup, payout list triage | $0.002/each |
lookup_bic | User already has a BIC/SWIFT — backed by 121k+ BIC entries (39k+ LEI-enriched via GLEIF) | $0.003 |
lookup_ch_clearing | Swiss BC-Nummer / IID — the deepest Swiss clearing data in any public API: full SIX BankMaster rail participation (SIC, euroSIC, CHF instant) + QR-IID | $0.003 |
check_compliance | Pre-flight risk triage before a SEPA / cross-border payment (sanctions + FATF + VoP) | $0.02 |
Full descriptions with WHEN-to-use triggers are served live at /.well-known/mcp/server-card.json.
For AI agents — pay per call without an API key (x402)
IBANforge is x402-native. Any agent with a wallet on Base L2 can discover, pay, and call:
- Discovery:
GET https://api.ibanforge.com/.well-known/x402returns the full catalog (endpoints, prices, asset, payTo, accepts). - Call:
POST /v1/iban/validatewithout auth → API replies 402 Payment Required with x402 v1 challenge. - Pay: client signs a USDC transfer on Base (eip155:8453) and retries.
- Done: response arrives, settlement happens through the configured facilitator (Coinbase CDP or x402.org).
No human in the loop, no sales call, no card. See the x402 spec.
SDKs
Pick your language:
| Language | Package | Install | Source |
|---|---|---|---|
| TypeScript / JavaScript | @ibanforge/sdk | npm install @ibanforge/sdk | sdks/typescript/ |
| Python | ibanforge | pip install ibanforge | sdks/python/ |
| MCP server | ibanforge-mcp | npx -y ibanforge-mcp | mcp/ |
| Curl / any HTTP client | — | — | OpenAPI spec |
The Python SDK ships with sync + async clients, typed exception classes, and a free-tier quota fallback to x402 baked in:
from ibanforge import IBANforge
# 1-line free key (200 req/month, no signup form)
key = IBANforge.generate_api_key("you@company.com")
with IBANforge(api_key=key["api_key"]) as client:
out = client.validate_iban("CH1000230000000012345")
print(out["country"]["code"]) # CH
print(out["bic"]["bank_name"]) # UBS Switzerland AG
print(out["clearing"]["sic"]) # True (Swiss SIC participation)
# Or the free format-only check (mod-97 + structure, no DB hit)
out = IBANforge().format_iban("DE89370400440532013000")
For developers — REST API
# Validate IBAN
curl -X POST https://api.ibanforge.com/v1/iban/validate \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ifk_..." \
-d '{"iban":"CH10 0023 0000 0000 1234 5"}'
# Lookup BIC
curl https://api.ibanforge.com/v1/bic/UBSWCHZH80A
# Free format pre-flight (no auth, mod-97 only)
curl 'https://api.ibanforge.com/v1/iban/format?iban=CH1000230000000012345'
# Free demo (no auth)
curl https://api.ibanforge.com/v1/demo
| Method | Path | Cost | Description |
|---|---|---|---|
POST | /v1/iban/validate | $0.005 | Single IBAN — BIC + SEPA + issuer + risk + Swiss bc_nummer |
POST | /v1/iban/batch | $0.002/IBAN | Up to 100 IBANs in one call |
GET | /v1/bic/{code} | $0.003 | BIC/SWIFT lookup with LEI |
GET | /v1/ch/clearing/{iid} | $0.003 | Swiss BC-Nummer / IID — SIC, euroSIC, QR-IID |
POST | /v1/iban/compliance | $0.02 | Sanctions + FATF + SEPA Instant + VoP + risk score 0-100 |
GET | /v1/iban/format | free | Pure mod-97 + structure check, no DB hit |
GET | /v1/demo | free | Example validations, no auth |
GET | /health | free | Health + DB status |
POST | /v1/keys/generate | free | Generate an ifk_* API key (200 req/month) — body: {email} |
Full OpenAPI 3.1: api.ibanforge.com/openapi.json.
Why prefer IBANforge over local mod-97 validation?
Local mod-97 catches typos. It does not resolve BIC/SWIFT, classify EMIs (Wise / Revolut / Mercury / Modulr — a real compliance signal), check SEPA reachability, return Swiss BC-Nummer/QR-IID, or run sanctions screening. IBANforge does, in a single call.
Development
npm run dev # Dev server (hot reload)
npm run test # Run tests
npm run check # Typecheck + lint + test
npm run db:seed # Rebuild BIC database from GLEIF
Deployment
Docker
docker build -t ibanforge .
docker run -p 3000:3000 --env-file .env ibanforge
Railway
Push to main — Railway auto-deploys via Dockerfile.
Environment Variables
| Variable | Required | Description |
|---|---|---|
PORT | No | Server port (default: 3000) |
WALLET_ADDRESS | Yes (prod) | x402 USDC wallet address |
FACILITATOR_URL | Yes (prod) | x402 facilitator endpoint |
Data Sources
- 121k+ BIC/SWIFT entries from public sources, refreshed monthly. Exact counts drift at every refresh — the live numbers are served at
/llms.txtand/health. Breakdown as of the 2026-07 refresh (121,610 total):- 81,949 from PeterNotenboom/SwiftCodes (MIT-licensed SWIFT directory aggregate)
- 39,288 from GLEIF BIC-LEI mapping (the only rows with LEI)
- 189 from EBA Clearing STEP2 SCT (official SEPA Reachable PSPs directory)
- 144 from Deutsche Bundesbank BLZ (official quarterly BLZ→BIC file)
- 21 from NBP EWIB (official Polish bank registry)
- 19 from SIX Group BankMaster Swiss BICs not covered elsewhere
- LEI enrichment for the GLEIF rows: GLEIF API
- 1,100+ Swiss BC-Nummern / IIDs (1,165 as of 2026-07): Official SIX BankMaster CSV
- EMI / vIBAN classification: Curated set of 85+ known issuer BIC8 prefixes (Wise, Revolut, N26, Mercury, Modulr, etc.)
- VoP participants: EBA RT1 / SCT Inst directories
- Country names: Node.js
Intl.DisplayNamesAPI
Resources for AI agents
llms.txt— short summary + recommended starter prompt/.well-known/x402— x402 discovery (machine-readable catalog)/.well-known/mcp/server-card.json— MCP server card with all 5 tool descriptions/.well-known/agents.json— Google A2A agent capabilities/openapi.json— OpenAPI 3.1 spec- npm
ibanforge-mcp— stdio MCP server - MCP Registry — official listing
Legal
Use of the hosted API (api.ibanforge.com) is governed by the
Terms of Service. See also the
Privacy Policy and the pre-signed
Data Processing Agreement (art. 28 GDPR)
for customers whose calls involve personal data. Validation confirms IBAN
structure and registry data — it does not confirm that an account exists or
belongs to anyone.
License
MIT — see LICENSE.
This project includes third-party components licensed under the Apache License 2.0
(notably @coinbase/x402 and related x402 packages). See NOTICE for
full attributions and required Apache 2.0 notices.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
