A SWIFT code lookup API in Python posts an 8- or 11-character BIC and reads bank, city, and country. On BankDataStack that is POST /api/v1/swift/validate with header X-API-Key. Official sample: CHASUS33.
Starter is $49.99/mo (1,000 calls then $0.002) with a 7-day trial. IBAN / ABA are sibling POSTs. MCP host did not resolve on 17/9 — do not claim MCP live. Docs: /docs.
Request: official CHASUS33
curl -X POST https://www.bankdatastack.com/api/v1/swift/validate \
-H "X-API-Key: YOUR_API_KEY" -H "Content-Type: application/json" \
-d '{{"swift":"CHASUS33"}}'
Python: same contract
import json, os, urllib.request
req = urllib.request.Request(
"https://www.bankdatastack.com/api/v1/swift/validate",
data=json.dumps({"swift": "CHASUS33"}).encode(),
headers={"X-API-Key": os.environ["BANKDATA_KEY"], "Content-Type": "application/json"},
)
print(urllib.request.urlopen(req).read().decode())
Response: official CHASUS33 sample
{
"status": "success",
"message": "SWIFT code CHASUS33 is valid",
"data": {
"swiftCode": "CHASUS33",
"bank": "JPMORGAN CHASE BANK, N.A.",
"city": "NEW YORK",
"countryCode": "US"
}
}
Go live
1. Register — 7-day trial.
2. Copy X-API-Key.
3. POST /api/v1/swift/validate with a BIC.
4. Store data.bank and data.countryCode.





