cz-agents-mcp
This server provides due-diligence and risk assessment tools for Czech companies using their IČO (business registration number).
get_dd_report: Generate a complete due-diligence report including company facts (name, address, legal form, VAT status, bank accounts), statutory body members with individual sanctions checks, and a risk score with all triggered red flags. Supportsbasicdepth (ARES + sanctions) orfulldepth (adds ISIR insolvency + virtual-address probe).get_risk_score: Lightweight screening tool returning a numeric risk score (0–100), risk level, and top triggered red flags — without the full report overhead.get_statutory_chain: Walk the UBO-style ownership tree from a company through its statutory persons and their other company memberships, up to a configurable depth (max 5 levels). Useful for KYC, beneficial ownership discovery, and shell-company unwinding.
Generates European payment QR codes compliant with SEPA (EPC/GiroCode) standards, enabling AI agents to create SEPA-compatible QR codes for payments.
cz-agents-mcp
Model Context Protocol servers for Czech & EU due diligence and KYC/AML — company facts, insolvency (ISIR), EU + OFAC sanctions screening, VAT-payer reliability, phoenix & nominee-director detection, quantified risk score and statutory-chain (UBO) ownership analysis. Built on native access to ARES (company registry), ČNB (FX rates), ADIS (VAT-payer status) and 16 EU business registries (GB, SK, PL, NL, IT, AT, ES, BE, LT, DE, FR, NO, DK, FI, EE, SE).
Want a hosted, production-ready version? cz-agents.dev — managed API with a 14-day free trial (no credit card). Adds higher quotas, nominee detection, risk timeline, address crowding, watchlist monitoring, and a web compliance dashboard. Your self-hosted config keeps working after upgrade — same endpoints, same token format.
No-code web app
Don't want to wire an MCP client? The same data is available as a web application:
Business partner due diligence (prověření obchodního partnera)
Case study: company due diligence with an AI agent — 20 minutes → 30 seconds
Landing page: cz-agents.dev · Listed in: official MCP Registry under DNS-verified namespace dev.cz-agents/*
Available servers
Package | Source | Status |
ARES — Czech Business Register | ✅ live | |
ČNB — daily FX rates | ✅ live | |
EU + OFAC sanctions screening (KYC/AML) | ✅ live | |
ISIR — Czech insolvency register | ✅ live | |
ADIS — unreliable VAT payer (nespolehlivý plátce DPH) + transparent accounts | ✅ live | |
Due-diligence aggregator (ARES + sanctions + ISIR + ADIS + statutory chain) | ✅ live | |
Czech distress real estate intelligence (ISIR sales + portál dražeb) | ✅ live (v0.1) | |
EU business registries — 16 countries (GB, SK, PL, NL, IT, AT, ES, BE, LT, DE, FR, NO, DK, FI, EE, SE) via Companies House / ORSR / KRS / SIRENE / BRREG / CVR / PRH / RIK / Bolagsverket / VIES / GLEIF | ✅ live | |
Payment QR codes (SPAYD / EPC-GiroCode) — bonus utility | ✅ live |
Premium tier — closed source
Server | What it adds | Where |
| 8-indicator nominee director detection (cross-DB), phoenix recidiva, enriched risk timeline with AI narrative, recursive linked-entities risk analysis (depth 1-3), shell-firm address crowding with provider detection, daily watchlist monitoring with email digest | Hosted-only at |
Related MCP server: eu-company-mcp-server
Quick start
Claude Desktop / Cursor (stdio)
{
"mcpServers": {
"ares": { "command": "npx", "args": ["-y", "@czagents/ares"] },
"cnb": { "command": "npx", "args": ["-y", "@czagents/cnb"] },
"sanctions": { "command": "npx", "args": ["-y", "@czagents/sanctions"], "env": { "SANCTIONS_DB": "/path/to/sanctions.db" } },
"isir": { "command": "npx", "args": ["-y", "@czagents/isir"], "env": { "ISIR_SOAP_ENABLED": "1" } },
"adis": { "command": "npx", "args": ["-y", "@czagents/adis"], "env": { "ADIS_SOAP_ENABLED": "1" } },
"dd": { "command": "npx", "args": ["-y", "@czagents/dd"], "env": { "SANCTIONS_DB": "/path/to/sanctions.db", "ADIS_SOAP_ENABLED": "1" } },
"eu-registry": { "command": "npx", "args": ["-y", "@czagents/eu-registry"] },
"payqr": { "command": "npx", "args": ["-y", "@czagents/payqr"] },
"realestate": { "command": "npx", "args": ["-y", "@czagents/realestate"] }
}
}Remote / Streamable HTTP
{
"mcpServers": {
"ares": { "url": "https://ares.cz-agents.dev/mcp" },
"cnb": { "url": "https://cnb.cz-agents.dev/mcp" },
"sanctions": { "url": "https://sanctions.cz-agents.dev/mcp" },
"isir": { "url": "https://isir.cz-agents.dev/mcp" },
"adis": { "url": "https://adis.cz-agents.dev/mcp" },
"dd": { "url": "https://dd.cz-agents.dev/mcp" },
"eu-registry": { "url": "https://eu-registry.cz-agents.dev/mcp" },
"payqr": { "url": "https://payqr.cz-agents.dev/mcp" },
"realestate": { "url": "https://realestate.cz-agents.dev/mcp" }
}
}Tools
@czagents/ares (10 tools)
lookup_by_ico({ ico })— full company recordsearch_companies({ query, city, street, psc, nace, pocet })— combined searchsearch_by_address({ street, city, psc })— all companies at an addresssearch_by_nace({ nace, city })— by CZ-NACE activity codeget_statutaries({ ico })— current statutory body (for due diligence)validate_dic({ dic })— DIČ format + MOD11 checksumcheck_vat_payer({ ico })— VAT registration + transparent accountsget_bank_accounts({ ico })— DPH-published accountsget_history({ ico })— previous names, address changeswatch_entity({ ico })— start free monitoring onboarding for one company
@czagents/cnb (3 tools)
get_rates({ date? })— full daily FX sheetconvert({ amount, from, to, date? })— CZK-crossed conversionget_rate({ code, date? })— single currency rate
@czagents/sanctions (6 tools)
search_person({ name, dob?, nationality?, threshold? })— fuzzy KYC screen against EU + OFACsearch_entity({ name, country?, threshold? })— entity / company screencheck_ico({ ico, name? })— direct lookup of a Czech IČO on sanctions listsget_listing({ id })— full record by${source}:${id}list_recent_updates({ since, source? })— daily monitoring (added/removed/modified)rescreen_portfolio({ subjects[], since, source? })(paid; available when x402 is enabled) — re-screen your own subject list against sanctions-list changes
@czagents/isir (3 tools)
check_ico_insolvency({ ico })— direct lookup of a Czech IČO in the insolvency registersearch_person_insolvency({ ico?, rc?, dob?, firstname?, surname? })— find a person by IČO, birth number, or name + DOBpoll_isir_events({ since })— append-only event feed for daily monitoring
@czagents/adis (3 tools)
check_dph_payer({ ico OR dic })— full reliability check via ADIS V2: status (ANO/NE/NENALEZEN), subject type, name, address, transparent bank accounts (§ 96a ZDPH), unreliable-since datecheck_bulk_dph_payer({ icos[] OR dics[] })— batch up to 100 subjects (lighter response, status + accounts only)list_unreliable_payers()— full list of currently unreliable payers (50–100 MB, intended for daily mirroring)
@czagents/dd (12 tools)
person_companies({ name, birth_year? })— Czech VR companies connected to a person (free, anonymous)get_owners({ ico })— direct + upstream Czech VR ownership tree (free, anonymous)get_dd_report({ ico, depth })— unified ARES + sanctions + ISIR report with risk scorewatch_entity({ ico })— start free monitoring onboarding for one companyget_risk_score({ ico })— fast 0–100 score + top red flagsget_statutory_chain({ ico, max_depth })— surname-based statutory-body walk for shell-company unwindingdetect_nominee_director({ ico })— 3-indicator "white horse" director detection (Compliance tier+)detect_phoenix({ ico })— phoenix-company pattern detection (Compliance tier+)get_risk_timeline({ ico })— chronological company lifecycle/risk timeline (Compliance tier+)detect_address_crowding({ ico })— shell-firm "address hotel" detection (Compliance tier+)get_eu_dd_report({ lei OR name, country? })— EU DD report: GLEIF entity data + EU/OFAC sanctions check (Compliance tier+)get_eu_parent({ ico })— find EU/international parent via ARES → GLEIF LEI matching (Compliance tier+)
@czagents/eu-registry (3 tools)
search_company({ name, country?, limit? })— search non-Czech registries by company name across 16 countriesget_company({ id, country })— company record by national ID (CRN / IČO / KRS / SIREN / LEI / VAT / …)lookup_company_by_vat({ vat })— free VIES VAT validity + name/address lookup
@czagents/payqr (6 tools)
qr_payment({ iban, bic?, amount?, ... })— payment QR (auto SPAYD for CZ/SK, EPC/GiroCode for other SEPA)qr_text({ text })— plain-text QRqr_wifi({ ssid, password?, security? })— Wi-Fi network QRqr_vcard({ name, phone?, email?, ... })— vCard 3.0 contact QRqr_read({ image_data })— decode + classify a QR code from a base64 imageqr_payment_batch({ payments[] })(paid; available when x402 is configured) — payment QRs for a whole invoice run in one call
@czagents/realestate (1 tool, free tier only)
get_district_aggregate({ okres, window_days? })— anonymised district-level distress real-estate stats (ISIR insolvencies + portál dražeb/CEVD forced sales); counts under 5 are banded to protect individual identification
What this is good for
A toolkit for compliance, KYC/AML, accounting and cross-border checks over Czech & EU registries:
VAT & invoicing — verify VAT-payer status (ADIS) and convert at official ČNB FX rates before booking.
Counterparty screening — ARES identity, EU + OFAC sanctions, ISIR insolvency.
Due diligence (flagship) — the
@czagents/ddaggregator combines the above into a risk score, statutory-chain / UBO walk, and EU-parent lookup.Cross-border — company lookups across 16 EU registries (
@czagents/eu-registry).
Use a single-source server when you need just one dataset; use the due-diligence aggregator for combined, scored output.
Example prompts the aggregator handles well:
KYC pre-invoice — "Before we send a 350 000 Kč invoice to IČO 11122234, flag any insolvency, sanctions, unreliable-VAT-payer status, or nominee-director red flags."
Vendor onboarding — "Run KYC on this prospective supplier and tell me if anything looks off. Use the full statutory chain."
M&A pre-due-diligence — "Generate a DD report on the acquisition target and walk the statutory body two levels deep — flag any insolvent firms in the network."
Score & validation
A/A/A on Glama (quality / security / license), claimed and maintained.
Listed in the official MCP registry
under DNS-verified namespace dev.cz-agents/*.
Further reading
Building MCP servers for a country that isn't in the dataset — design rationale, gotchas (MOD11, ARES Swagger bugs), and how this pattern adapts MCP to non-English locales.
License
MIT © Martin Havel — see LICENSE
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP server for Slovak business registers (RPO) — AI agents can query 1.4M+ Slovak legal entities via Slovakia's official Statistical Office API. Search companies by name, IČO, or get full entity details including legal form, address, and statutory representatives.21MIT
- AlicenseAqualityDmaintenanceMCP server for EU company and business data. 9 tools: company search (GLEIF, 2M+ entities), LEI lookup, corporate structures (parent/subsidiaries), trade register search, EU VAT validation (VIES), GDP, unemployment, inflation, and business demography (Eurostat). All APIs free, no keys required.94MIT
- AlicenseAqualityDmaintenanceMCP server providing AI assistants access to Polish public registries (KRS, CEIDG) and statistical data (GUS BDL) for querying companies, sole proprietorships, and regional statistics.7MIT
- Alicense-qualityDmaintenanceMCP server for connecting AI clients to the Money S3 accounting system via GraphQL API, enabling operations on invoices, contacts, stock, banking, payroll, and more.2MIT
Related MCP Connectors
Czech National Bank (Česká národní banka, ČNB) public API MCP. Keyless.
AI-native ERP MCP: ES/EU fiscal compliance (VeriFactu/TicketBAI/Facturae), invoicing, tax, banking
European business verification for AI agents: registry, VAT, sanctions, IBAN. Pay-per-call x402.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/martinhavel/cz-agents-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server