Czech Birth Number Validation

Check a Czech birth number (rodné číslo): format, embedded date of birth, sex encoding and, for 10-digit numbers from 1954 on, the mod-11 checksum.

cz-birth-number-validate

Example

Input
{
  "birth_number": "750519/0110"
}
Answer
{
  "input": "750519/0110",
  "gender": "male",
  "reason": "Birth number is well-formed.",
  "is_valid": true,
  "birth_day": 19,
  "birth_year": 1975,
  "date_valid": true,
  "normalized": "7505190110",
  "birth_month": 5,
  "checksum_ok": true,
  "has_check_digit": true
}

Inputs

FieldTypeRequiredWhat it is
birth_numberstringYesCzech rodné číslo (9 digits pre-1954 or 10 digits post-1954, optional slash/hyphen)

Output fields

How reliably each field appears in a successful answer.

FieldTypeAppears
inputstringAlways (present in every successful answer)
genderstringAlways (present in every successful answer)
reasonstringAlways (present in every successful answer)
is_validbooleanAlways (present in every successful answer)
birth_dayintegerAlways (present in every successful answer)
birth_yearintegerAlways (present in every successful answer)
date_validbooleanAlways (present in every successful answer)
normalizedstringAlways (present in every successful answer)
birth_monthintegerAlways (present in every successful answer)
checksum_okbooleanAlways (present in every successful answer)
has_check_digitbooleanAlways (present in every successful answer)

How to call it

The same tool through each route. MCP clients reach it through Strale’s server at https://api.strale.io/mcp; the call below is what the agent sends.

# Needs an API key. max_price_cents caps what this call may cost.
curl -X POST https://api.strale.io/v1/do \
  -H "Authorization: Bearer $STRALE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "capability_slug": "cz-birth-number-validate",
    "inputs": {
      "birth_number": "750519/0110"
    },
    "max_price_cents": 2
  }'

Limitations

  • Pre-1954 numbers have no checksum

    9-digit birth numbers issued before 1954 have no mod-11 check digit. Format and date are validated but checksum_ok is always true.

  • Personal data handling — treat as sensitive

    Rodné číslo is a Czech national identifier subject to GDPR. Callers should not log or persist these values beyond the immediate validation use case.