protogrid

Search / estate.guthmann/mcp

GUTHMANN® Berlin Real Estate

R0· no sign-in

Berlin real estate for AI agents: granular market data and property search, free, by GUTHMANN®.

v0.3.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality85good
Trust93of 100
Uptime, 30 days100%
Latency p50548 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "guthmann": {
      "type": "http",
      "url": "https://mcp.guthmann.estate/mcp"
    }
  }
}
claude mcp add --transport http guthmann https://mcp.guthmann.estate/mcp
[mcp_servers.guthmann]
url = "https://mcp.guthmann.estate/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "guthmann": {
      "type": "remote",
      "url": "https://mcp.guthmann.estate/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "guthmann": {
      "type": "http",
      "url": "https://mcp.guthmann.estate/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=guthmann&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmd1dGhtYW5uLmVzdGF0ZS9tY3AifQ%3D%3D"
}
{
  "servers": {
    "guthmann": {
      "type": "http",
      "url": "https://mcp.guthmann.estate/mcp"
    }
  }
}
{
  "mcpServers": {
    "guthmann": {
      "httpUrl": "https://mcp.guthmann.estate/mcp"
    }
  }
}
extensions:
  "guthmann":
    enabled: true
    name: "guthmann"
    type: streamable_http
    uri: "https://mcp.guthmann.estate/mcp"
    timeout: 300

Quality 85 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length4 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations37 of 37 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • warn
    tools.token_costabout 12,360 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changes2 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

37 tools, about 12,360 tokens to load them all · tool set 0e84cf62fb6e · tools last changed 2026-10-01 · checked 2026-10-20 17:34 UTC

Tool changes

  • market_germany_residentialchangeddescription, input schema
    before

    National market data for the German residential real estate market. Sources: DESTATIS, vdp, HYPOPORT. Includes price AND transaction indices for various market segments. Time filters: - start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods Response controls: - limit, fields, include: "metadata" Key response fields: PRICE INDICES: - preisindex_gesamt_destatis, preisindex_gesamt_vdp, preisindex_gesamt_hypoport (overall price index per source) - preisindex_grossstaedte_top_7 (top-7 major cities), preisindex_staedte_top_127 (top-127 cities) TRANSACTION INDICES: - transaktionsindex_grossstaedte_top_7, transaktionsindex_staedte_top_127

    after · 57% of words in common

    National market data for the German residential real estate market. Sources: DESTATIS, vdp, HYPOPORT. Includes price AND transaction indices for various market segments. Parameters: - zeitraum: "jahr" (default) | "quartal" - jahr: all price and transaction indices, regional and per source - 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 Time filters: - start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods (years or quarters) Response controls: - limit, fields, include: "metadata" Key response fields: PRICE INDICES: - preisindex_gesamt_destatis, preisindex_gesamt_vdp, preisindex_gesamt_hypoport (overall price index per source) - preisindex_landkreise_kreisfreie_staedte (all districts), preisindex_grossstaedte_top_7 (top-7 major cities), preisindex_staedte_top_127 (top-127 cities) (zeitraum=jahr only) - *_delta_1j / *_delta_proz_1j: change vs. previous year (quarterly: vs. same quarter a year earlier) - *_delta_1q / *_delta_proz_1q: change vs. previous quarter (zeitraum=quartal only) TRANSACTION INDICES (zeitraum=jahr only): - transaktionsindex_landkreise_kreisfreie_staedte, transaktionsindex_grossstaedte_top_7, transaktionsindex_staedte_top_127

  • berlin_districtschangeddescription
    before

    Returns all 96 Berlin districts (Ortsteile), optionally filtered by borough. Parameters: - bezirk_id (optional): filter to the districts of one borough - bezirke: "true" to include borough references Key response fields: array of { ortsteil_id, ortsteil_name, bezirk_id?, bezirk_name? } - ortsteil_id: 4 digits (e.g. "0301" for Prenzlauer Berg) Examples of well-known districts: - Prenzlauer Berg (0301), Kreuzberg (0201), Mitte (0101) - Charlottenburg (0401), Neukölln (0801), Friedrichshain (0202)

    after · 96% of words in common

    Returns all 97 Berlin districts (Ortsteile), optionally filtered by borough. Parameters: - bezirk_id (optional): filter to the districts of one borough - bezirke: "true" to include borough references Key response fields: array of { ortsteil_id, ortsteil_name, bezirk_id?, bezirk_name? } - ortsteil_id: 4 digits (e.g. "0301" for Prenzlauer Berg) Examples of well-known districts: - Prenzlauer Berg (0301), Kreuzberg (0201), Mitte (0101) - Charlottenburg (0401), Neukölln (0801), Friedrichshain (0202)

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 93 / 100

provenance85
liveness100
freshness85
hygiene100

+repository +dns-namespace +website +reachable +uptime-100% ~updated-49d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.guthmann.estate/mcp streamable-httpnoneyes100%548 ms2025-11-252026-10-20

Tools (37)

berlin_borough_detailsread-onlyReturns details for one Berlin borough (Bezirk) by ID, optionally with all its districts. Parameters: - bezirk_id (required): 2-digit ID ("01" to "12") - ortsteile: "true" to include all districts of the borough Key response fields: { bezirk_id, bezirk_name, ortsteile?: [...] } (ortsteile = districts) Example: bezirk_id="03" → Pankow with 13 districts (Prenzlauer Berg, Weißensee, etc.)
berlin_boroughsread-onlyReturns all 12 Berlin boroughs (Bezirke) with IDs and names. Key response fields: array of { bezirk_id, bezirk_name } - bezirk_id: 2 digits ("01" to "12") - bezirk_name: e.g. "Mitte", "Friedrichshain-Kreuzberg", "Pankow" Use when: - You need an overview of Berlin's administrative structure - You need a bezirk_id for market data queries Do NOT use when: - You already know the bezirk_id → use berlin_borough_details directly
berlin_conservation_area_detailsread-onlyReturns a single Berlin social conservation area (Milieuschutzgebiet) by ID. For main areas, associated extensions are embedded automatically. Parameters: - id (required): 12-character hex string (deterministic area ID) - include: comma-separated geo attributes; available: "centroid". Polygons are provided as GeoJSON URLs in geometry_urls Key response fields: { id, name, kategorie_id, kategorie_name, parent_id, beschreibung (description), datum (date), flaeche_km2 (area in km²), geometry_urls, centroid?, erweiterungen? (extensions) }
berlin_conservation_areasread-onlyBerlin social conservation areas (Milieuschutzgebiete, §172 BauGB). 124 areas in 6 categories with polygon geometry. Parameters: - kategorie_id: filter by category ("erhaltungsgebiet" | "erweiterung" | "aufstellungsbeschluss" | "untersuchungsgebiet" | "beobachtungsgebiet" | "aufgehoben") - erweiterungen: "true" to embed extensions as a nested array inside their main area - include: comma-separated geo attributes; available: "centroid". Polygons are provided as GeoJSON URLs in geometry_urls - lat/lon: WGS84 point lookup. Returns only areas containing the point (typically 0 or 1 match). lat and lon must be provided together. Key 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) } Use for: "Is this address in a social conservation area?" (with lat/lon), overview of all Milieuschutz areas.
berlin_district_detailsread-onlyReturns details for one Berlin district (Ortsteil) by ID, optionally with its neighborhoods. Parameters: - ortsteil_id (required): 4-digit ID (e.g. "0301") - planungsraeume: "true" to include all neighborhoods of the district Key response fields: { ortsteil_id, ortsteil_name, bezirk_id, bezirk_name, planungsraeume?: [...] } (planungsraeume = neighborhoods)
berlin_districtsread-onlyReturns all 97 Berlin districts (Ortsteile), optionally filtered by borough. Parameters: - bezirk_id (optional): filter to the districts of one borough - bezirke: "true" to include borough references Key response fields: array of { ortsteil_id, ortsteil_name, bezirk_id?, bezirk_name? } - ortsteil_id: 4 digits (e.g. "0301" for Prenzlauer Berg) Examples of well-known districts: - Prenzlauer Berg (0301), Kreuzberg (0201), Mitte (0101) - Charlottenburg (0401), Neukölln (0801), Friedrichshain (0202)
berlin_neighborhood_detailsread-onlyReturns details for one Berlin neighborhood (LOR Planungsraum) by ID, optionally with its blocks. Parameters: - planungsraum_id (required): 8-digit ID - bloecke: "true" to include all blocks of the neighborhood Key response fields: { planungsraum_id, planungsraum_name, bezirk_id, bezirk_name, ortsteil_id, ortsteil_name, bloecke?: [...] } (bloecke = blocks)
berlin_neighborhoodsread-onlyReturns all 542 Berlin neighborhoods (LOR Planungsräume), optionally filtered by borough or district. Parameters: - bezirk_id (optional): filter by borough - ortsteil_id (optional): filter by district - bezirke/ortsteile: "true" to include parent references Key response fields: array of { planungsraum_id, planungsraum_name, ... } - planungsraum_id: 8 digits (e.g. "03010101") Neighborhoods are the finest statistical level in Berlin. Ideal for granular market analyses.
berlin_neighborhood_searchread-onlySearches Berlin neighborhoods (LOR Planungsräume) by name. Parameters: - q (required): search term (min. 3 characters) - limit: max. results (default: 25) - bezirk_id/ortsteil_id: optional filters to narrow the search Example: q="Kollwitz" finds the "Kollwitzplatz" neighborhood
field_metadataread-onlyReturns field definitions for interpreting API responses. Use this to understand fields, units, data types, and sources. Parameters: - domain (optional): specific domain for detailed field information - locale: "de" (default) | "en" Available domains: - berlin: geographic reference data — Boroughs (Bezirke), Districts (Ortsteile), Neighborhoods (LOR Planungsräume) - immobilienmarkt.berlin.wohnungen: Berlin apartment market - immobilienmarkt.berlin.mehrfamilienhaeuser: Berlin apartment buildings - makrooekonomie.kapitalmarkt: mortgage lending rates, Bund yields - makrooekonomie.geldpolitik: ECB policy rates - makrooekonomie.arbeitsmarkt: unemployment, employment Without a domain parameter: returns an overview of all available domains.
listing_detailsread-onlyOne 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). Parameters: - public_id: public listing id (hex, from listings or the exposé URL) - locale: "de" | "en" (default: en)
listingsread-onlyThe 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). Parameters: - segment: "APARTMENT_LIVING" | "APARTMENT_INVEST" | "APARTMENT_BUILDING" | "COMMERCIAL" - bezirk / ortsteil: name filter, e.g. "Pankow" / "Prenzlauer Berg" - preis_min / preis_max: purchase price in EUR - zimmer_min, flaeche_min: lower bounds for rooms / living area (m²) - locale: "de" | "en" for title, texts and exposé URL (default: en) - limit: 1-100 (default: 50) Key response fields: - public_id (key for listing_details), titel (title), teaser, expose_url - kaufpreis (purchase price), kaufpreis_pro_qm (price per m²), kaltmiete (net rent), bruttorendite (gross yield), mietfaktor (price-to-rent multiple) - wohnflaeche (living area), anzahl_zimmer (rooms), baujahr (construction year), energie_wertklasse (energy class) - bezirk (Borough), ortsteil (District), plz (ZIP), adresse (null when adresse_verborgen), bild (small first-party preview image, suitable for inline display)
macro_bund_yieldsread-onlyYields on German government bonds (Bunds). Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods - limit, fields, include: "metadata" Key response fields (German names): - rendite_10j: 10-year Bund yield - rendite_15j: 15-year Bund yield - rendite_30j: 30-year Bund yield
macro_construction_pricesread-onlyConstruction price index for residential buildings. Source: Bundesbank. Quarterly data (2015=100). Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods Key response fields (German names): - preisindex: construction price index - preisindex_delta_1q: change vs. previous quarter - preisindex_delta_1j: change vs. previous year
macro_ecb_policy_ratesread-onlyECB key interest rates. Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods - limit, fields, include: "metadata" Key response fields (German names): - zinssatz_hauptrefinanzierungssatz: main refinancing rate (the ECB's key rate) - zinssatz_einlagefazilitaet: deposit facility rate - zinssatz_spitzenrefinanzierungsfazilitaet: marginal lending facility rate
macro_gdpread-onlyGDP data (gross domestic product). Source: Bundesbank. Quarterly data, price-adjusted, seasonally and calendar-adjusted (2015=100). Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods Key response fields (German names): - kettenindex: GDP chain-linked index - kettenindex_delta_1q: change vs. previous quarter - kettenindex_delta_1j: change vs. previous year
macro_inflation_hicpread-onlyInflation data (HICP - harmonized index of consumer prices). Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods Key response fields (German names): - hvpi_gesamt: overall HICP - hvpi_gesamt_ohne_energie_nahrungsmittel: core inflation (HICP excluding energy and food) - hvpi_energie, hvpi_nahrungsmittel, hvpi_dienstleistungen, hvpi_mieten: energy, food, services, rents
macro_labor_employmentread-onlyEmployment statistics. Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods Key response fields (German names): - erwerbstaetige: persons in employment (seasonally adjusted) - sv_beschaeftigte: employees subject to social insurance contributions - geringfuegig_beschaeftigte: marginally employed (mini-jobs)
macro_labor_short_time_workread-onlyShort-time work (Kurzarbeit) statistics. Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods Key response fields (German names): - kurzarbeiter: short-time workers (seasonally adjusted)
macro_labor_unemploymentread-onlyUnemployment statistics. Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods Key response fields (German names): - arbeitslose: registered unemployed (seasonally adjusted) - arbeitslosenquote: unemployment rate (%)
macro_mortgage_lendingread-onlyMortgage rates for residential housing loans. Source: Bundesbank. Parameters: - start/end: YYYY-MM-DD - recent: number of most recent periods - limit, fields, include: "metadata" Key response fields (German names): - zinssatz_gesamt: average rate across all fixed-interest periods - zinssatz_5_bis_10j: rate for 5-10 year fixed-interest periods - zinssatz_ueber_10j: rate for fixed-interest periods over 10 years - volumen_gesamt: new lending volume
market_berlin_apartment_buildingsread-onlyBerlin apartment building market (rental buildings, "Zinshäuser") - transaction data. Source: transaction data from the Berlin committee of valuation experts (GAA, Gutachterausschuss). Parameters: - rbs: "stadt" | "bezirk" | "stadtteil" | "ortsteil" — bezirk = Borough, ortsteil = District Time filters: - start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods (alternative to start/end) Additional filters: - bezirk_id, stadtteil_id, ortsteil_id - limit, fields, include: "metadata" Key response fields: - transaktionspreis: average total purchase price (€) - transaktionen: number of transactions - vielfaches: purchase price multiplier (purchase price / annual net cold rent) - vielfaches_delta_*j: absolute change of the multiplier (1y, 5y, 10y, 15y) - transaktionspreis_m2: price per m² of living space Ideal for: investment market analysis, yield comparisons across locations
market_berlin_apartmentsread-onlyBerlin apartment market data (listings + transactions). Sources: listing/offer data (IMV) + transaction data from the Berlin committee of valuation experts (GAA, Gutachterausschuss). Parameters: - zeitraum: "jahr" (default) | "monat" | "quartal" (abgeschlossene Quartale) - jahr: transaction data (GAA) + listing data (IMV), finest level: block - monat: listing data (IMV) only, finest level: District (Ortsteil) - quartal: listing data (IMV) only, closed quarters, finest level: District (Ortsteil) - rbs: spatial aggregation level — bezirk = Borough, ortsteil = District, planungsraum = Neighborhood (LOR Planungsraum) - For zeitraum=jahr: "stadt" | "bezirk" | "stadtteil" | "ortsteil" | "planungsraum" | "block" - For zeitraum=monat or quartal: "stadt" | "bezirk" | "stadtteil" | "ortsteil" Time filters: - start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods (alternative to start/end) Additional filters: - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id, block_id - baualtertyp: "neubau" (new construction) | "bestand" (existing stock) - limit, fields, include: "metadata" Key response fields (depending on zeitraum): - 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²) - zeitraum=monat: kaufangebotspreis_m2, anzahl_kaufangebote (number of sale listings), kaufangebot_vermarktungszeit (time on market)
market_germany_apartment_buildingsread-onlyNational price index data for the German apartment building market. Source: vdp. Quarterly data for apartment buildings (rental buildings, "Mehrfamilienhäuser") across Germany. Time filters: - start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods (quarters) Response controls: - limit, fields, include: "metadata" Key response fields: - preisindex: price index for apartment buildings - preisindex_delta_1q: quarter-over-quarter change - preisindex_delta_1j: year-over-year change
market_germany_residentialread-onlyNational market data for the German residential real estate market. Sources: DESTATIS, vdp, HYPOPORT. Includes price AND transaction indices for various market segments. Parameters: - zeitraum: "jahr" (default) | "quartal" - jahr: all price and transaction indices, regional and per source - 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 Time filters: - start/end: flexible date values (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods (years or quarters) Response controls: - limit, fields, include: "metadata" Key response fields: PRICE INDICES: - preisindex_gesamt_destatis, preisindex_gesamt_vdp, preisindex_gesamt_hypoport (overall price index per source) - preisindex_landkreise_kreisfreie_staedte (all districts), preisindex_grossstaedte_top_7 (top-7 major cities), preisindex_staedte_top_127 (top-127 cities) (zeitraum=jahr only) - *_delta_1j / *_delta_proz_1j: change vs. previous year (quarterly: vs. same quarter a year earlier) - *_delta_1q / *_delta_proz_1q: change vs. previous quarter (zeitraum=quartal only) TRANSACTION INDICES (zeitraum=jahr only): - transaktionsindex_landkreise_kreisfreie_staedte, transaktionsindex_grossstaedte_top_7, transaktionsindex_staedte_top_127
searchread-onlySemantic 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. Parameters: - q: natural-language query, in the language of the pages you want (min 2 characters) - locale: "de" | "en" — language of the indexed pages (default: en) - section: comma-separated filter — "listings" (exposés), "projects" (new-build projects), "market-intelligence" (insights, reports, portraits), "pages" (company, services, guides); omit for all - limit: 1-20 pages (default: 10) Key response fields: - url, title, description, image, section, language - snippet (best-matching text passage), score (0-1)
socio_berlin_age_groupsread-onlyBerlin population by 8 age groups, additionally by population group. Source: Amt für Statistik Berlin-Brandenburg. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - bevoelkerungsgruppe: "alle" (all) | "mit_migrationshintergrund" (with migration background) (optional) - altersgruppe: age group, e.g. "alter_unter_6", "alter_65_und_mehr" (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata" Key response fields: - bevoelkerungsgruppe_id/_name (population group), altersgruppe_id/_name (age group), anzahl_einwohner (number of residents)
socio_berlin_census_buildingsread-onlyZensus 2022 building data for Berlin. Source: Statistisches Bundesamt, Zensus 2022. Without a category: total number of buildings. With a category: - bauweise: construction type (detached, row house, semi-detached) - eigentumsform: ownership type (private individual, cooperative, municipality) - heizungsart: heating type (central heating, per-floor heating, individual stoves) - energietraeger: energy source (gas, oil, district heating, electricity) Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - kategorie: "bauweise" | "eigentumsform" | "heizungsart" | "energietraeger" (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata"
socio_berlin_census_dwellingsread-onlyZensus 2022 dwelling stock data for Berlin. Source: Statistisches Bundesamt, Zensus 2022. Without a category: total number of dwellings. With a category: - raeume: breakdown by number of rooms - flaeche: breakdown by floor-area cluster (under 40 m², 40-59 m², etc.) - nutzung: breakdown by type of use (owner-occupied, rented, vacant) Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - kategorie: "raeume" | "flaeche" | "nutzung" (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata"
socio_berlin_census_householdsread-onlyZensus 2022 household data for Berlin. Source: Statistisches Bundesamt, Zensus 2022. Without a category: total number of households. With a category: - groesse: household size (1 person, 2 persons, etc.) - wohndauer: length of residence (under 1 year, 1-5 years, etc.) Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - kategorie: "groesse" | "wohndauer" (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata"
socio_berlin_census_rentsread-onlyZensus 2022 rent data for Berlin. Source: Statistisches Bundesamt, Zensus 2022. Without a category: weighted average across all dwellings (net cold rent, net cold rent per m², count). With category "flaeche": rent per m² by floor-area cluster. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - kategorie: "flaeche" (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata" Key response fields: - nettokaltmiete: average net cold rent (EUR) - nettokaltmiete_m2: net cold rent per m² (EUR) - anzahl_wohnungen: number of dwellings
socio_berlin_census_vacancyread-onlyZensus 2022 dwelling vacancy data for Berlin. Source: Statistisches Bundesamt, Zensus 2022. Breakdown by vacancy category (duration or reason). Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - kategorie: "dauer" (duration) | "grund" (reason) (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata" Key response fields: - kategorie_id, kategorie_label: vacancy category - anzahl: number of vacant dwellings
socio_berlin_construction_activityread-onlyConstruction activity data for Berlin. Source: Amt für Statistik Berlin-Brandenburg. Shows net changes: building balance, dwelling balance, living-space balance. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end: period (YYYY, YYYY-MM, YYYY-MM-DD) - recent: number of most recent periods - limit, fields, include: "metadata" Key response fields: - gebaeude_saldo: net change in number of buildings - wohnungen_saldo: net change in number of dwellings - wohnflaeche_m2_saldo: net change in living space (m²)
socio_berlin_migration_externalread-onlyExternal migration for Berlin: migration across the city boundary, annual, by nationality. Source: Amt für Statistik Berlin-Brandenburg. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - staat_code: filter by country code (e.g. "000" for Germany) - alpha2: filter by ISO 3166-1 alpha-2 code (e.g. "TR") - start/end, recent, limit, fields, include: "metadata" Key response fields: - zuzuege: move-ins to Berlin - fortzuege: move-outs from Berlin - saldo: net migration (move-ins minus move-outs)
socio_berlin_migration_matrixread-onlyMigration 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. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) (default: bezirk) - von_rbs_id: filter by origin-area ID - nach_rbs_id: filter by destination-area ID - min_personen: lower bound on number of persons (default 1) - start/end, recent, limit, fields, include: "metadata" Key response fields: - von_rbs_id/von_rbs_name: origin area - nach_rbs_id/nach_rbs_name: destination area - anzahl_personen: number of moves
socio_berlin_originread-onlyBerlin population with a migration background, by area of origin. Source: Amt für Statistik Berlin-Brandenburg. ⚠️ 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. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood, LOR Planungsraum) - herkunft_ebene: origin level, comma-separated, e.g. "drittland,eu_gesamt" (optional; default prevents double counting) - herkunftsgebiet: area of origin, e.g. "tuerkei", "ukraine", "eu" (optional) - top: top N areas of origin by count (optional) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata" Key response fields: - herkunftsgebiet_id/_name (area of origin), herkunft_ebene (origin level), anzahl_einwohner_mit_migrationshintergrund (residents with a migration background)
socio_berlin_populationread-onlyPopulation stock for Berlin (headline figures) at the Neighborhood level (LOR Planungsraum), semi-annual. Source: Amt für Statistik Berlin-Brandenburg. Parameters: - rbs: "stadt" (city) | "bezirk" (Borough) | "stadtteil" | "ortsteil" (District) | "planungsraum" (Neighborhood) - bezirk_id, stadtteil_id, ortsteil_id, planungsraum_id: geographic filters - start/end, recent, limit, fields, include: "metadata" Key response fields: - einwohner_gesamt (total population), einwohner_maennlich/_weiblich (male/female) - einwohner_deutsch/_auslaendisch (German/foreign nationals), einwohner_ohne/_mit_migrationshintergrund (without/with migration background) - frauen_anteil, auslaender_anteil, migrationshintergrund_anteil: shares of women, foreign nationals, migration background (0–1)

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "estate.guthmann/mcp",
  "icons": [
    {
      "src": "https://cdn.guthmann.estate/branding/logo/png/circle/standard.png",
      "sizes": [
        "400x400"
      ],
      "mimeType": "image/png"
    },
    {
      "src": "https://cdn.guthmann.estate/branding/logo/svg/circle/standard.svg",
      "sizes": [
        "any"
      ],
      "mimeType": "image/svg+xml"
    }
  ],
  "title": "GUTHMANN® Berlin Real Estate",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.guthmann.estate/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.3.0",
  "repository": {
    "url": "https://github.com/GuthmannEstate/mcp",
    "source": "github"
  },
  "websiteUrl": "https://guthmann.estate/en/market-intelligence/",
  "description": "Berlin real estate for AI agents: granular market data and property search, free, by GUTHMANN®."
}