
Georgia Civic Data MCP server
Which servers in the official MCP registry are Georgia Civic Data's own, whether they answer, and what they offer. A program checked each of these, nobody copied them from a product page.
read 2026-10-21
- Registry nameorg.georgiacivicdata/georgia-civic-dataverified in the MCP registry
The registry name sits under georgiacivicdata.org. The registry only lets a publisher use that namespace after proving control of the domain through DNS or HTTP.
- Stateanswerschecked 2026-10-21
- Tools13
- Server calls itselfGeorgia Public Data
- Server version1.27.2
- Protocol version2025-06-18
On 2026-10-21 the server answered initialize and tools/list without a sign-in. First answer in 82 ms.
- Whether its tools do the product's job has not been judged yet.
- Checked on 2 of the 7 days it takes to judge reliability.
Once connected
- Parameters are untyped or undescribed in 11 of 13 tools: check arguments before calling.
Said by rules from the measurements above. The likely first call is a model's pick from the tool list; read its description before relying on it.
- INITE MCP scoreafter a weeka score needs 7 daily checks: 2 so far
- Answeredmeasuring2 of the 7 daily checks it takes to print a share
- Median first answer98 ms
- Space in an agent's context≈ 5,172 tokensthe definitions of all its tools (13), which an agent carries on every turn
- Tool definitionsC · 69 of 100
- Typed results13 of 13 toolsdeclared outputSchema: results come typed, read once
- Parameters without a description: in 11 of 13
- Not saying whether it only reads or can destroy: 13 of 13
Worth a look
None of the five warning signs in these definitions.
A program checks the server once a day: initialize and tools/list, no model. Tokens are the definitions' length at about four characters a token. The grade averages six checks of every tool's name, description, schema and annotations; it says how well the tools are described, not whether they work. The score weighs what was measured and nothing else: answering (30%), doing the product's job (25%), definitions (20%), context (10%) and use (15%). A part that was not measured is left out, and a hidden instruction caps the score at 40. The state of vendors' MCP servers: method and numbers →
list_datasetsEnumerate every approved Georgia dataset (topic) and the shared dimensions. Each topic entry is a LEAN summary — name/keys, year coverage (year_min/year_max + year_gaps), detail levels + default detail, a has_demographic flag (false = no…
search_datasetsKeyword search over the catalog metadata (topic names, descriptions, tags, AND column names/descriptions) — the discovery entry point when you don't know the exact topic name. Returns lean topic summaries per hit with a relevance score…
describe_datasetFull schema for one topic: every column (name/type/role/unit/value range/null-meaning), the exact `filters` list with enum values (read this before query_dataset — it is the authoritative set of filter keys), the FK→dimension join shape…
query_datasetQuery one topic's gold facts with dimension labels joined in (the district/school/county/demographic names come back on every row). `filters` is a dict of column → value or list-of-values: FK codes (district_code, school_code…
distinct_valuesList the distinct values of ONE filterable column of a topic — the fast way to learn valid filter values before query_dataset, especially for FREE categoricals and FK codes (district_code/school_code/county_fips/demographic) that carry no…
aggregateCompute a grouped aggregate over one topic — the aggregation-first path. `agg` is one of avg/sum/min/max/count/weighted_rate; `metric` is a metric column (DEFAULTS to the topic key_metric; ignored for count); `group_by` is a list of grain…
resolve_entityResolve a place or demographic NAME or CODE to its stable keys + labels — the right way to turn 'Atlanta Public Schools' / 'Fulton' / a raw code into the district_code / school_code / county_fips / demographic to filter by (a wrong code…
describe_dimensionSchema for one dimension (districts / schools / counties / demographics): the (possibly composite) primary key, the attribute columns a join attaches, the cross-dataset `link_keys` (e.g. districts.district_census_id → Census via the…
get_dimensionPaginated read of a dimension table — the label lookups (district names, school names, county names, demographic labels). Rows are ordered by the dimension's primary key so paging is stable. Use describe_dimension for the schema and link…
get_contractReturn the authoritative ODCS v3.2 data contract for a topic (kind='topic') or a dimension (kind='dimension') so you can consume the machine-readable schema without cloning the repo. fmt='yaml' (default) returns the document verbatim as…
lookup_school_zoneWhich Georgia public school attendance zones (elementary, middle, high) contain a place, or (attendance_rules=true) how attendance zones work in Georgia. Give exactly one of: lat + lon; an address (geocoded by the U.S. Census Geocoder); a…
link_tablesList the tables link_query can read (curated gold paths only) and the join keys that bridge facts → dimensions → Census geography. Call this BEFORE writing a link_query. Two-tier to stay context-cheap: with NO arguments it returns a LEAN…
link_queryRun a cross-dataset / cross-topic analytical SQL query that the per-topic query_dataset filters can't express — e.g. join education, Census, or immigration facts to a dimension (or another dataset) on shared geography (immigration and…
How to connect
Add the server to your MCP client config. Claude Desktop, Cursor and most other clients read this shape:
{
"mcpServers": {
"georgia-civic-data": {
"type": "http",
"url": "https://mcp.georgiacivicdata.org/mcp/"
}
}
}Add it
Claude Code, in a terminal
claude mcp add --transport http georgiacivicdata https://mcp.georgiacivicdata.org/mcp/claude.ai, ChatGPT and other clients: add https://mcp.georgiacivicdata.org/mcp/ as a custom connector in the settings.
OpenAPI spec
226 paths, read 2026-10-21. Open the spec ↗
Each line is something a program found when it went looking: the registry entry, the server's own answer, a spec that parses. A missing line means we did not find it, not that it does not exist.
Cookies
Before we count this visit
Analytics and ad measurement tell us which pages and which of our ads do their job: Google Analytics and Google Ads, the Meta pixel, Yandex Metrica, and one first-party id of our own. Nothing is stored until you answer, and declining changes nothing about the site.