german-tax-data
German municipal tax data (Hundesteuer, Zweitwohnungsteuer, Pfaendung), cited to the source
Should I use this
Quality & Safety
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": {
"german-tax-data": {
"url": "https://data.crelvo.dev/mcp"
}
}
}Remote endpoints
https://data.crelvo.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (10)
🟢list_datasets
List the available hand-verified German municipal tax/fee datasets (Hundesteuer, Zweitwohnungsteuer, Pfändung), their coverage, source sites and refresh cadence. Call this first to see what you can query.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪hundesteuer_lookup(city, dogs, listed)
Look up the German dog tax (Hundesteuer) for a city: annual rate for one or more dogs, listed-dog (Listenhund) surcharge, the city's pricing model, its rank among the largest cities, plus the official source and Stand. Rates verified against each municipal Satzung.
Input Schema
{
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "City name or slug, e.g. \"Köln\", \"muenchen\", \"Frankfurt\""
},
"dogs": {
"default": 1,
"description": "Number of dogs (default 1)",
"type": "integer",
"minimum": 1,
"maximum": 10
},
"listed": {
"default": false,
"description": "Treat as a listed/dangerous-breed dog (Listenhund) if the city has a higher rate",
"type": "boolean"
}
},
"required": [
"city"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪hundesteuer_ranking(limit, order)
Ranking of German cities by Hundesteuer (first dog, per year): most expensive or cheapest, plus the national average across the covered cities.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"default": 10,
"description": "How many cities to return",
"type": "integer",
"minimum": 1,
"maximum": 100
},
"order": {
"default": "expensive",
"type": "string",
"enum": [
"expensive",
"cheapest"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪hundesteuer_by_state
Average German dog tax (Hundesteuer, first dog per year) per Bundesland (federal state), aggregated over the covered largest cities — the data behind the Deutschlandkarte. Answers 'which German state has the highest/lowest dog tax'. Note: a mean over cities, not an official state rate (the tax is municipal).
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢hundesteuer_changes(year)
List German cities that changed their Hundesteuer (dog tax) rate in a given year — the fresh-news angle for the annual city comparison. Only 2026 is curated, and it is the default: 14 of the covered cities changed their rate, led by Köln (174 EUR), Lübeck (156 EUR), Lünen (156 EUR). Also returns outlook_2027: 5 cities that have announced or resolved an increase for 2027 but are NOT yet charging it — announced and in force are kept apart deliberately. Every entry checked individually against the municipal statute.
Input Schema
{
"type": "object",
"properties": {
"year": {
"default": 2026,
"type": "integer",
"minimum": 2020,
"maximum": 2030
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢zweitwohnungsteuer_lookup(city, monthly_rent)
Look up the German second-home tax (Zweitwohnungsteuer) for a city: whether the city levies it, the rate and its basis (net cold rent etc.), the rank among cities, official source and Stand. Optionally pass a monthly cold rent to get the annual tax. Returns state = keine_steuer | berechenbar | sondermodell.
Input Schema
{
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "City name or slug, e.g. \"Stuttgart\", \"muenchen\", \"Konstanz\""
},
"monthly_rent": {
"default": null,
"description": "Monthly cold rent (Kaltmiete) in EUR, to compute the annual tax (only for computable cities)",
"anyOf": [
{
"type": "number",
"minimum": 0
},
{
"type": "null"
}
]
}
},
"required": [
"city"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢zweitwohnungsteuer_ranking(limit, order)
Ranking of German cities by Zweitwohnungsteuer rate: highest or lowest, plus the average, count with a computable rate, and count of cities with no second-home tax.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"default": 10,
"description": "How many cities to return",
"type": "integer",
"minimum": 1,
"maximum": 120
},
"order": {
"default": "expensive",
"type": "string",
"enum": [
"expensive",
"cheapest"
]
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢zweitwohnungsteuer_changes(year)
List German cities that changed (raised or newly introduced) their Zweitwohnungsteuer in a given year — the fresh-news angle. Only 2026 is curated, and it is the default: 12 cities changed their rate, led by Potsdam (25 %), Borkum (22 %), Stuttgart (20 %). Every entry checked individually against the municipality's own statute.
Input Schema
{
"type": "object",
"properties": {
"year": {
"default": 2026,
"type": "integer",
"minimum": 2020,
"maximum": 2030
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪zweitwohnungsteuer_by_state
Average German second-home tax (Zweitwohnungsteuer) rate in percent per Bundesland (federal state), aggregated over the levying cities with a computable rate — the data behind the Deutschlandkarte. Answers 'which German state has the highest/lowest second-home tax'. Note: a mean over cities, not an official state rate (the tax is municipal).
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢pfaendung_calc(net_income_eur, dependents)
Compute the attachable portion of monthly net income under German §850c ZPO (Pfändung / wage garnishment), using the current official Pfändungsfreigrenzenbekanntmachung. Returns attachable amount, remaining amount, exempt base and the P-Konto base. Informational, not legal advice.
Input Schema
{
"type": "object",
"properties": {
"net_income_eur": {
"type": "number",
"minimum": 0,
"description": "Monthly NET income in EUR"
},
"dependents": {
"default": 0,
"description": "Number of maintenance-dependent persons (0-5)",
"type": "integer",
"minimum": 0,
"maximum": 5
}
},
"required": [
"net_income_eur"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence