abrezey's picture
big update
893f9d6
---
title: 🏘️ Mcp Census
emoji: 🏘️
colorFrom: yellow
colorTo: indigo
sdk: gradio
sdk_version: 5.33.0
app_file: app.py
pinned: false
short_description: MCP server leveraging U.S. Census Bureau tooling
tags:
- mcp-server-track
---
# mcp-census
A work-in-progress MCP server leveraging U.S. Census Bureau tooling for LLM interoperability.
## Example usage
Right now, we recommend using `mcp-census` in conjunction with a MCP Client like Claude Desktop or Cursor. If you prefer to run your own client application, check out [Local Agent Quickstart](#local-agent-quickstart).
**What is the population of Hennepin County, MN for those who are 65 and older?**
https://github.com/user-attachments/assets/c979b9aa-8299-4eec-ad32-362d28ced5e4
**What is the racial/ethnic breakdown of Yolo County?**
https://github.com/user-attachments/assets/d7c34ecb-4503-4bde-a7eb-b865a6f076c8
**Lookup data from the US 2020 Decennial Census and provide a CSV containing data about the number of housing units, total population, and median age for all counties in New York State. For the column containing the county identifier, please provide a complete FIPS containing the state and county as a joined value.**
https://github.com/user-attachments/assets/cffd80f0-0830-4534-ab1a-9574608967ad
## Local MCP server quickstart
We suggest using [`uv`](https://docs.astral.sh/uv/) to manage dependencies, but you can install the required packages directly from the [`pyproject.toml` file](pyproject.toml)
```zsh
uv run python app.py
```
Assuming you have no other gradio applications running, this will serve your MCP server at http://localhost:7860/gradio_api/mcp/sse
## MCP architecture
<img src="assets/mcp-census.png" alt="MCP Census" width="200" height="auto">
## Possible improvements
### Evaluation
* We recommend starting here to provide a strong benchmark with which to evaluate improvements.
* MCP server tools can be evaluated via unit tests. Agentic behavior can be evaluated on criteria described [here](https://hamel.dev/blog/posts/evals/) and emerging frameworks such as [RAGAS](https://docs.ragas.io/en/stable/).
### MCP Client
* Rather than build tool sets for every Census dataset (decennial, american community survey, etc.), it may be more comprensive to build tooling around the [machine readable dataset discovery tool](https://www.census.gov/data/developers/updates/new-discovery-tool.html).
* The Census Bureau publishes myriad documentation. Enabling semantic retrieval via RAG should provide agents with information to better respond to user queries.