Server definition
- Hash
- sha256:3a15e764f5a1d6f997de52c5650b3a0f85e050e62c1bfb34de422d54d3520355
- What it is
- What a remote MCP server returned when asked what it offers: 14 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Given the paušální daň band you paid and the actual annual income, computes whether you owe a doplatek (top-up), get a vratka (refund), or must exit the flat-tax regime (income above 2,000,000 CZK).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"actualAnnualIncome": {
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"currentBand": {
"description": "Band actually paid during the year",
"enum": [
"band1",
"band2",
"band3"
],
"type": "string"
},
"flatRatePercent": {
"anyOf": [
{
"const": 0.4,
"type": "number"
},
{
"const": 0.6,
"type": "number"
},
{
"const": 0.8,
"type": "number"
}
],
"description": "Flat-rate expense percentage as a decimal: 0.4 (other business), 0.6 (most freelancers / živnost volná), 0.8 (craft trades)"
},
"isProjection": {
"default": false,
"description": "True for a mid-year projection instead of a final settlement",
"type": "boolean"
},
"monthsInRegime": {
"default": 12,
"maximum": 12,
"minimum": 1,
"type": "integer"
}
},
"required": [
"currentBand",
"actualAnnualIncome"
],
"type": "object"
},
"name": "calc_flat_tax_settlement",
"outputSchema": null
},
{
"description": "How much of a monthly OSVČ income to set aside for Czech income tax, social and health insurance, and what remains safe to spend. Supports mixed §7 business + §9 rental income and the paušální daň (flat tax) regimes.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"activityType": {
"default": "main",
"enum": [
"main",
"secondary"
],
"type": "string"
},
"advanceExempt": {
"default": false,
"type": "boolean"
},
"employerCoversHealth": {
"default": false,
"type": "boolean"
},
"flatRatePercent": {
"anyOf": [
{
"const": 0.4,
"type": "number"
},
{
"const": 0.6,
"type": "number"
},
{
"const": 0.8,
"type": "number"
}
],
"default": 0.6,
"description": "Flat-rate expense percentage as a decimal: 0.4 (other business), 0.6 (most freelancers / živnost volná), 0.8 (craft trades)"
},
"monthlyIncome": {
"description": "Gross monthly business income in CZK (§ 7 ZDP)",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"reducedMinimumBase": {
"default": false,
"description": "New OSVČ in the first 2 years (lower social minimum)",
"type": "boolean"
},
"rentalMonthlyIncome": {
"description": "Monthly rental income in CZK (§ 9 ZDP); triggers the mixed-income calculation",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"secondaryThresholdExceeded": {
"default": false,
"type": "boolean"
},
"taxRegime": {
"default": "standard",
"enum": [
"standard",
"pausal_band_1",
"pausal_band_2",
"pausal_band_3"
],
"type": "string"
}
},
"required": [
"monthlyIncome"
],
"type": "object"
},
"name": "calc_set_aside",
"outputSchema": null
},
{
"description": "Screens whether an OSVČ may enter or stay in the paušální daň (flat tax) regime: public health insurance participation (decisive for foreigners), VAT-payer status, income ceiling 2,000,000 CZK, side income and secondary activity. Returns reasons with severity.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"activityType": {
"enum": [
"main",
"secondary"
],
"type": "string"
},
"annualIncome": {
"description": "Expected annual business income in CZK",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"citizenshipType": {
"description": "eu = EU/EEA citizen; non_eu_public = non-EU participating in Czech public health insurance (e.g. dočasná ochrana, employment); non_eu_private = non-EU with private/commercial insurance only",
"enum": [
"eu",
"non_eu_public",
"non_eu_private"
],
"type": "string"
},
"isVATRegistered": {
"description": "Full VAT payer (plátce DPH). Identifikovaná osoba is NOT blocking.",
"type": "boolean"
},
"publicHealthStatus": {
"enum": [
"public",
"outside",
"unknown"
],
"type": "string"
},
"rentalAnnualIncome": {
"maximum": 100000000,
"minimum": 0,
"type": "number"
}
},
"required": [
"annualIncome"
],
"type": "object"
},
"name": "check_flat_tax_eligibility",
"outputSchema": null
},
{
"description": "Checks whether buying services from abroad (Google Ads, Meta, ChatGPT, hosting…) or selling services to EU businesses has made an OSVČ an identifikovaná osoba under § 6h/§ 6i ZDPH, with the 15-day registration deadline (§ 97) and fact-freshness handling. Verdict: ok / check / act_now.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"foreignSales": {
"description": "Year-to-date foreign client income for the sales-side (§ 6i) check",
"items": {
"additionalProperties": false,
"properties": {
"amount": {
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"clientLocation": {
"enum": [
"cz",
"eu",
"non_eu",
"unknown"
],
"type": "string"
},
"clientVatStatus": {
"enum": [
"business_vat_id",
"business_no_vat_id",
"consumer",
"unknown"
],
"type": "string"
}
},
"required": [
"amount"
],
"type": "object"
},
"maxItems": 100,
"type": "array"
},
"foreignServicePurchase": {
"description": "Foreign service purchases: none_confirmed = verified none, possible = maybe (e.g. runs online ads), qualifying_confirmed = a qualifying purchase from a non-CZ supplier is confirmed",
"enum": [
"unknown",
"none_confirmed",
"possible",
"qualifying_confirmed"
],
"type": "string"
},
"foreignServicePurchaseConfirmedAt": {
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"type": "string"
},
"purchaseDate": {
"description": "Date of the qualifying purchase; drives the 15-day § 97 registration deadline",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"type": "string"
},
"today": {
"description": "Evaluation date; defaults to today",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"type": "string"
},
"vatStatus": {
"description": "Current VAT status of the OSVČ",
"enum": [
"unknown",
"not_registered",
"identified_person",
"vat_payer"
],
"type": "string"
},
"vatStatusConfirmedAt": {
"description": "When the VAT status was last confirmed (freshness window 180 days)",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"type": "string"
}
},
"required": [
"vatStatus",
"foreignServicePurchase"
],
"type": "object"
},
"name": "check_io_trigger",
"outputSchema": null
},
{
"description": "Checks an annual income against the four statutory thresholds: VAT registration 2,000,000 CZK, immediate VAT registration 2,536,500 CZK, the 23% higher tax bracket, and the paušální daň eligibility ceiling. Reports approaching (90%), exceeded and remaining amounts.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"annualIncome": {
"maximum": 100000000,
"minimum": 0,
"type": "number"
}
},
"required": [
"annualIncome"
],
"type": "object"
},
"name": "check_thresholds",
"outputSchema": null
},
{
"description": "Compares the standard OSVČ regime against paušální daň (flat tax) for a yearly income, including tax credits that would be lost with the flat tax (children, spouse), and recommends the cheaper regime.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"annualIncome": {
"description": "Gross annual business income in CZK",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"deductions": {
"additionalProperties": false,
"properties": {
"dipContributions": {
"minimum": 0,
"type": "number"
},
"lifeInsuranceContributions": {
"minimum": 0,
"type": "number"
},
"mortgageInterestPaid": {
"minimum": 0,
"type": "number"
},
"mortgageIsOwnHousing": {
"type": "boolean"
},
"mortgageLoanYear": {
"maximum": 2030,
"minimum": 1990,
"type": "integer"
},
"pensionContributions": {
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"flatRatePercent": {
"anyOf": [
{
"const": 0.4,
"type": "number"
},
{
"const": 0.6,
"type": "number"
},
{
"const": 0.8,
"type": "number"
}
],
"default": 0.6,
"description": "Flat-rate expense percentage as a decimal: 0.4 (other business), 0.6 (most freelancers / živnost volná), 0.8 (craft trades)"
},
"hasChildUnder3": {
"type": "boolean"
},
"isMarried": {
"type": "boolean"
},
"numberOfChildren": {
"maximum": 10,
"minimum": 0,
"type": "integer"
},
"rentalAnnualIncome": {
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"spouseIncomeUnderLimit": {
"description": "Spouse annual income under the credit limit (sleva na manžela/manželku)",
"type": "boolean"
}
},
"required": [
"annualIncome"
],
"type": "object"
},
"name": "compare_regimes",
"outputSchema": null
},
{
"description": "Computes a full Czech OSVČ tax year from personal facts: income tax with credits (children, spouse, deductions), social and health insurance, monthly set-aside, safe-to-spend, flat-tax band and regime-eligibility evaluation. All figures come from the deterministic Freelax engine, never from the model.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"activityType": {
"default": "main",
"enum": [
"main",
"secondary"
],
"type": "string"
},
"annualBusinessIncome": {
"description": "Exact annual business income in CZK; takes precedence over the monthly figure",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"children": {
"default": [],
"items": {
"additionalProperties": false,
"properties": {
"birthYear": {
"maximum": 2030,
"minimum": 1950,
"type": "integer"
},
"hasZTP": {
"default": false,
"type": "boolean"
},
"isStudying": {
"default": false,
"type": "boolean"
}
},
"required": [
"birthYear"
],
"type": "object"
},
"maxItems": 10,
"type": "array"
},
"citizenshipType": {
"default": "eu",
"enum": [
"eu",
"non_eu_public",
"non_eu_private"
],
"type": "string"
},
"deductions": {
"additionalProperties": false,
"properties": {
"dipContributions": {
"minimum": 0,
"type": "number"
},
"lifeInsuranceContributions": {
"minimum": 0,
"type": "number"
},
"mortgageInterestPaid": {
"minimum": 0,
"type": "number"
},
"mortgageIsOwnHousing": {
"type": "boolean"
},
"mortgageLoanYear": {
"maximum": 2030,
"minimum": 1990,
"type": "integer"
},
"pensionContributions": {
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"disabilityGrade": {
"default": "none",
"enum": [
"none",
"grade_1_2",
"grade_3"
],
"type": "string"
},
"employerCoversHealth": {
"default": false,
"type": "boolean"
},
"flatRatePercent": {
"anyOf": [
{
"const": 0.4,
"type": "number"
},
{
"const": 0.6,
"type": "number"
},
{
"const": 0.8,
"type": "number"
}
],
"default": 0.6,
"description": "Flat-rate expense percentage as a decimal (0.4 / 0.6 / 0.8)"
},
"hasChildUnder3": {
"type": "boolean"
},
"hasReducedSocialMinimum": {
"default": false,
"type": "boolean"
},
"hasZTP": {
"default": false,
"type": "boolean"
},
"isCzechTaxResident": {
"default": true,
"type": "boolean"
},
"isExemptFromMonthlyZalohy": {
"default": false,
"type": "boolean"
},
"isMarried": {
"default": false,
"type": "boolean"
},
"isNewOsvc": {
"default": false,
"type": "boolean"
},
"isVATRegistered": {
"default": false,
"type": "boolean"
},
"monthlyBusinessIncome": {
"description": "Gross monthly business income in CZK (§ 7 ZDP)",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"publicHealthStatus": {
"enum": [
"public",
"outside",
"unknown"
],
"type": "string"
},
"rentalMonthlyIncome": {
"default": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"spouseIncomeUnderLimit": {
"description": "Spouse annual income under the sleva na manžela limit",
"type": "boolean"
},
"targetRegime": {
"description": "Simulate a different regime without changing the stored facts",
"enum": [
"standard",
"pausal_band_1",
"pausal_band_2",
"pausal_band_3"
],
"type": "string"
},
"taxRegime": {
"default": "standard",
"enum": [
"standard",
"pausal_band_1",
"pausal_band_2",
"pausal_band_3"
],
"type": "string"
},
"taxYear": {
"const": 2026,
"default": 2026,
"description": "Only 2026 is supported because the engine currently has a 2026 ruleset",
"type": "number"
}
},
"type": "object"
},
"name": "compute_year",
"outputSchema": null
},
{
"description": "Converts an EUR amount to CZK using the Czech National Bank daily exchange rate (the rate used for Czech tax purposes). Reports the rate, its publication date and whether a stale cached ČNB publication had to be used. Fails closed when no verified ČNB rate is available.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"amountEur": {
"description": "Amount in EUR",
"exclusiveMinimum": 0,
"maximum": 1000000000,
"type": "number"
}
},
"required": [
"amountEur"
],
"type": "object"
},
"name": "convert_eur_czk",
"outputSchema": null
},
{
"description": "Czech public holidays for a year (including movable Easter feasts) and, for a specific date, whether it is a working day and the next working day a statutory deadline would shift to.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"date": {
"description": "Optional date (YYYY-MM-DD) to test for working-day status",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"type": "string"
},
"year": {
"maximum": 2030,
"minimum": 2020,
"type": "integer"
}
},
"required": [
"year"
],
"type": "object"
},
"name": "czech_working_days",
"outputSchema": null
},
{
"description": "Estimates the Czech penalty/interest for a late payment or filing: repo rate + 8 p.p. for insurance and tax interest (3.5% H1 / 3.75% H2 2026), 3 grace days for tax payments, 200 CZK health aggregation floor and the 1,000 CZK tax non-assessment threshold. A dated estimate is rejected when its required rate period falls outside the implemented history.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"daysOverdue": {
"maximum": 3650,
"minimum": 0,
"type": "integer"
},
"dueDate": {
"description": "Original due date (YYYY-MM-DD); anchors the correct half-year repo rate",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"type": "string"
},
"gracePeriodActive": {
"default": false,
"type": "boolean"
},
"obligationType": {
"description": "Obligation family: health/social insurance debt, tax_advance (záloha na daň), pausal (paušální daň payment), tax_return (late filing), prehled_* (late Přehled), annual_social (doplatek)",
"enum": [
"health",
"social",
"tax_advance",
"pausal",
"pausal_oznameni",
"pausal_doplatek",
"tax_return",
"prehled_social",
"prehled_health",
"annual_social"
],
"type": "string"
},
"owedAmount": {
"description": "Outstanding amount in CZK",
"maximum": 100000000,
"minimum": 0,
"type": "number"
}
},
"required": [
"obligationType",
"owedAmount",
"daysOverdue"
],
"type": "object"
},
"name": "estimate_penalty",
"outputSchema": null
},
{
"description": "Deadline for the Czech personal income tax return (DPFO) for a given tax year, per filing route: paper, self-filed electronic, or via tax advisor. Weekend and holiday shifts are applied.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"route": {
"description": "Filing route: standard_deadline = paper/no extension (1 April), self_electronic_extension = filed electronically after 1 April (+1 month), advisor_extension = filed by a tax advisor (1 July)",
"enum": [
"standard_deadline",
"self_electronic_extension",
"advisor_extension"
],
"type": "string"
},
"taxYear": {
"description": "The tax year the return is FOR (e.g. 2025 return is filed in 2026)",
"maximum": 2030,
"minimum": 2020,
"type": "integer"
}
},
"required": [
"taxYear"
],
"type": "object"
},
"name": "get_filing_deadlines",
"outputSchema": null
},
{
"description": "Which paušální daň band (pásmo 1/2/3) an annual income falls into given the expense flat-rate, the current monthly payment for that band, and the next income threshold to watch.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"annualIncome": {
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"flatRatePercent": {
"anyOf": [
{
"const": 0.4,
"type": "number"
},
{
"const": 0.6,
"type": "number"
},
{
"const": 0.8,
"type": "number"
}
],
"default": 0.6,
"description": "Flat-rate expense percentage as a decimal: 0.4 (other business), 0.6 (most freelancers / živnost volná), 0.8 (craft trades)"
}
},
"required": [
"annualIncome"
],
"type": "object"
},
"name": "get_flat_tax_band",
"outputSchema": null
},
{
"description": "Filing deadlines for the annual OSVČ Přehled o příjmech a výdajích for both social insurance (ČSSZ) and the health insurer, per tax-return filing route, plus the payment due date (8 calendar days after the filing deadline).",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"route": {
"description": "Filing route: standard_deadline = paper/no extension (1 April), self_electronic_extension = filed electronically after 1 April (+1 month), advisor_extension = filed by a tax advisor (1 July)",
"enum": [
"standard_deadline",
"self_electronic_extension",
"advisor_extension"
],
"type": "string"
},
"taxYear": {
"maximum": 2030,
"minimum": 2020,
"type": "integer"
}
},
"required": [
"taxYear"
],
"type": "object"
},
"name": "get_prehled_deadlines",
"outputSchema": null
},
{
"description": "For a Czech OSVČ tax topic, returns the governing rule with current values, primary-source citations (zákon, ČSSZ, VZP, Finanční správa) with verification dates, and related Freelax articles. Topics: pausalni_dan, identifikovana_osoba, dph_registrace, zalohy, prehledy, penale, danove_pasmo_23, vedlejsi_cinnost.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"locale": {
"default": "en",
"enum": [
"en",
"cs"
],
"type": "string"
},
"topic": {
"enum": [
"pausalni_dan",
"identifikovana_osoba",
"dph_registrace",
"zalohy",
"prehledy",
"penale",
"danove_pasmo_23",
"vedlejsi_cinnost"
],
"type": "string"
}
},
"required": [
"topic"
],
"type": "object"
},
"name": "get_rule_source",
"outputSchema": null
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:3a15e764f5a1d6f997de52c5650b3a0f85e050e62c1bfb34de422d54d3520355 | sha256sum