CDC PLACES Health Data
Server Details
County and tract-level health outcomes, behaviors, and preventive services from CDC PLACES
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 5 tools
Each tool serves a distinct purpose: comparing counties, retrieving county measures, getting a single measure across state, tract-level data, and searching measures. No overlap in functionality.
All tool names follow a consistent verb_noun pattern (compare, get, get, get, search). Two tools are parallel (get_county_measures, get_tract_measures), and the others are clear and predictable.
Five tools cover the essential operations for a focused health dataset: retrieval at county and tract levels, comparison, state-level query, and metadata search. The count is well-scoped.
The set covers main use cases, but lacks a tool to retrieve all measures for all counties in a state at once. Users must either call per county or per measure, which is a minor gap.
Available Tools
5 toolscompare_countiesAInspect
Compare specific CDC PLACES measures across multiple counties.
Returns a side-by-side comparison of selected health measures for the
given counties. Useful for benchmarking one county against peers.
Args:
fips_list: List of 5-digit county FIPS codes (e.g. ['53033', '53053', '06037']).
Maximum 10 counties per request.
measures: List of PLACES measure IDs to compare (e.g. ['DIABETES', 'OBESITY']).
Maximum 10 measures per request.
| Name | Required | Description | Default |
|---|---|---|---|
| measures | Yes | ||
| fips_list | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses input limits (max 10 counties, 10 measures) and mentions the output is a 'side-by-side comparison,' but lacks details on data freshness, error handling, or response structure. The presence of an output schema mitigates the need for some behavioral detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: a one-line purpose statement, a single sentence on usefulness, and structured Args documentation. Every sentence adds value, and the Args section is clearly separated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (comparison with two array parameters, limits), the description is mostly complete: purpose, usage hint, parameter details, and limits. It lacks discussion of error scenarios or data source recency, but the presence of an output schema covers the return structure. Overall, adequate for effective tool use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, but the description's Args section fully documents both parameters: fips_list (list of 5-digit FIPS codes, max 10) and measures (list of measure IDs, max 10). This adds meaning far beyond the bare schema, including format and constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool compares CDC PLACES measures across multiple counties, providing a side-by-side comparison. It uses a specific verb ('compare') and resource ('counties', 'measures'). The description naturally distinguishes this tool from siblings like get_county_measures (single county) and get_measure_by_state (state-level).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it is 'useful for benchmarking one county against peers.' This implies when to use the tool (for comparison). However, it does not explicitly exclude other cases or mention alternative sibling tools for non-comparison needs.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_county_measuresAInspect
Get all CDC PLACES health measures for a county.
Returns up to 36 measures including health outcomes (diabetes, obesity,
heart disease, etc.), health behaviors (smoking, binge drinking), preventive
services (checkups, screenings), and health status indicators.
Args:
county_fips: 5-digit county FIPS code (e.g. '53033' for King County, WA).
Must be a string, not an integer.
year: Optional release year to filter by. Omit for the most recent data.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | ||
| county_fips | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries full burden. It discloses the scope (up to 36 measures) and parameter behavior (omit year for most recent), but lacks details on error handling, authentication, rate limits, or what happens on invalid FIPS code.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured: purpose first, then a bullet-like summary of measures, then clear parameter docs. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 params, output schema exists), the description covers key points: what is returned, how to specify county and year. It could mention that the output schema defines the return format, but that's acceptable since the schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description adds significant meaning: county_fips must be a 5-digit string (with example), year is optional and defaults to most recent. This goes well beyond the raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets all CDC PLACES health measures for a county, lists categories (health outcomes, behaviors, services), and distinguishes from siblings (e.g., get_tract_measures, compare_counties) by focusing on county-level data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for a single county but does not explicitly state when to use this tool versus alternatives like compare_counties or search_measures. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_measure_by_stateAInspect
Get one CDC PLACES measure for all counties in a state.
Useful for comparing a specific health metric (e.g. DIABETES, OBESITY)
across all counties within a state. Returns the most recent data year.
Args:
state_abbr: Two-letter state abbreviation (e.g. 'WA', 'CA').
measure_id: PLACES measure ID (e.g. 'DIABETES', 'OBESITY', 'BPHIGH').
Use search_measures to find valid IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| measure_id | Yes | ||
| state_abbr | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. States it's a 'get' operation (read-only implied) and returns most recent data year. Does not disclose potential errors, rate limits, or response shape, but output schema exists externally.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise: one-line purpose, one-line use case, then structured Args section. No verbose explanations, front-loaded with key information. Every sentence is necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple tool (2 params, output schema exists), description covers purpose, usage, and parameter details. Missing error handling or data year specification, but sufficient for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage, but description adds meaningful semantics: explains state_abbr as two-letter abbreviation and measure_id as PLACES ID with examples, plus reference to search_measures. Compensates well for missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves one CDC PLACES measure for all counties in a state, using a specific verb and resource. It distinguishes from siblings like compare_counties and get_county_measures by focusing on state-wide aggregation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit context for usage: comparing a health metric across counties. Mentions returning most recent data year and refers to search_measures for valid IDs. Lacks explicit exclusions but gives clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tract_measuresAInspect
Get all CDC PLACES health measures for a census tract.
Returns tract-level estimates for health outcomes, behaviors, preventive
services, and health status indicators. Tract-level data uses small area
estimation and may have wider confidence intervals than county data.
Args:
tract_fips: 11-digit census tract FIPS code (e.g. '53033005300').
Must be a string, not an integer.
year: Optional release year to filter by. Omit for the most recent data.
| Name | Required | Description | Default |
|---|---|---|---|
| year | No | ||
| tract_fips | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the statistical nature of the data (small area estimation, wider confidence intervals), which adds value beyond the basic get operation. However, it does not address error handling, rate limits, or data freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with a concise summary followed by parameter details. It avoids redundancy and front-loads the main purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of an output schema (inferred), the description adequately covers the tool's purpose and key caveats. It addresses the main use case and data quality, leaving minimal gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters are explained with format requirements and default behavior. The tract_fips format is specified with an example and a warning about string vs integer, which adds meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves CDC PLACES health measures for a specific census tract. It distinguishes from county-level tools by highlighting tract-level estimation, and the sibling set includes get_county_measures, reinforcing differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
While the description implies use for tract-level data, it does not explicitly exclude county-level queries or direct to alternative tools. The mention of wider confidence intervals suggests when to be cautious, but no direct comparison to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_measuresAInspect
Search available CDC PLACES measures by name or category.
Returns matching measure IDs, names, and categories. Use this to find
the correct measure_id for other tools.
Categories: Health Outcomes, Health Behaviors, Prevention, Health Status.
Args:
keyword: Search term (e.g. 'diabetes', 'smoking', 'prevention', 'heart').
| Name | Required | Description | Default |
|---|---|---|---|
| keyword | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that it returns matching measure IDs, names, and categories, and lists example categories. Since no annotations are provided, the description carries full burden and adequately covers the read-only search behavior without side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, using short sentences and bullet-like structure for categories. It front-loads the primary purpose and adds necessary details without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (1 param, search-only) and has an output schema (not provided but implied). The description covers what it does, what it returns, and why to use it, making it complete for typical usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'keyword' is thoroughly described with examples (e.g., 'diabetes', 'smoking'). With 0% schema description coverage, the description fully compensates by adding meaning, usage tips, and examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches CDC PLACES measures by name or category, returns specific fields (IDs, names, categories), and explicitly says it is used to find measure_id for other tools. This distinguishes it from sibling tools that operate on specific counties or tracts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states to use this tool to find the correct measure_id for other tools, providing clear when-to-use guidance. However, it does not discuss when not to use it or directly compare to sibling tools, missing a bit of context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
- First observed
compare_counties - First observed
get_county_measures - First observed
get_measure_by_state - First observed
get_tract_measures - First observed
search_measures
Related MCP Connectors
SVI scores and theme breakdowns by county and tract
Population, income, poverty, education, housing, and commuting from the US Census ACS
Broadband availability, providers, speeds, and BEAD classification from the FCC
Leading causes of death, mortality rates, infant mortality, and drug overdose data
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides access to 73 CDC public health datasets covering disease surveillance, vaccination tracking, behavioral risk factors, environmental health, and outbreak detection across 18 surveillance systems through the Socrata Open Data API.2MIT
- AlicenseNot gradedqualityBmaintenanceEnables querying metro Atlanta census tracts for gaps between need and access to groceries, pharmacies, clinics, and MARTA service, with tools to rank priority tracts, inspect tract profiles, find nearby tracts, and compare counties.MIT
- AlicenseBqualityDmaintenanceProvides access to comprehensive public health data from Yale's Population Health Information Visual Explorer, including metrics on immunizations, respiratory diseases, and chronic conditions. It enables users to perform state-level comparisons, time-series analysis, and data filtering across authoritative sources like the CDC and Epic Cosmos.523MIT
- AlicenseNot gradedqualityCmaintenanceProvides access to official U.S. Census Bureau data, including decennial census, American Community Survey, economic census, population estimates, and housing characteristics, across geographic levels from nation to block group. Enables natural-language queries and direct tool calls for demographic and housing analysis.5 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.