MCP Server

Checksum Validator

com.apished/checksum-validator
Other Public & reachable MCP 2025-11-25

What this MCP does

Validates checksum and structural formats for barcodes, IBANs, ISBNs, payment-card identifiers, SWIFT/BIC codes, and EU VAT numbers.

ean_validate
Validates an 8-digit (EAN-8), 12-digit (UPC-A), 13-digit (EAN-13), or 14-digit (GTIN-14) barcode checksum: alternating weights 1 3 applied right-to-left, check digit is (10 - sum mod 10) mod 10.
Input schema
{'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'string', 'description': 'identifier or value to check'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['valid'], 'properties': {'valid': {'type': 'boolean'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}
iban_validate
Validates an IBAN's length for its issuing country (per the SWIFT IBAN registry) and its mod-97 checksum. Does not decompose the BBAN into a bank code/account number or resolve a BIC.
Input schema
{'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'string', 'description': 'identifier or value to check'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['valid'], 'properties': {'valid': {'type': 'boolean'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}
isbn_validate
Validates a 10- or 13-character ISBN. ISBN-10 uses weights 10..1 over 10 characters (last may be X, worth 10), sum mod 11 must be 0. ISBN-13 uses the same GTIN checksum as barcodes.
Input schema
{'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'string', 'description': 'identifier or value to check'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['valid'], 'properties': {'valid': {'type': 'boolean'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}
luhn_validate
Validates a numeric string against the Luhn (mod-10) checksum — payment card numbers, IMEI numbers, and similar identifiers.
Input schema
{'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'string', 'description': 'identifier or value to check'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['valid'], 'properties': {'valid': {'type': 'boolean'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}
swiftbic_validate
Structural format validation only for a SWIFT/BIC code: 8 or 11 characters (4 letters bank code + 2 letters country code + 2 alphanumeric location code + optional 3 alphanumeric branch code). The country code is not cross-checked against ISO 3166-1.
Input schema
{'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'string', 'description': 'identifier or value to check'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['valid'], 'properties': {'valid': {'type': 'boolean'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}
vateu_validate
Format validation only (no VIES lookup) for an EU VAT number: checks the 2-letter member-state prefix (EL for Greece, XI for Northern Ireland) against that country's digit/letter pattern. A format-valid result does not mean the number is actually registered.
Input schema
{'type': 'object', 'required': ['value'], 'properties': {'value': {'type': 'string', 'description': 'identifier or value to check'}}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['valid'], 'properties': {'valid': {'type': 'boolean'}, 'reason': {'type': 'string'}}, 'additionalProperties': False}
Added
vateu_validate
Sept. 17, 2026, 12:58 p.m.
Added
swiftbic_validate
Sept. 17, 2026, 12:58 p.m.
Added
luhn_validate
Sept. 17, 2026, 12:58 p.m.
Added
isbn_validate
Sept. 17, 2026, 12:58 p.m.
Added
iban_validate
Sept. 17, 2026, 12:58 p.m.
Added
ean_validate
Sept. 17, 2026, 12:58 p.m.