ipums-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| microdata_list_extractsA | List recent extracts for an IPUMS microdata collection (e.g. usa, cps, ipumsi). Returns extract numbers, status, and basic metadata. |
| microdata_list_samplesA | List available samples for an IPUMS microdata collection (e.g. all ACS, CPS, or Census years). Use this to find the correct sample ID before creating an extract. |
| microdata_get_extractA | Get the status and details of a specific IPUMS microdata extract by its number. Includes download links when the extract is complete. |
| microdata_create_extractA | Submit a new IPUMS microdata extract request. Specify the collection, samples, variables, and output format. Returns the new extract number and initial status. Once submitted, use microdata_extract_to_code to generate reproducible R or Python code for the extract. |
| microdata_download_extractA | Download completed IPUMS microdata extract files to a local directory. Verifies SHA-256 checksums. Returns local file paths and verification status. |
| microdata_wait_for_extractA | Poll a microdata extract until it completes (or fails). Returns the final extract object including downloadLinks when done. Default timeout is 90 seconds — if the extract is still running at that point the tool returns early with the current status and a command to check back later, so the conversation is not blocked for large extracts. |
| microdata_search_variablesA | Search IPUMS USA harmonized variable mnemonics by name or label. Returns matching variables with their label, record type (H=household / P=person), thematic group, and available sample IDs. Use this to discover variable names before building an extract. The |
| nhgis_list_datasetsA | Browse available NHGIS datasets. Returns paginated list of dataset identifiers, names, years, and geographic levels available. |
| nhgis_get_datasetA | Get full details for a specific NHGIS dataset including available data tables, geographic levels, breakdown values, and years. |
| nhgis_list_data_tablesA | List all available NHGIS data tables across all datasets. Returns paginated list of table identifiers, descriptions, and universe. |
| nhgis_get_data_tableA | Get detailed information about a specific NHGIS data table within a dataset, including all variable descriptions. |
| nhgis_list_time_series_tablesA | List all available NHGIS time series tables. These span multiple census years with consistent geographic definitions. |
| nhgis_get_time_series_tableA | Get full details for a specific NHGIS time series table including available years, geographic levels, and variable descriptions. |
| nhgis_list_shapefilesA | List all available NHGIS shapefiles (boundary files). Returns identifiers for census geographies that can be included in extracts. |
| nhgis_list_extractsB | List recent NHGIS extract requests. Returns extract numbers, status, and submission timestamps. |
| nhgis_get_extractA | Get the status and details of a specific NHGIS extract by its number. Includes download links when the extract is complete. |
| nhgis_create_extractA | Submit a new NHGIS extract request. Specify datasets (with data tables and geographic levels), time series tables, shapefiles, and output format. Returns the new extract number and initial status. Once submitted, use nhgis_extract_to_code to generate reproducible R or Python code for the extract. |
| nhgis_search_datasetsA | Search NHGIS datasets by keyword. Fetches all available datasets and returns those whose name, group (e.g. '2020 Census'), or description match the keyword. Use this to find which datasets cover a topic or census year before drilling into specific data tables. |
| nhgis_search_data_tablesA | Search NHGIS data tables by keyword. If a dataset is specified, searches all tables within that dataset (comprehensive). Without a dataset, scans up to 2,500 tables across all datasets — recommend using nhgis_search_datasets first to find a relevant dataset, then scoping the search here. Matches against table description and universe. |
| nhgis_search_time_series_tablesA | Search NHGIS time series tables by keyword. Fetches all ~400 time series tables (which span multiple census years with consistent geographic definitions) and returns those matching the keyword in their name or description. |
| microdata_extract_to_codeA | Generate ready-to-run R (ipumsr) and/or Python (ipumspy) code to reproduce a microdata extract. Fetches the extract definition by number and emits code that re-submits the same request. Use this after microdata_create_extract to capture a reproducible workflow. |
| nhgis_extract_to_codeA | Generate ready-to-run R (ipumsr) and/or Python (ipumspy) code to reproduce an NHGIS extract. Fetches the extract definition by number and emits code that re-submits the same request. Use this after nhgis_create_extract to capture a reproducible workflow. |
| generate_ipums_citationA | Return a formatted citation template for an IPUMS dataset. Includes the standard author list, DOI, and a direct link to the official citation page where the current version number is always listed. The version number also appears on your extract page and in the README included with each download. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hesscl/ipums-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server