fcc-broadband-mcp-server
Server Details
FCC broadband availability, coverage analysis, and digital divide data for US geographies.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- cyanheads/fcc-broadband-mcp-server
- GitHub Stars
- 1
- Server Listing
- fcc-broadband-mcp-server
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 9 tools
Most tools have clear distinct roles: geocode, block-level availability, provider lookup, geography search, and filing periods are unambiguous. However, fcc_compare_areas, fcc_find_underserved, and fcc_get_coverage_summary all return coverage/population metrics at geography level, and the first two both produce ranked tables by unserved population, which could cause misselection without reading the descriptions carefully.
All nine tools use a consistent fcc_ prefix with snake_case verb_noun structure (fcc_search_*, fcc_get_*, fcc_list_*, fcc_compare_*, fcc_find_*, fcc_geocode_*). Verb choices vary (get/search/find) but reflect number and intent, and the convention is predictable throughout.
Nine tools is well within the ideal 3-15 range and each tool covers a distinct slice of the workflow: coordinate resolution, block lookup, provider search/profile, geography lookup, summary/compare/screening, and data vintage listing. No filler tools are apparent.
The Form 477 lookup path is well covered end-to-end (geocode -> availability -> provider -> summary), but fcc_list_filing_periods instructs the caller to call fcc_list_downloads to determine valid BDC as_of_date values, and no such tool exists, leaving BDC downloads as a dead end. There is also no way to actually query BDC-vintage data despite the credential-gated periods being exposed.
Available Tools
9 toolsfcc_compare_areasCompare Broadband Coverage Across AreasARead-onlyIdempotentInspect
Compares broadband coverage metrics across multiple geographies of the same type and returns a ranked table sorted by unserved or underserved population. Compares historical population coverage gaps; it cannot establish current BEAD eligibility or address service. Compares the first 300 distinct geography IDs and discloses duplicates, unmatched IDs and excluded IDs, or set compare_all_states=true for all 50 states + DC. Data is from FCC Form 477 (as of June 2021).
Inputs: geography_type (required), sort_by, speed_down, tech_filter, +2 more. Returns: areas, error, notice, sortBy, +9 more
fcc_find_underservedFind Underserved AreasARead-onlyIdempotentInspect
Finds geographic areas with limited or no broadband coverage at a given speed threshold, ranked by unserved population. Supports historical population screening and broadband equity research; it cannot establish current BEAD eligibility or address service. Accepts a state abbreviation to narrow scope or runs nationwide. Defaults to rural areas where underservice is most concentrated. Data is from FCC Form 477 (as of June 2021).
Inputs: limit, state, offset, speed_down, +4 more. Returns: cap, areas, error, shown, +12 more
fcc_geocode_blockGeocode Census BlockARead-onlyIdempotentInspect
Converts a latitude/longitude coordinate to a 15-digit census block FIPS code, plus county FIPS, county name, state FIPS, state code, and state name. This is the required prerequisite for fcc_search_availability since the broadband dataset is indexed by census block, not address. The block is resolved against 2010 census boundaries, the vintage the Form 477 deployment dataset is keyed by, so the returned blockFips can be passed straight to fcc_search_availability; a 2020-vintage block ID from another source will not match. Uses the FCC public Geo API — no authentication required.
Inputs: latitude (required), longitude (required). Returns: error, blockFips, stateCode, stateFips, +4 more
fcc_get_coverage_summaryGet Broadband Coverage SummaryARead-onlyIdempotentInspect
Returns a broadband coverage summary for a geography — population with zero, one, two, or three-plus providers at a given speed threshold, split by urban/rural and tribal/non-tribal segments. The primary tool for digital divide and equity analysis. Supports state, county, congressional district, census place, CBSA (metro area), tribal area, and national level. Data is from FCC Form 477 (as of June 2021), for historical population screening; it cannot establish current BEAD eligibility or address service.
Inputs: geography_type (required), speed_down, tech_filter, geography_id, +2 more. Returns: error, notice, breakdown, geography, +8 more
fcc_get_providerGet Provider ProfileARead-onlyIdempotentInspect
Returns a national-level coverage profile for a specific holding company (by hoconum): technologies deployed and the population covered at each download speed tier. Population figures come from the FCC provider summary table and count each person once, regardless of how many technologies the provider uses to reach them. Use fcc_search_providers to find valid hoconum values. Data is from FCC Form 477 (as of June 2021).
Inputs: hoconum (required). Returns: error, hoconum, techCodes, techLabels, +3 more
fcc_list_filing_periodsList Filing PeriodsARead-onlyIdempotentInspect
Returns available data vintages: Form 477 filing periods (hardcoded Jun 2015 – Jun 2021, always available) and BDC as-of dates from the authenticated API (Jun 2022 onward, requires credentials). When hasBdcCredentials is true, call this before fcc_list_downloads to determine valid as_of_date values. Note: there is a data gap between June 2021 (last Form 477) and June 2022 (first BDC filing period).
Inputs: include_bdc. Returns: error, periods, bdcCount, dataNote, +2 more
fcc_search_availabilitySearch Broadband AvailabilityARead-onlyIdempotentInspect
Queries broadband providers and advertised speeds at a census block from FCC Form 477 data (as of June 2021). Answers "which ISPs serve this location and what speeds do they offer?" — the core tool for address-level broadband lookup. Requires a 15-digit census block FIPS code; use fcc_geocode_block to convert coordinates first. Data reflects ISP-reported availability at the block level, which may overstate actual coverage for some addresses.
Inputs: block_fips (required), consumer, tech_filter, min_speed_down. Returns: error, notice, blockFips, providers, +3 more
fcc_search_geographiesSearch GeographiesARead-onlyIdempotentInspect
Find states, counties, congressional districts (cd), census places, CBSAs (metro areas), and tribal areas by case-insensitive literal name substring in the 2021 FCC geography lookup. Keep ambiguous matches distinct and choose the geography_type and geography_id to pass to fcc_get_coverage_summary. Include a location qualifier in name to narrow results; names do not establish exhaustive state membership. Always queries live FCC Open Data, even with the Form 477 mirror enabled, and needs no BDC credentials. Follow nextOffset until absent; no total match count is computed.
Inputs: name (required), limit, offset, geography_type. Returns: cap, count, error, shown, +6 more
fcc_search_providersSearch Broadband ProvidersARead-onlyIdempotentInspect
Searches for ISPs by holding company name, filtered by state and technology type. Returns a deduplicated list of matching providers with hoconum identifiers for follow-up calls to fcc_get_provider. Answers "which ISPs serve Washington with fiber?" and "find all Comcast entities." Geographic filtering is state-level; sub-state granularity requires cross-referencing block data. Against the live FCC API the search reads a bounded window of deployment rows to find which holding companies match, so when scanTruncated comes back true the providers are a sample of the matches rather than every one of them and no true match count is available; a narrower filter raises the share of matches the sample surfaces but cannot make it complete, and only a deployment running the local Form 477 mirror returns every match. The sample is of which companies come back — every company that does carries its complete national footprint, since statesServed and techCodes are resolved per company rather than read off the window, at the cost of one lookup per provider returned. Data is from FCC Form 477 (as of June 2021).
Inputs: limit, state, offset, name_search, +1 more. Returns: cap, error, shown, notice, +10 more
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Broadband availability, providers, speeds, and BEAD classification from the FCC
US telecom availability and intelligence by address, with FCC provenance. Fiber-first.
FCC Open Data (opendata.fcc.gov) Socrata MCP.
FCC public geo/census APIs (geo.fcc.gov) MCP.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables querying and exploring FCC Open Data datasets via Socrata SoQL, including dataset search, metadata retrieval, and data querying.143 npmMIT
- 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.107 npmMIT
- FlicenseNot gradedqualityAmaintenanceEnables AI assistants to discover official datasets, resolve geographic identifiers, and retrieve demographic and statistical data from official U.S. census sources.-
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to discover, query, and analyze official Census Bureau datasets and statistics, including geography lookup and aggregate data retrieval.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.