Skip to main content
ClaudeWave

Verified IBAN, card, ISBN-13 & VIN validation for AI agents — checksums, not guesses.

MCP ServersOfficial Registry0 stars0 forksTypeScriptApache-2.0Updated 2d ago
Install in Claude Code / Claude Desktop
Method: Manual
Claude Code CLI
git clone https://github.com/qinisolabs/veridigit
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "veridigit": {
      "command": "node",
      "args": ["/path/to/veridigit/dist/index.js"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Clone https://github.com/qinisolabs/veridigit and follow its README for install instructions.
Use cases

MCP Servers overview

# veridigit

**Verified validation of structured identifiers for AI agents — checksums, not guesses.**

LLMs cheerfully accept malformed IBANs, mistype card check digits, invent ISBN and VIN
check digits, and guess a card's brand wrong. `veridigit` gives an agent a deterministic,
authoritative answer instead: it runs the real checksum algorithms and returns structured
results with the parsed parts and clear error reasons.

It ships as **both** an MCP server (for agents to call live) and a typed TypeScript
library (for apps to import).

Supported in v1:

- **IBAN** — ISO 7064 mod-97 checksum + country-specific length, for 75+ countries.
- **Payment cards** — Luhn (ISO/IEC 7812) checksum, brand detection from the BIN
  (Visa, Mastercard, Amex, Discover, Diners, JCB, UnionPay), and length rules.
- **ISBN-13** — 978/979 prefix and mod-10 weighted check digit.
- **VIN** — ISO 3779 alphabet (no I/O/Q) and the position-9 transliteration check digit.

## Why

On 32 randomly generated, non-memorised identifiers, a frontier model with no tool got the
check digit **wrong 91% of the time** — IBAN 100%, VIN 100%, ISBN-13 88%, card/Luhn 75% —
versus **0%** for `veridigit`. The failure is invisible: the model returns a confident,
well-formatted answer that happens to be wrong. `veridigit` replaces the guess with the
algorithm.

Benchmark and reproducible harness: **https://qinisolabs.github.io/veridigit**

> The 91% figure is one frontier model, tool-free, at temperature 0. Run it on any model
> yourself with the harness in [`bench/`](bench/).

## Use as an MCP server

```jsonc
// in your MCP client config
{
  "mcpServers": {
    "veridigit": { "command": "npx", "args": ["-y", "veridigit"] }
  }
}
```

Tools exposed: `validate_iban`, `validate_card`, `validate_isbn`, `validate_vin`.

## Use as a library

```bash
npm install veridigit
```

```ts
import { validateIban, validateCard, validateIsbn13, validateVin } from "veridigit";

validateIban("GB82 WEST 1234 5698 7654 32");
// { valid: true, countryCode: "GB", country: "United Kingdom", checkDigits: "82", ... }

validateCard("4111 1111 1111 1111");
// { valid: true, luhnValid: true, brand: "Visa", lengthValid: true, ... }

validateIsbn13("978-0-306-40615-7"); // { valid: true, type: "ISBN-13", checkDigit: "7", ... }
validateVin("1HGCM82633A004352");    // { valid: true, checkDigit: "3", ... }
```

Helper exports are also available: `ibanCheckDigits`, `luhnValid`, `luhnCheckDigit`,
`detectBrand`, `isbn13CheckDigit`, `vinCheckDigit`, `supportedIbanCountries`.

## Scope

`veridigit` validates the **structure** of an identifier — its format and checksum. It
does **not** confirm that a bank account, card, book or vehicle actually exists, is active,
or belongs to anyone. It performs no network calls.

## Development

```bash
npm install
npm run build   # tsc -> dist/
npm test        # parity/known-answer tests via tsx
```

The curated reference data (IBAN country specs, card BIN ranges) lives in `data/`.

## License

Apache-2.0

What people ask about veridigit

What is qinisolabs/veridigit?

+

qinisolabs/veridigit is mcp servers for the Claude AI ecosystem. Verified IBAN, card, ISBN-13 & VIN validation for AI agents — checksums, not guesses. It has 0 GitHub stars and was last updated 2d ago.

How do I install veridigit?

+

You can install veridigit by cloning the repository (https://github.com/qinisolabs/veridigit) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is qinisolabs/veridigit safe to use?

+

qinisolabs/veridigit has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.

Who maintains qinisolabs/veridigit?

+

qinisolabs/veridigit is maintained by qinisolabs. The last recorded GitHub activity is from 2d ago, with 0 open issues.

Are there alternatives to veridigit?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy veridigit to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: qinisolabs/veridigit
[![Featured on ClaudeWave](https://claudewave.com/api/badge/qinisolabs-veridigit)](https://claudewave.com/repo/qinisolabs-veridigit)
<a href="https://claudewave.com/repo/qinisolabs-veridigit"><img src="https://claudewave.com/api/badge/qinisolabs-veridigit" alt="Featured on ClaudeWave: qinisolabs/veridigit" width="320" height="64" /></a>

More MCP Servers

veridigit alternatives