Georgia Civic Data
org.georgiacivicdata/georgia-civic-data · v0.1.0
Georgia education, Census, and immigration data: query, filter, aggregate, and link datasets.
MCPremoteno credentialsScience & open dataLaw & government
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 13 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
A 87/100
What it does: 13 tools · 9 read, 0 write · Developer tools, Law & government, E-commerce
Test call list_datasets: worked (1,062 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +2
- Read/write annotations: 0
- Safe test call: +20
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://mcp.georgiacivicdata.org/mcp/Tools
13 tools listed at last check
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 demographic axis, so there is no all-students demographic rowsearch_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 and which fields matched, plus a `dimension_matches` list when tdescribe_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 (`foreign_keys`), example queries, usage, limitations, null semquery_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, county_fips, demographic) and any categorical column — see describe_datasdistinct_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 enum in describe_dataset (a wrong guess otherwise returns anaggregateCompute 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 columns (year, FK codes like district_code or county_fips, orresolve_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 guess otherwise returns an empty query_dataset page). `kind` isdescribe_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 crosswalk — a 5-digit school-district code, NOT a county FIPS), andget_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 keys. Small page defaults; `truncated` + a `bulk_export` pointget_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 text; fmt='json' returns it parsed. Only approved topics and lolookup_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 2020 census tract_geoid (returns every zone covering the traclink_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 index — every table's name, grain, detail levels, default `realink_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 Census county topics share county_fips directly). READ-ONLY, SAND
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/org.georgiacivicdata/georgia-civic-data)