Skip to main content
Glama
zencity-product

city-data-mcp

Official

Map Community Issue to Data

map_issue_data

Map a community concern to relevant city data by cross-referencing residents' issue with hard metrics like housing, safety, or traffic. Provide city-level evidence for data-backed decisions.

Instructions

Given a community concern or issue topic, find all relevant hard data for a city. The cross-reference engine — "residents say X, here's what the data shows."

Available topics: Housing Affordability (housing affordability) — Housing costs, rent burden, fair market rents, home values, building permits, Public Safety (public safety) — Crime rates, police budget, 311 safety complaints, Traffic Safety (traffic safety) — Traffic fatalities, pedestrian safety, drunk driving crashes, congestion, Pedestrian & Cyclist Safety (pedestrian safety) — Pedestrian fatalities, cyclist deaths, Vision Zero, walkability, Transportation & Infrastructure (transportation) — Transit ridership, commuting patterns, road conditions, traffic safety, Education & Schools (education) — School enrollment, spending, student-teacher ratios, education levels, Economic Development & Jobs (economic development) — Unemployment, job growth, business permits, income levels, Environment & Sustainability (environment) — Air quality, water quality, parks, green space, Homelessness & Social Services (homelessness) — Poverty rates, housing costs, social spending, related 311 reports, Infrastructure & Utilities (infrastructure) — Water systems, roads, building activity, utility spending, Health & Wellness (health) — Air quality, health spending, poverty as health indicator.

Also accepts free-text issues (matched to closest topic by keywords).

Example: "housing affordability" in Denver → pulls home values, rent, FMR, permits, housing budget allocation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cityYesCity name (e.g., 'Denver', 'NYC')
issueYesIssue topic or free-text concern (e.g., 'housing affordability', 'public safety', 'residents complain about potholes')

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.1/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full behavioral burden. It discloses that free-text is keyword-matched to the closest topic and gives an example of what gets pulled, which is useful. However it never states that this is a read-only, non-mutating operation, nor what happens for an unrecognized topic or a city with no coverage.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, and the long topical inventory is dense but earns its space because it supplies the missing enum values plus the data each topic returns. Slightly bloated by bolding/label repetition, but no filler sentences.

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?

For a two-parameter tool with no output schema and no annotations, the description is largely sufficient: it explains inputs, accepted topic values, free-text behavior, and roughly what data each topic yields. It could note the shape of the returned data or the read-only nature, but nothing essential to a correct call is missing.

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

Parameters4/5

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

Schema coverage is 100% and both parameters are documented, so the schema baseline is met. The description goes beyond it by effectively supplying the missing enum for `issue` (0 enums in schema), enumerating 11 valid topic keys with their canonical strings and covering the free-text fallback — meaning the description materially improves how the agent fills that parameter.

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

Purpose5/5

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

States a specific verb and resource ('find all relevant hard data for a city' given an issue topic) and frames itself as a cross-reference engine, which cleanly distinguishes it from the many single-domain siblings like query_housing or query_traffic. An agent can tell this aggregates across domains rather than answering one metric.

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

Usage Guidelines4/5

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

The 'residents say X, here's what the data shows' framing plus the topical list makes the use case clear: map a concern to data. It implicitly routes away from single-domain siblings but never states an explicit when-not or names a preferred alternative for narrow lookups, so it stops short of a 5.

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