Skip to main content

rejstrik-mcp

CI PyPI

Připojte český obchodní rejstřík ke svému Claude za 30 sekund — bez jakéhokoli API klíče. Účetní závěrky ze Sbírky listin čte váš vlastní model v rámci vašeho předplatného.

Report card: ROBE lighting — finanční ukazatele a orientační ocenění z podané účetní závěrky

Celý průběh v terminálu — bez jakéhokoli API klíče:

Ukázka: Claude najde firmu, přečte její účetní závěrku a spočítá finanční poměrové ukazatele

claude mcp add rejstrik -- uvx rejstrik-mcp

(English note: this is an MCP server for the Czech business registry; the README is in Czech because that's who the data serves. Tool names and descriptions inside the server are in English.)

Co to umí

  • Vyhledání firmy podle názvu nebo IČO (ARES) včetně statutárních orgánů a CZ-NACE.
  • Sbírka listin: výpis dokumentů a stažení skutečně podaných PDF účetních závěrek (nejnovější, podle roku, nebo podle id) — včetně textové vrstvy po stránkách a PNG náhledů u skenů.
  • Finanční analýza bez LLM na serveru: váš agent přečte PDF sám, vytěžené hodnoty pošle zpět a server deterministicky spočítá poměrové ukazatele, bankrotní index IN05, meziroční trendy a red flags.
  • Orientační ocenění (účetní hodnota, kapitalizované zisky, oborové násobky EV/EBITDA dle Damodarana). Není investiční doporučení.
  • Prověrky: insolvenční rejstřík (ISIR), spolehlivost plátce DPH (ADIS), státní dotace (IS ReD), smlouvy z Registru smluv.
  • Report card: shrnutí jako přehledný markdown (výchozí, funguje všude — Claude Code, Desktop, …). Interaktivní HTML karta je implementovaná dle MCP Apps (SEP-1865), ale klienti ji zatím nevykreslují (upstream ext-apps#671), takže se automaticky použije markdown.

Žádná OCR pipeline, žádná vektorová databáze, žádný serverový AI klíč — čtení dokumentů dělá model, kterým se ptáte.

Ukázkové prompty

Po instalaci se stačí Clauda zeptat česky (nebo jakkoli jinak):

„Analyzuj hospodaření firmy ISOTRA a.s. za poslední 2 roky."

Agent najde IČO přes ARES, stáhne podané závěrky ze Sbírky listin, sám je přečte a od serveru dostane spočítanou analýzu. Typický výsledek:

Ukazatel 2024 2023 Změna
Tržby 1 490 957 1 437 917 +3,7 %
Provozní VH (EBIT) 87 166 82 764 +5,3 %
Čistý zisk 60 074 54 631 +10,0 %
Vlastní kapitál 366 214 326 140 +12,3 %

(v tis. Kč) … plus poměrové ukazatele (běžná likvidita 1,73; ROE 16,4 %; úrokové krytí 13,4×), IN05: 1,80 — pásmo tvorby hodnoty, žádné red flags, citace stránek u klíčových čísel.

„Prověř firmu Budějovický Budvar — insolvence, DPH, kdo ji řídí, dotace a veřejné zakázky."

Vrátí stav v ISIR, registraci a spolehlivost plátce DPH, statutární orgány, přehled přijatých dotací a smluv z Registru smluv.

„Odhadni orientační hodnotu firmy XYZ s.r.o."

Vrátí bodový odhad hodnoty s pásmem spolehlivosti, použitý násobek (základ z Damodaran Europe + jmenované korekce) a upozornění, že nejde o investiční doporučení.

Vestavěný prompt analyze-company (v Claude se nabízí jako slash příkaz) provede celou smyčku najednou: najít → stáhnout PDF → vytěžit → analyzovat → karta, včetně víceletých trendů.

Skutečný bezklíčový přepis session je v docs/media/cli-demo.txt — vyhledání firmy přes ARES a výpis podaných závěrek přímo ze Sbírky listin, bez nastaveného jakéhokoli API klíče.

Proč právě tento

agent-native (MCP) čte podaná PDF zdarma & open source funguje bez API klíče
cz-agents-mcp a podobné
chytryrejstrik.cz částečně (placené)
rejstrik-mcp

Instalace

Claude Code: claude mcp add rejstrik -- uvx rejstrik-mcp

Claude Desktop: stáhněte rejstrik-mcp.mcpb z nejnovější GitHub release a poklepejte na něj (vyžaduje uv) — nebo přidejte do claude_desktop_config.json:

{ "mcpServers": { "rejstrik": { "command": "uvx", "args": ["rejstrik-mcp"] } } }

Codex (~/.codex/config.toml):

[mcp_servers.rejstrik]
command = "uvx"
args = ["rejstrik-mcp"]

Libovolný HTTP host: uvx rejstrik-mcp --http servíruje streamable HTTP na http://127.0.0.1:8000/mcp.

Nástroje

Čtení dělá váš agent v rámci vašeho předplatného; server dělá vše deterministické:

Nástroj Co dělá
find_company Najde firmu podle názvu nebo IČO (ARES)
list_filings Vypíše dokumenty ze Sbírky listin, účetní závěrky první
get_filing Stáhne PDF závěrky (nejnovější, dle roku, dle id) — vrací lokální cestu + page_count; embed řídí, zda se vrátí i bajty PDF ("auto" výchozí, "always", "never")
read_filing_text Textová vrstva PDF po stránkách, bez LLM/OCR; stránky bez textové vrstvy poctivě ohlásí
read_filing_page_images Stránky PDF jako PNG obrázky — pro skenované závěrky bez textové vrstvy
analyze_financials Vaše vytěžené hodnoty → poměrové ukazatele, red flags, index IN05, meziroční trendy (bez LLM)
estimate_valuation Vaše vytěžené hodnoty → orientační hodnota firmy: sektorový násobek EV/EBITDA (Damodaran Europe) upravený na český soukromý podnik, bodový odhad s pásmem spolehlivosti a výpisem všech korekcí. Bez LLM. Není investiční doporučení
render_card Report jako karta — interaktivní HTML pro hosty s MCP Apps, markdown pro textové hosty jako Claude Code
check_insolvency Insolvenční rejstřík (ISIR)
get_statutory_bodies Statutární orgány (ARES)
check_vat Registrace k DPH + příznak nespolehlivého plátce (ARES + ADIS)
get_subsidies Přijaté státní dotace (IS ReD, dříve CEDR)
get_contracts Smlouvy firmy z Registru smluv

Skuteční majitelé. Veřejná část ESM (Evidence skutečných majitelů) byla po rozsudku Soudního dvora EU k 17. 12. 2025 uzavřena; dotazy na skutečné majitele proto záměrně nenabízíme — jde o zdokumentované rozhodnutí o rozsahu, ne o mezeru.

Jak to funguje

core/      sdílené HTTP + textové utility
registry/  ARES, ISIR (insolvence), ADIS (DPH), statutární orgány
filings/   klient Sbírky listin (verejnerejstriky.msp.gov.cz,
           s fallbackem na starší or.justice.cz při blokaci)
documents/ stažení a cache PDF + extrakce textu / obrázků stránek
analysis/  normalizace -> ukazatele -> red flags -> trendy (čisté, bez I/O)
service/   orchestrace (rejstříky + listiny + dokumenty + analýza)
cli/ mcp/  dvě tváře nad jedním jádrem

Server je zcela bezklíčový: dokumenty čte volající model (Claude apod.), server dodává data a deterministické výpočty. Vytěžená data se předávají přes Pydantic schéma FinancialStatement — vestavěný prompt analyze-company agenta instruuje, jak čísla přepisovat doslova včetně deklarovaného měřítka („v celých tisících Kč“).

Poznámka k driftu reálného světa

V průběhu vývoje Ministerstvo spravedlnosti migrovalo Sbírku listin z or.justice.cz na nový portál (verejnerejstriky.msp.gov.cz). Klient míří na API nového portálu. V červenci 2026 začal nový portál vracet automatizovaným klientům blokace Azure Front Door (403/429/5xx i 200 s challenge HTML) — klient je všechny detekuje jako blokaci a přepadne na starší portál, takže jediná zablokovaná edge lokalita nevyřadí vyhledávání. Kanárek v scripts/smoke.py testuje oba portály přímo a hlásí PASS/BLOCKED po endpointech, takže se drift odhalí před vydáním, ne u uživatelů.

Data oborových násobků pro ocenění

src/rejstrik/analysis/data/industry_multiples.json vendoruje oborové EV/EBITDA násobky Damodaran Europe (zdroj, source_url, as_of i region jsou v souboru). NACE slouží jen jako mapovací klíč do Damodaranovy taxonomie — žádné ručně laděné násobky. Regenerace (síť, manuálně, nikdy v CI):

pip install xlrd
python scripts/import_damodaran_multiples.py --as-of YYYY-MM-DD

CI

Workflow v .github/workflows/ci.yml pouští ruff a pytest na Pythonu 3.11 a 3.12. Testy jsou záměrně offline a bez klíčů — zelené CI znamená, že fixtures, parsery, servisní vrstva, CLI i MCP registrace jsou vnitřně konzistentní bez závislosti na dostupnosti živých endpointů.

Vývoj

pip install -e ".[dev]"
ruff check src/ tests/
ruff format --check src/ tests/
python -m pytest -q

Užitečné ruční smoke testy:

rejstrik find "Budejovicky Budvar"
rejstrik filings 00514152
rejstrik-mcp
python scripts/smoke.py   # vyžaduje síť — před vydáním, ne v CI

Poděkování / attribution

Klienti pro insolvenci (ISIR), DPH/nespolehlivé plátce (ADIS) a statutární orgány jsou adaptovaní z cz-agents-mcp (MIT, Martin Havel). Viz LICENSES/cz-agents-mcp-LICENSE.

Vydávání

  1. Jednorázově: na pypi.org přidejte Trusted Publisher pro tento GitHub repozitář (workflow release.yml, environment pypi).
  2. Zvedněte version na všech čtyřech místech, aby souhlasila: pyproject.toml, server.json (top-level i packages[0].version), mcpb/manifest.json a src/rejstrik/__init__.py (__version__). tests/test_version_sync.py selže, pokud se rozjedou.
  3. Pokud vydání mění publikovaný server, znovu proveďte publish do MCP registru s aktualizovaným server.json.
  4. Commit, tag vX.Y.Z, push tagu. CI sestaví balíček, publikuje na PyPI a připojí artefakty ke GitHub release.

Licence

MIT.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rejstrik_mcp-0.9.1.tar.gz (642.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rejstrik_mcp-0.9.1-py3-none-any.whl (57.7 kB view details)

Uploaded Python 3

File details

Details for the file rejstrik_mcp-0.9.1.tar.gz.

File metadata

  • Download URL: rejstrik_mcp-0.9.1.tar.gz
  • Upload date:
  • Size: 642.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rejstrik_mcp-0.9.1.tar.gz
Algorithm Hash digest
SHA256 8b8811cc3b5f546f62c4bb5c743d5ad4871e1ce16a3601abbac2f8c202aba9e1
MD5 50e74e1b29ecdf9af1b52826c4eb5039
BLAKE2b-256 3e2485006e90982bc7f935ccd5224446e39f92aef2ab39ad61c80b7f918598e5

See more details on using hashes here.

Provenance

The following attestation bundles were made for rejstrik_mcp-0.9.1.tar.gz:

Publisher: release.yml on janF19/rejstrik-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rejstrik_mcp-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: rejstrik_mcp-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 57.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rejstrik_mcp-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d2eb7694083a16aac0c6fc9da844404fb2eb99ec07077187a3e44720ba000bd2
MD5 53e70eefdeff4927ef5e41e7c8b10ae8
BLAKE2b-256 a6e7416002e93968b24081a77a47482dd5b7b33cac2d5d13d14a49702dad8ef5

See more details on using hashes here.

Provenance

The following attestation bundles were made for rejstrik_mcp-0.9.1-py3-none-any.whl:

Publisher: release.yml on janF19/rejstrik-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.9.2

2 files

This release

0.9.1 This release

2 files

0.9.0

2 files

0.8.0

2 files

0.7.0

2 files

0.4.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page