FCC Broadband Map
Server Details
Broadband availability, providers, speeds, and BEAD classification from the FCC
- Status
- Healthy
- Uptime
- 100.0% over 40 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
Each tool targets a distinct scope: location point, county, state, and providers in county. There is no overlap in purpose, and descriptions clearly differentiate them.
All tools follow the pattern 'get_<object>_by_<scope>' (e.g., get_broadband_by_location, get_providers_by_county). The naming is consistent and predictable.
With 4 tools, the server covers the essential query types for broadband data (location, county summary, state summary, provider list). The count is well-scoped without being excessive.
The set covers the main use cases for querying FCC broadband data. Minor gaps exist, such as no batch or multi-location query, but core CRUD-like operations are present for a read-only API.
Available Tools
4 toolsget_broadband_by_locationAInspect
Get broadband providers and availability at a specific lat/lon location.
Returns a list of broadband providers serving the location with their
advertised download/upload speeds and technology types. Includes BEAD
classification (unserved/underserved/served) based on max available speeds.
NOTE: The FCC Broadband Map API has bot protection and may reject requests.
If you get an error, the API endpoint may have changed. The FCC updates
this API frequently without notice.
Args:
latitude: Location latitude (e.g. 38.8977 for Washington DC).
longitude: Location longitude (e.g. -77.0365 for Washington DC).
technology_code: Filter by technology (0=All, 10=Copper, 40=Cable,
50=Fiber, 60=Satellite, 70=Fixed Wireless).
speed_download: Minimum download speed in Mbps (default 25).
speed_upload: Minimum upload speed in Mbps (default 3).
as_of_date: BDC filing date in YYYY-MM-DD format (default 2024-06-30).
| Name | Required | Description | Default |
|---|---|---|---|
| latitude | Yes | ||
| longitude | Yes | ||
| as_of_date | No | 2024-06-30 | |
| speed_upload | No | ||
| speed_download | No | ||
| technology_code | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so description provides good disclosure: it's a read operation, returns a list, and warns about external API fragility. Lacks explicit statement about read-only or auth needs.
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?
Well-structured with general description, note, and args. Slightly lengthy but all sentences add value. Front-loaded with 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?
With no annotations, the description covers all 6 parameters, explains return values (speeds, tech, BEAD), and includes crucial context about FCC API volatility. Output schema exists, so return details are not needed.
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 coverage is 0%, but description includes an 'Args:' section explaining each parameter with examples, defaults, and valid values (e.g., technology_code enum). Fully compensates.
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 it gets broadband providers at a specific lat/lon, with specific returns (speeds, technology, BEAD). It distinguishes from siblings that are summaries by county/state.
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?
Implies use for point locations, and includes an important note about FCC API bot protection and changes. Lacks explicit when-not-to-use or 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.
get_broadband_summary_by_countyAInspect
Get broadband availability statistics for a county.
Returns aggregated broadband data including provider counts, technology
availability, and BEAD-relevant metrics (unserved/underserved/served
location percentages).
NOTE: County-level summary endpoints may not be directly available in all
API versions. This tool attempts multiple endpoint patterns.
Args:
county_fips: 5-digit county FIPS code (e.g. '11001' for Washington DC,
'53033' for King County WA). Always a string, never an integer.
speed_download: Minimum download speed threshold in Mbps (default 25).
speed_upload: Minimum upload speed threshold in Mbps (default 3).
as_of_date: BDC filing date in YYYY-MM-DD format (default 2024-06-30).
| Name | Required | Description | Default |
|---|---|---|---|
| as_of_date | No | 2024-06-30 | |
| county_fips | Yes | ||
| speed_upload | No | ||
| speed_download | No |
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 full burden. It discloses the fallback behavior (attempts multiple endpoint patterns) and lists return metrics. However, it lacks information on authentication needs, rate limits, error handling, or potential destructive actions.
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-organized with a main sentence, a list of return content, a usage note, and parameter docstrings. It is front-loaded with purpose. While a bit lengthy, 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 presence of an output schema, the description appropriately focuses on input parameters and behavioral notes. The note about API version variability is important context. All four parameters are explained. The description is sufficient for the tool's complexity.
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%, so the description must compensate. It explains each parameter in detail: county_fips with examples and type enforcement, speed thresholds with defaults, and date format. This adds essential meaning beyond the bare 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 verb 'Get' and the resource 'broadband summary by county', listing specific metrics (provider counts, technology availability, BEAD metrics). It differentiates from siblings like get_broadband_summary_by_state and get_providers_by_county by specifying the geographic 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 includes a note about API version availability and that the tool attempts multiple endpoint patterns, which provides context on when it might be used. However, it does not explicitly state when to use this tool over alternatives or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_broadband_summary_by_stateAInspect
Get state-level broadband availability summary.
Returns aggregated broadband statistics for the state including provider
counts and technology deployment. Useful for BEAD program analysis to
identify states with significant unserved/underserved populations.
Args:
state_fips: 2-digit state FIPS code (e.g. '53' for Washington, '11' for DC).
Always a string, never an integer.
speed_download: Minimum download speed threshold in Mbps (default 25).
speed_upload: Minimum upload speed threshold in Mbps (default 3).
as_of_date: BDC filing date in YYYY-MM-DD format (default 2024-06-30).
| Name | Required | Description | Default |
|---|---|---|---|
| as_of_date | No | 2024-06-30 | |
| state_fips | Yes | ||
| speed_upload | No | ||
| speed_download | No |
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 burden. It describes the tool as returning data and lists parameters, which implies a read-only operation. However, it does not explicitly state that no data is modified, nor does it cover error handling or authentication requirements. The description is adequate but not rich in behavioral context.
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: two lines of purpose and an args list. Every sentence earns its place, and the structure is front-loaded with the key action and outcome. No unnecessary words.
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 (so return values are covered), 4 parameters, and sibling tools, the description covers the essential purpose and parameter semantics. It lacks guidance on error conditions or data availability, but for a summary data retrieval tool, it is reasonably complete.
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's 'Args' section adds substantial meaning: it explains state_fips format with examples, clarifies speed thresholds as 'minimum', and specifies the date format and default. This fully compensates for the schema's lack of 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 it returns a state-level broadband availability summary and mentions provider counts and technology deployment. It differentiates from siblings like get_broadband_summary_by_county and get_broadband_by_location by specifying state aggregation and a use case (BEAD program analysis).
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 gives a clear context for use (BEAD program analysis) but does not explicitly exclude alternatives or provide when-not-to-use guidance. Sibling tools exist for county-level or location-level data, but the description does not direct the agent to those when finer granularity is needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_providers_by_countyAInspect
Get list of broadband providers serving a county.
Returns provider names, technology types, and speed tiers available
in the specified county. Useful for BEAD applications to identify
which providers serve an area and what technologies they deploy.
Args:
county_fips: 5-digit county FIPS code (e.g. '11001' for Washington DC,
'53033' for King County WA). Always a string, never an integer.
technology_code: Filter by technology (0=All, 10=Copper, 40=Cable,
50=Fiber, 60=Satellite, 70=Fixed Wireless).
speed_download: Minimum download speed threshold in Mbps (default 25).
speed_upload: Minimum upload speed threshold in Mbps (default 3).
as_of_date: BDC filing date in YYYY-MM-DD format (default 2024-06-30).
| Name | Required | Description | Default |
|---|---|---|---|
| as_of_date | No | 2024-06-30 | |
| county_fips | Yes | ||
| speed_upload | No | ||
| speed_download | No | ||
| technology_code | No |
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 describes parameters but does not disclose behavioral traits like idempotency, data freshness, rate limits, or authentication requirements. The read-only nature is implied but not stated.
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 single sentence for purpose, one for return value and usage, followed by a structured parameter list. Every part earns its place 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?
Given 5 parameters and no schema descriptions, the description adequately covers purpose, parameters, and usage context. An output schema exists, so the lack of explicit return format details is acceptable. It could mention that result order is undefined.
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 description compensates for 0% schema description coverage by providing detailed explanations for each parameter, including examples (county_fips '11001'), enumerated technology_code values, and default values. This adds significant meaning beyond the schema's title fields.
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 'Get list of broadband providers serving a county' and specifies the return fields (provider names, technology types, speed tiers). It distinguishes from sibling tools (by_location, summary) by focusing on a detailed county-level provider list.
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 mentions 'useful for BEAD applications to identify which providers serve an area,' which gives context but does not explicitly compare with siblings or state when not to use it. Alternative tools can be inferred from names, but no direct guidance is provided.
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.
4 tool updates
- First observed
get_broadband_by_location - First observed
get_broadband_summary_by_county - First observed
get_broadband_summary_by_state - First observed
get_providers_by_county
Related MCP Connectors
FCC broadband availability, coverage analysis, and digital divide data for US geographies.
US telecom availability and intelligence by address, with FCC provenance. Fiber-first.
Population, income, poverty, education, housing, and commuting from the US Census ACS
County and tract-level health outcomes, behaviors, and preventive services from CDC PLACES
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceAccess FCC broadband availability, coverage analysis, and digital divide data for US geographies and census blocks via MCP.82 npm1Apache 2.0
- AlicenseNot gradedqualityBmaintenanceProvides 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.142 npmMIT
- AlicenseAqualityAmaintenanceQuery verified parcel ArcGIS REST endpoints for 150+ US counties across all 50 states — search by owner name, APN, or address. No API key; built on public county GIS data.4634 npm1MIT
- FlicenseNot gradedqualityFmaintenanceProvides measured vertical ground motion (subsidence and uplift) for US addresses using NASA OPERA Sentinel-1 InSAR data.-
Glama MCP Gateway
Add one secure layer between your agents and this server.