Skip to main content
Glama

GUTHMANN® Berlin Real Estate

Berlin Population

socio_berlin_population
Read-onlyIdempotent

Population 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 (German names):

  • einwohner_gesamt: Total residents

  • einwohner_maennlich: Male

  • einwohner_weiblich: Female

  • einwohner_deutsch: German

  • einwohner_auslaendisch: Foreign

  • einwohner_ohne_migrationshintergrund: Without migration background

  • einwohner_mit_migrationshintergrund: With migration background

  • frauen_anteil: Female share (0–1)

  • auslaender_anteil: Foreign share (0–1)

  • migrationshintergrund_anteil: Share with migration background (0–1)

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "socio_berlin_population"
  }
}

Input Schema

NameRequiredDescriptionDefault
endNoEnde (YYYY, YYYY-MM, YYYY-MM-DD)
rbsNostadt
limitNoMaximale Anzahl Ergebnisse (öffentlich bis 1000)
startNoBeginn (YYYY, YYYY-MM, YYYY-MM-DD)
fieldsNoFeldauswahl (komma-getrennt)
recentNoLetzte N Perioden (alternativ zu start/end)
includeNoZusatzdaten (z.B. metadata)
bezirk_idNoBezirk-ID (2-stellig)
ortsteil_idNoOrtsteil-ID (4-stellig)
planungsraum_idNoPlanungsraum-ID (8-stellig)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • changedInput schema / properties / bezirk_id / description
      Previous value: -"Bezirk-ID (2-stellig, z.B. \"03\")"New value: +"Bezirk-ID (2-stellig)"
    • changedInput schema / properties / fields / description
      Previous value: -"Komma-getrennte Feldnamen"New value: +"Feldauswahl (komma-getrennt)"
    • changedInput schema / properties / include / description
      Previous value: -"metadata für Feld-Metadaten inline"New value: +"Zusatzdaten (z.B. metadata)"
    • changedInput schema / properties / ortsteil_id / description
      Previous value: -"Ortsteil-ID (4-stellig, z.B. \"0301\")"New value: +"Ortsteil-ID (4-stellig)"
    • changedInput schema / properties / recent / description
      Previous value: -"Anzahl der aktuellsten Perioden"New value: +"Letzte N Perioden (alternativ zu start/end)"
    • removedInput schema / properties / recent / exclusiveMinimum
      Removed value: -0
    • removedInput schema / properties / recent / maximum
      Removed value: -9007199254740991
    • changedInput schema / properties / recent / type
      Previous value: -"integer"New value: +[
      +  "string",
      +  "number"
      +]
  2. Changed3 schema fields changed
    • addedInput schema / properties / recent / exclusiveMinimum
      Added value: +0
    • addedInput schema / properties / recent / maximum
      Added value: +9007199254740991
    • changedInput schema / properties / recent / type
      Previous value: -"number"New value: +"integer"
  3. Added

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, non-destructive, open-world behavior, so the description need not cover safety. It adds real context beyond them: the statistical source, the semi-annual cadence, the German column names returned, and the 0–1 range on the *_anteil share fields, which prevents misinterpretation of ratios as percentages. It omits result-size/pagination behavior, though the limit cap lives in the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose, source and cadence are front-loaded in one sentence, followed by cleanly grouped parameter and response-field lists. Every line carries information the agent needs, and nothing is repeated from the schema without added meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Without an output schema, the enumerated German response fields (total, male, female, German, foreign, migration background, plus derived shares) are exactly the completeness the agent needs to pick fields correctly. The only gaps are missing pagination/limit behavior and the geographic-hierarchy relationship between bezirk, ortsteil and planungsraum levels.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 90%, so the baseline is 3; the description does add genuine value by glossing the rbs enum values (city / Borough / District / Neighborhood), which the schema leaves undocumented. It also introduces inaccuracies: 'stadtteil' is listed as an rbs value and 'stadtteil_id' as a filter, but neither exists in the input schema, which risks invalid calls.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource and measurement ('Population stock for Berlin (headline figures)'), the geographic granularity, the frequency (semi-annual) and the source, which goes well beyond the bare name. It only partially distinguishes itself from siblings such as socio_berlin_age_groups or socio_berlin_origin via the phrase 'headline figures', without naming them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the content ('headline figures' at 'Neighborhood level'), so an agent can infer this is the general population-total tool rather than a topic-specific one. However, it never says when to pick it over socio_berlin_origin, socio_berlin_age_groups, or the berlin_neighborhoods / berlin_neighborhood_details family, and gives no exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.