Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,528Letters: 13Defects: 1,322counted 1 min ago
teppi

Server definition

Hash
sha256:e53bdb5db6c247226f6c93d316428b6a03991144f572930bf56b442c2d11279f
What it is
What a remote MCP server returned when asked what it offers: 37 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Returns details for one Berlin borough (Bezirk) by ID, optionally with all its districts.\n\nParameters:\n- bezirk_id (required): 2-digit ID (\"01\" to \"12\")\n- ortsteile: \"true\" to include all districts of the borough\n\nKey response fields: { bezirk_id, bezirk_name, ortsteile?: [...] } (ortsteile = districts)\n\nExample: bezirk_id=\"03\" → Pankow with 13 districts (Prenzlauer Berg, Weißensee, etc.)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "pattern": "^\\d{2}$", "type": "string" }, "include": { "type": "string" }, "ortsteile": { "default": "false", "enum": [ "true", "false" ], "type": "string" } }, "required": [ "bezirk_id" ], "type": "object" }, "name": "berlin_borough_details", "outputSchema": null }, { "description": "Returns all 12 Berlin boroughs (Bezirke) with IDs and names.\n\nKey response fields: array of { bezirk_id, bezirk_name }\n- bezirk_id: 2 digits (\"01\" to \"12\")\n- bezirk_name: e.g. \"Mitte\", \"Friedrichshain-Kreuzberg\", \"Pankow\"\n\nUse when:\n- You need an overview of Berlin's administrative structure\n- You need a bezirk_id for market data queries\n\nDo NOT use when:\n- You already know the bezirk_id → use berlin_borough_details directly", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "berlin_boroughs", "outputSchema": null }, { "description": "Returns a single Berlin social conservation area (Milieuschutzgebiet) by ID. For main areas, associated extensions are embedded automatically.\n\nParameters:\n- id (required): 12-character hex string (deterministic area ID)\n- include: comma-separated geo attributes; available: \"centroid\". Polygons are provided as GeoJSON URLs in geometry_urls\n\nKey response fields: { id, name, kategorie_id, kategorie_name, parent_id, beschreibung (description), datum (date), flaeche_km2 (area in km²), geometry_urls, centroid?, erweiterungen? (extensions) }", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "id": { "description": "12-stelliger Hex-String der Gebiets-ID", "type": "string" }, "include": { "description": "Geo-Attribute: centroid. Polygone kommen als GeoJSON-URLs in geometry_urls", "enum": [ "centroid" ], "type": "string" } }, "required": [ "id" ], "type": "object" }, "name": "berlin_conservation_area_details", "outputSchema": null }, { "description": "Berlin social conservation areas (Milieuschutzgebiete, §172 BauGB). 124 areas in 6 categories with polygon geometry.\n\nParameters:\n- kategorie_id: filter by category (\"erhaltungsgebiet\" | \"erweiterung\" | \"aufstellungsbeschluss\" | \"untersuchungsgebiet\" | \"beobachtungsgebiet\" | \"aufgehoben\")\n- erweiterungen: \"true\" to embed extensions as a nested array inside their main area\n- include: comma-separated geo attributes; available: \"centroid\". Polygons are provided as GeoJSON URLs in geometry_urls\n- lat/lon: WGS84 point lookup. Returns only areas containing the point (typically 0 or 1 match). lat and lon must be provided together.\n\nKey response fields: array of { id, name, kategorie_id, kategorie_name, parent_id, beschreibung (description), datum (date), flaeche_km2 (area in km²), geometry_urls, centroid?, erweiterungen? (extensions) }\n\nUse for: \"Is this address in a social conservation area?\" (with lat/lon), overview of all Milieuschutz areas.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "erweiterungen": { "description": "Erweiterungen als nested Array einbetten", "enum": [ "true", "false" ], "type": "string" }, "include": { "description": "Geo-Attribute: centroid. Polygone kommen als GeoJSON-URLs in geometry_urls", "enum": [ "centroid" ], "type": "string" }, "kategorie_id": { "description": "Filter nach Kategorie", "enum": [ "erhaltungsgebiet", "erweiterung", "aufstellungsbeschluss", "untersuchungsgebiet", "beobachtungsgebiet", "aufgehoben" ], "type": "string" }, "lat": { "description": "Breitengrad WGS84 für Punkt-Lookup (mit lon)", "type": "number" }, "lon": { "description": "Längengrad WGS84 für Punkt-Lookup (mit lat)", "type": "number" } }, "type": "object" }, "name": "berlin_conservation_areas", "outputSchema": null }, { "description": "Returns details for one Berlin district (Ortsteil) by ID, optionally with its neighborhoods.\n\nParameters:\n- ortsteil_id (required): 4-digit ID (e.g. \"0301\")\n- planungsraeume: \"true\" to include all neighborhoods of the district\n\nKey response fields: { ortsteil_id, ortsteil_name, bezirk_id, bezirk_name, planungsraeume?: [...] } (planungsraeume = neighborhoods)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "include": { "type": "string" }, "ortsteil_id": { "pattern": "^\\d{4}$", "type": "string" }, "planungsraeume": { "default": "false", "enum": [ "true", "false" ], "type": "string" } }, "required": [ "ortsteil_id" ], "type": "object" }, "name": "berlin_district_details", "outputSchema": null }, { "description": "Returns all 97 Berlin districts (Ortsteile), optionally filtered by borough.\n\nParameters:\n- bezirk_id (optional): filter to the districts of one borough\n- bezirke: \"true\" to include borough references\n\nKey response fields: array of { ortsteil_id, ortsteil_name, bezirk_id?, bezirk_name? }\n- ortsteil_id: 4 digits (e.g. \"0301\" for Prenzlauer Berg)\n\nExamples of well-known districts:\n- Prenzlauer Berg (0301), Kreuzberg (0201), Mitte (0101)\n- Charlottenburg (0401), Neukölln (0801), Friedrichshain (0202)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "pattern": "^\\d{2}$", "type": "string" }, "bezirke": { "default": "false", "enum": [ "true", "false" ], "type": "string" }, "include": { "type": "string" } }, "type": "object" }, "name": "berlin_districts", "outputSchema": null }, { "description": "Returns details for one Berlin neighborhood (LOR Planungsraum) by ID, optionally with its blocks.\n\nParameters:\n- planungsraum_id (required): 8-digit ID\n- bloecke: \"true\" to include all blocks of the neighborhood\n\nKey response fields: { planungsraum_id, planungsraum_name, bezirk_id, bezirk_name, ortsteil_id, ortsteil_name, bloecke?: [...] } (bloecke = blocks)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "include": { "type": "string" }, "planungsraum_id": { "pattern": "^\\d{8}$", "type": "string" } }, "required": [ "planungsraum_id" ], "type": "object" }, "name": "berlin_neighborhood_details", "outputSchema": null }, { "description": "Searches Berlin neighborhoods (LOR Planungsräume) by name.\n\nParameters:\n- q (required): search term (min. 3 characters)\n- limit: max. results (default: 25)\n- bezirk_id/ortsteil_id: optional filters to narrow the search\n\nExample: q=\"Kollwitz\" finds the \"Kollwitzplatz\" neighborhood", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "pattern": "^\\d{2}$", "type": "string" }, "bezirke": { "default": "false", "enum": [ "true", "false" ], "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "pattern": "^\\d{4}$", "type": "string" }, "ortsteile": { "default": "false", "enum": [ "true", "false" ], "type": "string" }, "q": { "minLength": 3, "type": "string" } }, "required": [ "q" ], "type": "object" }, "name": "berlin_neighborhood_search", "outputSchema": null }, { "description": "Returns all 542 Berlin neighborhoods (LOR Planungsräume), optionally filtered by borough or district.\n\nParameters:\n- bezirk_id (optional): filter by borough\n- ortsteil_id (optional): filter by district\n- bezirke/ortsteile: \"true\" to include parent references\n\nKey response fields: array of { planungsraum_id, planungsraum_name, ... }\n- planungsraum_id: 8 digits (e.g. \"03010101\")\n\nNeighborhoods are the finest statistical level in Berlin.\nIdeal for granular market analyses.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "pattern": "^\\d{2}$", "type": "string" }, "bezirke": { "default": "false", "enum": [ "true", "false" ], "type": "string" }, "include": { "type": "string" }, "ortsteil_id": { "pattern": "^\\d{4}$", "type": "string" }, "ortsteile": { "default": "false", "enum": [ "true", "false" ], "type": "string" } }, "type": "object" }, "name": "berlin_neighborhoods", "outputSchema": null }, { "description": "Returns field definitions for interpreting API responses.\n\nUse this to understand fields, units, data types, and sources.\n\nParameters:\n- domain (optional): specific domain for detailed field information\n- locale: \"de\" (default) | \"en\"\n\nAvailable domains:\n- berlin: geographic reference data — Boroughs (Bezirke), Districts (Ortsteile), Neighborhoods (LOR Planungsräume)\n- immobilienmarkt.berlin.wohnungen: Berlin apartment market\n- immobilienmarkt.berlin.mehrfamilienhaeuser: Berlin apartment buildings\n- makrooekonomie.kapitalmarkt: mortgage lending rates, Bund yields\n- makrooekonomie.geldpolitik: ECB policy rates\n- makrooekonomie.arbeitsmarkt: unemployment, employment\n\nWithout a domain parameter: returns an overview of all available domains.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "domain": { "description": "Domain für Feld-Metadaten. Weglassen für Übersicht aller Domains.", "enum": [ "berlin", "immobilienmarkt", "immobilienmarkt.berlin.wohnungen", "immobilienmarkt.berlin.mehrfamilienhaeuser", "immobilienmarkt.de.wohnungen", "immobilienmarkt.de.mehrfamilienhaeuser", "makrooekonomie", "makrooekonomie.kapitalmarkt", "makrooekonomie.geldpolitik", "makrooekonomie.arbeitsmarkt", "makrooekonomie.preise", "makrooekonomie.wirtschaft", "soziodemografie", "soziodemografie.berlin.zensus", "soziodemografie.berlin.bautaetigkeit", "soziodemografie.berlin.wanderung", "soziodemografie.berlin.wanderung.matrix", "soziodemografie.berlin.einwohner", "soziodemografie.berlin.einwohner.altersgruppen", "soziodemografie.berlin.einwohner.herkunft" ], "type": "string" }, "locale": { "default": "de", "description": "Sprache für Labels und Beschreibungen (Standard: de)", "enum": [ "de", "en" ], "type": "string" } }, "type": "object" }, "name": "field_metadata", "outputSchema": null }, { "description": "One GUTHMANN listing in detail: prices and running costs, areas, amenities, energy certificate, exposé texts, images, contact and the exposé URL on guthmann.estate. When the address is not released, street/house number are null and the coordinate is deterministically offset by 150-300 m (koordinaten_versetzt = true).\n\nParameters:\n- public_id: public listing id (hex, from listings or the exposé URL)\n- locale: \"de\" | \"en\" (default: en)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "locale": { "default": "en", "enum": [ "de", "en" ], "type": "string" }, "public_id": { "pattern": "^[0-9a-f]{4,12}$", "type": "string" } }, "required": [ "public_id" ], "type": "object" }, "name": "listing_details", "outputSchema": null }, { "description": "The GUTHMANN listings: the broker's active inventory in Berlin (for sale: owner-occupier apartments, investment apartments, apartment buildings, commercial). Every card carries its exposé URL on guthmann.estate. Addresses only for released listings, otherwise ZIP/District (Ortsteil)/Borough (Bezirk).\n\nParameters:\n- segment: \"APARTMENT_LIVING\" | \"APARTMENT_INVEST\" | \"APARTMENT_BUILDING\" | \"COMMERCIAL\"\n- bezirk / ortsteil: name filter, e.g. \"Pankow\" / \"Prenzlauer Berg\"\n- preis_min / preis_max: purchase price in EUR\n- zimmer_min, flaeche_min: lower bounds for rooms / living area (m²)\n- locale: \"de\" | \"en\" for title, texts and exposé URL (default: en)\n- limit: 1-100 (default: 50)\n\nKey response fields:\n- public_id (key for listing_details), titel (title), teaser, expose_url\n- kaufpreis (purchase price), kaufpreis_pro_qm (price per m²), kaltmiete (net rent), bruttorendite (gross yield), mietfaktor (price-to-rent multiple)\n- wohnflaeche (living area), anzahl_zimmer (rooms), baujahr (construction year), energie_wertklasse (energy class)\n- bezirk (Borough), ortsteil (District), plz (ZIP), adresse (null when adresse_verborgen), bild (small first-party preview image, suitable for inline display)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk": { "maxLength": 40, "minLength": 2, "type": "string" }, "flaeche_min": { "minimum": 1, "type": "number" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "locale": { "default": "en", "enum": [ "de", "en" ], "type": "string" }, "ortsteil": { "maxLength": 40, "minLength": 2, "type": "string" }, "preis_max": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "preis_min": { "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "segment": { "enum": [ "APARTMENT_LIVING", "APARTMENT_INVEST", "APARTMENT_BUILDING", "COMMERCIAL" ], "type": "string" }, "zimmer_min": { "minimum": 1, "type": "number" } }, "type": "object" }, "name": "listings", "outputSchema": null }, { "description": "Yields on German government bonds (Bunds). Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n- limit, fields, include: \"metadata\"\n\nKey response fields (German names):\n- rendite_10j: 10-year Bund yield\n- rendite_15j: 15-year Bund yield\n- rendite_30j: 30-year Bund yield", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_bund_yields", "outputSchema": null }, { "description": "Construction price index for residential buildings. Source: Bundesbank.\n\nQuarterly data (2015=100).\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n\nKey response fields (German names):\n- preisindex: construction price index\n- preisindex_delta_1q: change vs. previous quarter\n- preisindex_delta_1j: change vs. previous year", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_construction_prices", "outputSchema": null }, { "description": "ECB key interest rates. Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n- limit, fields, include: \"metadata\"\n\nKey response fields (German names):\n- zinssatz_hauptrefinanzierungssatz: main refinancing rate (the ECB's key rate)\n- zinssatz_einlagefazilitaet: deposit facility rate\n- zinssatz_spitzenrefinanzierungsfazilitaet: marginal lending facility rate", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_ecb_policy_rates", "outputSchema": null }, { "description": "GDP data (gross domestic product). Source: Bundesbank.\n\nQuarterly data, price-adjusted, seasonally and calendar-adjusted (2015=100).\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n\nKey response fields (German names):\n- kettenindex: GDP chain-linked index\n- kettenindex_delta_1q: change vs. previous quarter\n- kettenindex_delta_1j: change vs. previous year", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_gdp", "outputSchema": null }, { "description": "Inflation data (HICP - harmonized index of consumer prices). Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n\nKey response fields (German names):\n- hvpi_gesamt: overall HICP\n- hvpi_gesamt_ohne_energie_nahrungsmittel: core inflation (HICP excluding energy and food)\n- hvpi_energie, hvpi_nahrungsmittel, hvpi_dienstleistungen, hvpi_mieten: energy, food, services, rents", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_inflation_hicp", "outputSchema": null }, { "description": "Employment statistics. Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n\nKey response fields (German names):\n- erwerbstaetige: persons in employment (seasonally adjusted)\n- sv_beschaeftigte: employees subject to social insurance contributions\n- geringfuegig_beschaeftigte: marginally employed (mini-jobs)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_labor_employment", "outputSchema": null }, { "description": "Short-time work (Kurzarbeit) statistics. Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n\nKey response fields (German names):\n- kurzarbeiter: short-time workers (seasonally adjusted)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_labor_short_time_work", "outputSchema": null }, { "description": "Unemployment statistics. Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n\nKey response fields (German names):\n- arbeitslose: registered unemployed (seasonally adjusted)\n- arbeitslosenquote: unemployment rate (%)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_labor_unemployment", "outputSchema": null }, { "description": "Mortgage rates for residential housing loans. Source: Bundesbank.\n\nParameters:\n- start/end: YYYY-MM-DD\n- recent: number of most recent periods\n- limit, fields, include: \"metadata\"\n\nKey response fields (German names):\n- zinssatz_gesamt: average rate across all fixed-interest periods\n- zinssatz_5_bis_10j: rate for 5-10 year fixed-interest periods\n- zinssatz_ueber_10j: rate for fixed-interest periods over 10 years\n- volumen_gesamt: new lending volume", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "macro_mortgage_lending", "outputSchema": null }, { "description": "Berlin apartment building market (rental buildings, \"Zinshäuser\") - transaction data. Source: transaction data from the Berlin committee of valuation experts (GAA, Gutachterausschuss).\n\nParameters:\n- rbs: \"stadt\" | \"bezirk\" | \"stadtteil\" | \"ortsteil\" — bezirk = Borough, ortsteil = District\n\nTime filters:\n- start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD)\n- recent: number of most recent periods (alternative to start/end)\n\nAdditional filters:\n- bezirk_id, stadtteil_id, ortsteil_id\n- limit, fields, include: \"metadata\"\n\nKey response fields:\n- transaktionspreis: average total purchase price (€)\n- transaktionen: number of transactions\n- vielfaches: purchase price multiplier (purchase price / annual net cold rent)\n- vielfaches_delta_*j: absolute change of the multiplier (1y, 5y, 10y, 15y)\n- transaktionspreis_m2: price per m² of living space\n\nIdeal for: investment market analysis, yield comparisons across locations", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "type": "string" }, "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "market_berlin_apartment_buildings", "outputSchema": null }, { "description": "Berlin apartment market data (listings + transactions). Sources: listing/offer data (IMV) + transaction data from the Berlin committee of valuation experts (GAA, Gutachterausschuss).\n\nParameters:\n- zeitraum: \"jahr\" (default) | \"monat\" | \"quartal\" (abgeschlossene Quartale)\n - jahr: transaction data (GAA) + listing data (IMV), finest level: block\n - monat: listing data (IMV) only, finest level: District (Ortsteil)\n - quartal: listing data (IMV) only, closed quarters, finest level: District (Ortsteil)\n\n- rbs: spatial aggregation level — bezirk = Borough, ortsteil = District, planungsraum = Neighborhood (LOR Planungsraum)\n - For zeitraum=jahr: \"stadt\" | \"bezirk\" | \"stadtteil\" | \"ortsteil\" | \"planungsraum\" | \"block\"\n - For zeitraum=monat or quartal: \"stadt\" | \"bezirk\" | \"stadtteil\" | \"ortsteil\"\n\nTime filters:\n- start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD)\n- recent: number of most recent periods (alternative to start/end)\n\nAdditional filters:\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id, block_id\n- baualtertyp: \"neubau\" (new construction) | \"bestand\" (existing stock)\n- limit, fields, include: \"metadata\"\n\nKey response fields (depending on zeitraum):\n- zeitraum=jahr: transaktionspreis_m2 (transaction price per m²), anzahl_transaktionen (number of transactions), kaufangebotspreis_m2 (asking sale price per m²), mietangebotspreis_m2 (asking rent per m²)\n- zeitraum=monat: kaufangebotspreis_m2, anzahl_kaufangebote (number of sale listings), kaufangebot_vermarktungszeit (time on market)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "baualtertyp": { "enum": [ "bestand", "neubau" ], "type": "string" }, "bezirk_id": { "type": "string" }, "end": { "type": "string" }, "fields": { "type": "string" }, "include": { "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "type": "string" }, "planungsraum_id": { "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil", "planungsraum" ], "type": "string" }, "recent": { "type": [ "string", "number" ] }, "start": { "type": "string" } }, "type": "object" }, "name": "market_berlin_apartments", "outputSchema": null }, { "description": "National price index data for the German apartment building market. Source: vdp.\n\nQuarterly data for apartment buildings (rental buildings, \"Mehrfamilienhäuser\") across Germany.\n\nTime filters:\n- start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD)\n- recent: number of most recent periods (quarters)\n\nResponse controls:\n- limit, fields, include: \"metadata\"\n\nKey response fields:\n- preisindex: price index for apartment buildings\n- preisindex_delta_1q: quarter-over-quarter change\n- preisindex_delta_1j: year-over-year change", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "description": "Ende des Zeitraums (YYYY, YYYY-MM oder YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn des Zeitraums (YYYY, YYYY-MM oder YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "market_germany_apartment_buildings", "outputSchema": null }, { "description": "National market data for the German residential real estate market. Sources: DESTATIS, vdp, HYPOPORT.\n\nIncludes price AND transaction indices for various market segments.\n\nParameters:\n- zeitraum: \"jahr\" (default) | \"quartal\"\n - jahr: all price and transaction indices, regional and per source\n - quartal: only the Germany-wide price indices of DESTATIS, vdp and HYPOPORT, current up to the second-to-last quarter; periode like \"2026-Q2\"; DESTATIS arrives one quarter after the other two\n\nTime filters:\n- start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD)\n- recent: number of most recent periods (years or quarters)\n\nResponse controls:\n- limit, fields, include: \"metadata\"\n\nKey response fields:\nPRICE INDICES:\n- preisindex_gesamt_destatis, preisindex_gesamt_vdp, preisindex_gesamt_hypoport (overall price index per source)\n- preisindex_landkreise_kreisfreie_staedte (all districts), preisindex_grossstaedte_top_7 (top-7 major cities), preisindex_staedte_top_127 (top-127 cities) (zeitraum=jahr only)\n\n- *_delta_1j / *_delta_proz_1j: change vs. previous year (quarterly: vs. same quarter a year earlier)\n- *_delta_1q / *_delta_proz_1q: change vs. previous quarter (zeitraum=quartal only)\n\nTRANSACTION INDICES (zeitraum=jahr only):\n- transaktionsindex_landkreise_kreisfreie_staedte, transaktionsindex_grossstaedte_top_7, transaktionsindex_staedte_top_127", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "description": "Ende des Zeitraums (YYYY, YYYY-MM oder YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn des Zeitraums (YYYY, YYYY-MM oder YYYY-MM-DD)", "type": "string" }, "zeitraum": { "default": "jahr", "enum": [ "jahr", "quartal" ], "type": "string" } }, "type": "object" }, "name": "market_germany_residential", "outputSchema": null }, { "description": "Semantic search over guthmann.estate — market insights, reports, neighborhood portraits, listing exposés, project pages and the company's own pages. Hybrid retrieval (vector + keyword, no reranking); one result per page with title, description, image, best-matching snippet and score. Use it for questions that need prose (analysis, context, advice); use the data tools for exact numbers and `listings` for what is currently for sale — the search index follows the website with up to six hours of delay.\n\nParameters:\n- q: natural-language query, in the language of the pages you want (min 2 characters)\n- locale: \"de\" | \"en\" — language of the indexed pages (default: en)\n- section: comma-separated filter — \"listings\" (exposés), \"projects\" (new-build projects), \"market-intelligence\" (insights, reports, portraits), \"pages\" (company, services, guides); omit for all\n- limit: 1-20 pages (default: 10)\n\nKey response fields:\n- url, title, description, image, section, language\n- snippet (best-matching text passage), score (0-1)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 20)", "maximum": 20, "minimum": 1, "type": "integer" }, "locale": { "default": "en", "enum": [ "de", "en" ], "type": "string" }, "q": { "maxLength": 200, "minLength": 2, "type": "string" }, "section": { "pattern": "^(listings|projects|market-intelligence|pages)(,(listings|projects|market-intelligence|pages))*$", "type": "string" } }, "required": [ "q" ], "type": "object" }, "name": "search", "outputSchema": null }, { "description": "Berlin population by 8 age groups, additionally by population group. Source: Amt für Statistik Berlin-Brandenburg.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- bevoelkerungsgruppe: \"alle\" (all) | \"mit_migrationshintergrund\" (with migration background) (optional)\n- altersgruppe: age group, e.g. \"alter_unter_6\", \"alter_65_und_mehr\" (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- bevoelkerungsgruppe_id/_name (population group), altersgruppe_id/_name (age group), anzahl_einwohner (number of residents)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "altersgruppe": { "description": "Altersgruppe (z.B. alter_unter_6)", "type": "string" }, "bevoelkerungsgruppe": { "description": "Bevölkerungsgruppe: alle, mit_migrationshintergrund", "enum": [ "alle", "mit_migrationshintergrund" ], "type": "string" }, "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_age_groups", "outputSchema": null }, { "description": "Zensus 2022 building data for Berlin. Source: Statistisches Bundesamt, Zensus 2022.\n\nWithout a category: total number of buildings.\nWith a category:\n- bauweise: construction type (detached, row house, semi-detached)\n- eigentumsform: ownership type (private individual, cooperative, municipality)\n- heizungsart: heating type (central heating, per-floor heating, individual stoves)\n- energietraeger: energy source (gas, oil, district heating, electricity)\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- kategorie: \"bauweise\" | \"eigentumsform\" | \"heizungsart\" | \"energietraeger\" (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "kategorie": { "description": "Kategorie: bauweise, eigentumsform, heizungsart, energietraeger", "enum": [ "bauweise", "eigentumsform", "heizungsart", "energietraeger" ], "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_census_buildings", "outputSchema": null }, { "description": "Zensus 2022 dwelling stock data for Berlin. Source: Statistisches Bundesamt, Zensus 2022.\n\nWithout a category: total number of dwellings.\nWith a category:\n- raeume: breakdown by number of rooms\n- flaeche: breakdown by floor-area cluster (under 40 m², 40-59 m², etc.)\n- nutzung: breakdown by type of use (owner-occupied, rented, vacant)\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- kategorie: \"raeume\" | \"flaeche\" | \"nutzung\" (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "kategorie": { "description": "Kategorie: raeume, flaeche, nutzung", "enum": [ "raeume", "flaeche", "nutzung" ], "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "planungsraum_id": { "description": "Planungsraum-ID (8-stellig)", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil", "planungsraum" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_census_dwellings", "outputSchema": null }, { "description": "Zensus 2022 household data for Berlin. Source: Statistisches Bundesamt, Zensus 2022.\n\nWithout a category: total number of households.\nWith a category:\n- groesse: household size (1 person, 2 persons, etc.)\n- wohndauer: length of residence (under 1 year, 1-5 years, etc.)\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- kategorie: \"groesse\" | \"wohndauer\" (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "kategorie": { "description": "Kategorie: groesse, wohndauer", "enum": [ "groesse", "wohndauer" ], "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_census_households", "outputSchema": null }, { "description": "Zensus 2022 rent data for Berlin. Source: Statistisches Bundesamt, Zensus 2022.\n\nWithout a category: weighted average across all dwellings (net cold rent, net cold rent per m², count).\nWith category \"flaeche\": rent per m² by floor-area cluster.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- kategorie: \"flaeche\" (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- nettokaltmiete: average net cold rent (EUR)\n- nettokaltmiete_m2: net cold rent per m² (EUR)\n- anzahl_wohnungen: number of dwellings", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "kategorie": { "description": "Kategorie: flaeche. Ohne: Gesamtdurchschnitt", "enum": [ "flaeche" ], "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_census_rents", "outputSchema": null }, { "description": "Zensus 2022 dwelling vacancy data for Berlin. Source: Statistisches Bundesamt, Zensus 2022.\n\nBreakdown by vacancy category (duration or reason).\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- kategorie: \"dauer\" (duration) | \"grund\" (reason) (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- kategorie_id, kategorie_label: vacancy category\n- anzahl: number of vacant dwellings", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "kategorie": { "description": "Kategorie: dauer, grund", "enum": [ "dauer", "grund" ], "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_census_vacancy", "outputSchema": null }, { "description": "Construction activity data for Berlin. Source: Amt für Statistik Berlin-Brandenburg.\n\nShows net changes: building balance, dwelling balance, living-space balance.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end: period (YYYY, YYYY-MM, YYYY-MM-DD)\n- recent: number of most recent periods\n- limit, fields, include: \"metadata\"\n\nKey response fields:\n- gebaeude_saldo: net change in number of buildings\n- wohnungen_saldo: net change in number of dwellings\n- wohnflaeche_m2_saldo: net change in living space (m²)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_construction_activity", "outputSchema": null }, { "description": "External migration for Berlin: migration across the city boundary, annual, by nationality. Source: Amt für Statistik Berlin-Brandenburg.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- staat_code: filter by country code (e.g. \"000\" for Germany)\n- alpha2: filter by ISO 3166-1 alpha-2 code (e.g. \"TR\")\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- zuzuege: move-ins to Berlin\n- fortzuege: move-outs from Berlin\n- saldo: net migration (move-ins minus move-outs)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "alpha2": { "description": "ISO 3166-1 Alpha-2 (z.B. \"TR\")", "type": "string" }, "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "staat_code": { "description": "Staatencode (3-stellig, z.B. \"000\")", "type": "string" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_migration_external", "outputSchema": null }, { "description": "Migration matrix for Berlin: migration flows between areas (moves within Berlin, annual). The RBS level applies to both origin and destination. Source: Amt für Statistik Berlin-Brandenburg.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum) (default: bezirk)\n- von_rbs_id: filter by origin-area ID\n- nach_rbs_id: filter by destination-area ID\n- min_personen: lower bound on number of persons (default 1)\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- von_rbs_id/von_rbs_name: origin area\n- nach_rbs_id/nach_rbs_name: destination area\n- anzahl_personen: number of moves", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "min_personen": { "description": "Untere Schranke Anzahl Personen (Default 1)", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "nach_rbs_id": { "description": "Filter Zielraum-ID", "type": "string" }, "rbs": { "default": "bezirk", "enum": [ "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "von_rbs_id": { "description": "Filter Herkunftsraum-ID", "type": "string" } }, "type": "object" }, "name": "socio_berlin_migration_matrix", "outputSchema": null }, { "description": "Berlin population with a migration background, by area of origin. Source: Amt für Statistik Berlin-Brandenburg.\n\n⚠️ herkunft_ebene: \"eu_gesamt\" is the aggregate over the individual \"eu_land\" entries. The default (drittland,eu_gesamt,nicht_zuordenbar) prevents double-counting EU countries.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood, LOR Planungsraum)\n- herkunft_ebene: origin level, comma-separated, e.g. \"drittland,eu_gesamt\" (optional; default prevents double counting)\n- herkunftsgebiet: area of origin, e.g. \"tuerkei\", \"ukraine\", \"eu\" (optional)\n- top: top N areas of origin by count (optional)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- herkunftsgebiet_id/_name (area of origin), herkunft_ebene (origin level), anzahl_einwohner_mit_migrationshintergrund (residents with a migration background)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "herkunftsgebiet": { "description": "Herkunftsgebiet (z.B. tuerkei, ukraine, eu)", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "planungsraum_id": { "description": "Planungsraum-ID (8-stellig)", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "stadtteil_id": { "description": "Stadtteil-ID (2-stellig)", "type": "string" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "top": { "description": "Top-N Herkunftsgebiete nach Anzahl", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" } }, "type": "object" }, "name": "socio_berlin_origin", "outputSchema": null }, { "description": "Population stock for Berlin (headline figures) at the Neighborhood level (LOR Planungsraum), semi-annual. Source: Amt für Statistik Berlin-Brandenburg.\n\nParameters:\n- rbs: \"stadt\" (city) | \"bezirk\" (Borough) | \"stadtteil\" | \"ortsteil\" (District) | \"planungsraum\" (Neighborhood)\n- bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters\n- start/end, recent, limit, fields, include: \"metadata\"\n\nKey response fields:\n- einwohner_gesamt (total population), einwohner_maennlich/_weiblich (male/female)\n- einwohner_deutsch/_auslaendisch (German/foreign nationals), einwohner_ohne/_mit_migrationshintergrund (without/with migration background)\n- frauen_anteil, auslaender_anteil, migrationshintergrund_anteil: shares of women, foreign nationals, migration background (0–1)", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "bezirk_id": { "description": "Bezirk-ID (2-stellig, z.B. \"03\")", "type": "string" }, "end": { "description": "Ende (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" }, "fields": { "description": "Komma-getrennte Feldnamen", "type": "string" }, "include": { "description": "metadata für Feld-Metadaten inline", "type": "string" }, "limit": { "description": "Maximale Anzahl Ergebnisse (öffentlich bis 1000)", "maximum": 1000, "minimum": 1, "type": "integer" }, "ortsteil_id": { "description": "Ortsteil-ID (4-stellig, z.B. \"0301\")", "type": "string" }, "planungsraum_id": { "description": "Planungsraum-ID (8-stellig)", "type": "string" }, "rbs": { "default": "stadt", "enum": [ "stadt", "bezirk", "ortsteil", "planungsraum" ], "type": "string" }, "recent": { "description": "Anzahl der aktuellsten Perioden", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "start": { "description": "Beginn (YYYY, YYYY-MM, YYYY-MM-DD)", "type": "string" } }, "type": "object" }, "name": "socio_berlin_population", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:e53bdb5db6c247226f6c93d316428b6a03991144f572930bf56b442c2d11279f | sha256sum