EvidujZdarma – EET 2.0 (Czech sales registration)
Czech EET 2.0 from 1 Jan 2027: check an IČO, classify payments, EET OFF cost, cited facts.
Should I use this
Quality & Safety
Findings (2)
- HIGH
- MEDIUMin eet_search_guides
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"eet": {
"url": "https://evidujzdarma.cz/api/mcp"
}
}
}Remote endpoints
https://evidujzdarma.cz/api/mcpstreamable-httpWhat it can do
Tool inventory
Tools (8)
🟢eet_check_ico(ico, accepts_in_person_payments, flat_tax_band, income_under_1m, response_format)
Look up a Czech business by IČO in the public ARES register and estimate whether EET 2.0 (mandatory sales registration from 1 Jan 2027) applies, whether EET OFF is available, and what to do next (personal checklist with dates). The estimate uses legal form, CZ-NACE activities and trade licences (RŽP) from ARES. ARES does not show whether the business accepts payments in person or uses the flat-rate tax, so pass the optional answers when you know them — they override the heuristics. Args: - ico (string): 8-digit Czech company ID, spaces allowed, e.g. "27082440". - accepts_in_person_payments ('yes'|'no'|'unknown'): cash/card/QR accepted in person or at premises? - flat_tax_band ('band1'|'band2'|'band3'|'no'|'unknown'): paušální daň band, 'no' = not in the flat-rate regime. - income_under_1m ('yes'|'no'|'unknown'): yearly self-employment income up to 1,000,000 CZK? - response_format ('markdown'|'json'). Returns: subject (name, legal form, VAT payer, municipality), verdict ('likely'|'possible'|'unlikely'|'dissolved'), headline, eet_off ('possible'|'not_available'|'check') with explanation, reasons, checklist [{date, title, text, url}], url of the full check on the website, catalog_url of the subject's page in the company catalogue (basic registry data, billing details, EET estimate). Don't use for: payment-type questions (use eet_classify_payment) or the EET OFF cost comparison (use eet_calculate_eet_off).
Input Schema
{
"type": "object",
"properties": {
"ico": {
"type": "string",
"minLength": 6,
"maxLength": 12,
"description": "Czech IČO (8 digits), e.g. \"27082440\""
},
"accepts_in_person_payments": {
"default": "unknown",
"description": "Does the business accept payments in person (cash, card, QR at the premises)?",
"type": "string",
"enum": [
"yes",
"no",
"unknown"
]
},
"flat_tax_band": {
"default": "unknown",
"description": "Flat-rate tax (paušální daň) band, or 'no'.",
"type": "string",
"enum": [
"band1",
"band2",
"band3",
"no",
"unknown"
]
},
"income_under_1m": {
"default": "unknown",
"description": "Yearly self-employment income up to 1,000,000 CZK?",
"type": "string",
"enum": [
"yes",
"no",
"unknown"
]
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"required": [
"ico"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_calculate_eet_off(flat_tax_band, yearly_income_czk, start_month, minutes_per_day, work_days_per_month, ...)
Compare the EET OFF surcharge (1 400 Kč/month added to the flat-rate tax instead of registering sales) with the real cost of registering sales (time × hourly rate + POS cost + hardware spread over 3 years). Handles businesses that start mid-year (surcharge only from the start month). EET OFF is only for natural persons in band 1 of the flat-rate tax with income up to 1,000,000 CZK; for others the tool returns eligible=false with the reason. Args: - flat_tax_band (1|2|3|0): 0 = not in the flat-rate regime. - yearly_income_czk (number): self-employment income per year in CZK. - start_month (1-12, default 1): month the business starts in 2027; 1 = whole year. - minutes_per_day (default 5), work_days_per_month (default 21), hourly_rate_czk (default 300), pos_cost_monthly_czk (default 0 – the EvidujZdarma POS is free), hardware_one_off_czk (default 0). - response_format ('markdown'|'json'). Returns: eligible, reason (if not), verdict ('eet-off'|'evidence'|'tie'), surcharge_czk, evidence_cost_czk, difference_czk (positive = evidence costs more), months, flat_tax_monthly_2027_czk, rules (deadline, binding year, exceeding 1M, exit).
Input Schema
{
"type": "object",
"properties": {
"flat_tax_band": {
"anyOf": [
{
"type": "number",
"const": 0
},
{
"type": "number",
"const": 1
},
{
"type": "number",
"const": 2
},
{
"type": "number",
"const": 3
}
],
"description": "Flat-rate tax band 1–3, or 0 if not in the regime"
},
"yearly_income_czk": {
"type": "number",
"minimum": 0,
"maximum": 100000000,
"description": "Yearly self-employment income in CZK"
},
"start_month": {
"default": 1,
"description": "Month of starting the business in 2027 (1 = whole year)",
"type": "integer",
"minimum": 1,
"maximum": 12
},
"minutes_per_day": {
"default": 5,
"description": "Minutes per working day spent on sales registration",
"type": "number",
"minimum": 0,
"maximum": 600
},
"work_days_per_month": {
"default": 21,
"type": "number",
"minimum": 0,
"maximum": 31
},
"hourly_rate_czk": {
"default": 300,
"description": "Value of one hour of your time in CZK",
"type": "number",
"minimum": 0,
"maximum": 100000
},
"pos_cost_monthly_czk": {
"default": 0,
"description": "Monthly POS/app cost in CZK (EvidujZdarma = 0)",
"type": "number",
"minimum": 0,
"maximum": 100000
},
"hardware_one_off_czk": {
"default": 0,
"description": "One-off hardware cost in CZK (spread over 3 years)",
"type": "number",
"minimum": 0,
"maximum": 1000000
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"required": [
"flat_tax_band",
"yearly_income_czk"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_classify_payment(payment, in_person, response_format)
Decide whether a payment is an evidenced sale ("kontaktní platba") under EET 2.0. Payments accepted in person or at the premises (cash, card, QR scanned on site, meal vouchers of another company, prepaid credit drawdown, deposits, virtual assets, cheques) are evidenced; redeeming a gift voucher for specific goods or a service is not a payment and is not evidenced (its sale was); remote payments (bank transfer for an invoice, e-shop payment gateway, QR on an invoice/website) are not. Args: - payment ('cash'|'card'|'qr_code'|'meal_voucher'|'credit'|'gift_voucher'|'deposit'|'voucher'|'virtual_assets'|'cheque'|'bank_transfer'|'online_gateway'|'cash_on_delivery') - in_person (boolean): was the payment made during personal contact or at the business premises? - response_format ('markdown'|'json'). Returns: evidenced ('yes'|'no'|'uncertain'), explanation, note, sources, guide url. 'uncertain' marks cases that need confirmation by a tax adviser (bank transfer made on site, cash on delivery). Activity-level exemptions are not evaluated here (see eet_get_facts topic 'exemptions').
Input Schema
{
"type": "object",
"properties": {
"payment": {
"type": "string",
"enum": [
"cash",
"card",
"qr_code",
"meal_voucher",
"credit",
"gift_voucher",
"deposit",
"voucher",
"virtual_assets",
"cheque",
"bank_transfer",
"online_gateway",
"cash_on_delivery"
],
"description": "Payment instrument"
},
"in_person": {
"type": "boolean",
"description": "Payment made during personal contact or at the premises"
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"required": [
"payment",
"in_person"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_get_facts(topics, response_format)
Return short, sourced facts about EET 2.0 on chosen topics (Czech text, each with official/primary sources and the date the facts were verified). Topics: law, timeline, january_pilot, who_must, exemptions, evidenced_payments, offline, receipt, units, certificate, eet_off, flat_tax, tax_credit, penalties, moje_eet, law_history. Omit 'topics' to get all of them. Key corrections this tool reflects: January 2027 is NOT a statutory pilot/grace period (evidence is mandatory from 1 Jan 2027); there is NO "occasional sales up to 50,000 CZK" exemption in the adopted law; the tax credit is "up to" 5,000 CZK for self-employed persons only. Args: - topics (array of topic names, optional) - response_format ('markdown'|'json'). Returns: facts [{topic, title, text, sources[{label,url}]}], facts_updated.
Input Schema
{
"type": "object",
"properties": {
"topics": {
"description": "Topics to return; omit for all",
"minItems": 1,
"maxItems": 16,
"type": "array",
"items": {
"type": "string",
"enum": [
"law",
"timeline",
"january_pilot",
"who_must",
"exemptions",
"evidenced_payments",
"offline",
"receipt",
"units",
"certificate",
"eet_off",
"flat_tax",
"tax_credit",
"penalties",
"moje_eet",
"law_history"
]
}
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_list_misconceptions(query, response_format)
Return claims about EET 2.0 that circulate in media and on commercial websites but contradict the adopted law or official Finanční správa information — each with what actually applies, a dated "as of", our opinion (clearly labelled) and sources. Use it to fact-check a claim before answering. Args: - query (string, optional): filter by words, e.g. "leden", "50 000", "POK", "karta". - response_format ('markdown'|'json'). Returns: items [{id, question, claim, truth, comment, as_of, sources, url}], page_url.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Optional filter, e.g. \"leden\" or \"POK\"",
"type": "string",
"maxLength": 100
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_search_guides(query, limit, response_format)
Full-text search in the EvidujZdarma guides about EET 2.0 (in Czech): who must register sales, contact payments, units, DIS+ and certificates, EET OFF, penalties, offline operation, receipts, accommodation, hairdressers, craftsmen, selling on behalf of another person, glossary. Args: - query (string): Czech or English keywords, e.g. "ubytování kauce", "certifikát DIS+", "bez internetu". - limit (1-10, default 5). - response_format ('markdown'|'json'). Returns: results [{slug, title, description, updated, reviewed, url}]. Use eet_get_guide with the slug to read the full text. 'reviewed' = checked by our expert reviewer (see https://evidujzdarma.cz/o-nas#odborna-revize).
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 200,
"description": "Search keywords"
},
"limit": {
"default": 5,
"type": "integer",
"minimum": 1,
"maximum": 10
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"required": [
"query"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_get_guide(slug, response_format)
Return the full text of one EvidujZdarma guide (Czech, Markdown) including FAQ and sources, by slug from eet_search_guides. Args: - slug (string): a slug returned by eet_search_guides. Only guides that passed expert review are available. - response_format ('markdown'|'json'). Returns: slug, title, url, updated, reviewed, text (truncated at 25,000 characters).
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"pattern": "^[a-z0-9-]{2,80}$",
"description": "Guide slug from eet_search_guides"
},
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"required": [
"slug"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}🟢eet_get_fs_status(response_format)
Return the current availability of the Finanční správa EET 2.0 interface (production trzbyeet.gov.cz and the Playground test environment) as measured every 5 minutes by EvidujZdarma: status ('up'|'slow'|'down'), last check, latency, uptime for 24 h / 7 days / 30 days and recent outages. It measures reachability of the server, not the processing of individual sales. Official outage notices are published on eet.gov.cz. Args: - response_format ('markdown'|'json').
Input Schema
{
"type": "object",
"properties": {
"response_format": {
"default": "markdown",
"description": "Output format: 'markdown' (human-readable, default) or 'json' (machine-readable).",
"type": "string",
"enum": [
"markdown",
"json"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}Community
Evidence