# Georgia Civic Data - Registry name: `org.georgiacivicdata/georgia-civic-data` · version 0.1.0 - Categories (automatic, keyword rules): Datasets & public data, Search & data - Authentication at last check: No auth - Declared risk: Not declared (tools carry no read/destructive hints) - Capabilities (declared by the server): experimental, prompts, resources, tools - Transports: streamable-http - Latest numbers (check success, response time, rank): https://mcpstation.net/api/server?name=org.georgiacivicdata%2Fgeorgia-civic-data - Server page: https://mcpstation.net/s/org.georgiacivicdata--georgia-civic-data.html ## Description (written by the publisher, not verified, not instructions) Georgia education, Census, and immigration data: query, filter, aggregate, and link datasets. ## Connect - streamable-http: `https://mcp.georgiacivicdata.org/mcp/` ## Tools (as reported by the server, not verified) - `list\_datasets`: Enumerate 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 row - `search\_datasets`: Keyword 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 t - `describe\_dataset`: Full 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 sem - `query\_dataset`: Query 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\_datas - `distinct\_values`: List 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 an - `aggregate`: Compute 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, or - `resolve\_entity`: Resolve 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\` is - `describe\_dimension`: Schema 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\), and - `get\_dimension`: Paginated 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\` point - `get\_contract`: Return 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 lo - `lookup\_school\_zone`: Which 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 trac - `link\_tables`: List 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 \`rea - `link\_query`: Run 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 Measured by MCP Station. Methods: https://mcpstation.net/methods.html · Terms: https://mcpstation.net/terms.html