github TypeScript analyzed a5ee8fb

cyanheads/census-mcp-server

github

Query U.S. Census Bureau data, variables, and geography via MCP.

maintainer
cyanheads
licence
Apache-2.0
first seen
2026-06-04
last seen
2026-09-10
releases · 30d
1
short id

Drift inferred · capture-to-capture

  1. HIGH lost verified
  2. HIGH lost verified
  3. HIGH lost verified
  4. HIGH lost verified
  5. HIGH lost verified
  6. HIGH gained fs + net + db · 5 tools changed permissions · transport stdio → http · …

tool count over time

06-13 14:36 now
7t
7t
capabilities 7 tools
transport stdio · streamable-http · http verified reported listed in the official MCP registry counts 7 tools · 0 res · 0 prompts permission surface via registry introspection

tools

  • census_compare_geographies

    Compare one or more variables across multiple geographies at the same level — all counties in a state, all states nationally, or a named set of specific geographies. Results are sorted and ranked. Covers queries like "rank states by poverty rate", "compare median income across WA counties", or "which census tracts in King County have the highest renter rate." Omit within to compare all geographies nationally at the level. Suppressed values are decoded to human-readable labels rather than passed through as raw negative sentinels.

    in ▸ year limit within dataset sort_by sort_dir variables geographies within_county geography_level

  • census_get_variable

    Fetch full metadata for one or more Census variable codes — label, concept group, predicate type, universe, and margin-of-error sibling references. Use to confirm a variable code before building a query, or to look up what a known code means. Returns estimate_code and moe_code sibling references where applicable so you can request both without a separate search.

    in ▸ year dataset variables

  • census_list_datasets

    Browse available Census Bureau datasets with their supported vintage years. Use as the starting point when the right dataset is unknown — ACS5, ACS1, population estimates, and decennial census serve different use cases. Pass the dataset_id value to the dataset parameter in other census tools.

    in ▸ filter

  • census_list_geographies

    List the geography levels available for a given Census dataset and year, along with the parent geographies each level requires. Use before querying to confirm that the target geography level exists — ACS1 omits many sub-state levels, and not all datasets support tracts or block groups. The geography_level values returned here are the valid inputs to the geography_level parameter in census_query_data and census_compare_geographies.

    in ▸ year dataset

  • census_query_data

    Query a Census dataset for one or more variables at a specific geography. Accepts FIPS codes for the target geography — use census_resolve_geography to convert place names to FIPS when needed. Labeled estimates and margin-of-error values are returned together. Suppression codes (geography too small, data not collected) are decoded into human-readable reasons rather than passed through as raw negative numbers. Pass geography_fips as "*" to return all geographies at the level within the parent.

    in ▸ year dataset variables county_fips parent_fips geography_fips geography_level

  • census_resolve_geography

    Resolve a place name or street address to Census FIPS identifiers (state, county, tract codes). Converts names like "King County, WA" or "Seattle, WA" to the FIPS codes required by census_query_data and census_compare_geographies. Use before querying when you have a place name rather than raw FIPS codes — state_fips maps to parent_fips and fips_summary maps to geography_fips in downstream tools.

    in ▸ name geography_type

  • census_search_variables

    Search Census variables by keyword across variable labels and concept groups. Returns variable codes with human-readable labels — use this to go from a concept like "median household income" to the variable code B19013_001E needed for data queries. Returns both estimate (E suffix) and margin-of-error (M suffix) codes so you can request both. When total_matches exceeds the limit, narrow the query to see more specific results.

    in ▸ year limit query dataset

skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit a5ee8fb · analyzer v33 · 1w ago

skills & prompt files 34

code evidence vv0.3.3 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 46

filesystem 15

  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/build-changelog.ts :32 import { existsSync, readdirSync, readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/build.ts :17 import { readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-dependency-specifiers.ts :38 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-docs-sync.ts :22 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-framework-antipatterns.ts :39 import { existsSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-skill-versions.ts :33 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-skills-sync.ts :37 import { existsSync, readdirSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/clean-mcpb.ts :29 import { existsSync, statSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/clean.ts :15 import { readdir, rm } from 'node:fs/promises';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/devcheck.ts :3 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/lint-mcp.ts :19 import { existsSync, readdirSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/lint-packaging.ts :52 import { existsSync, readdirSync, readFileSync } from 'node:fs';
show 3 more
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/list-skills.ts :21 import { existsSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/release-github.ts :33 import { existsSync, readFileSync } from 'node:fs';
  • fs (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/tree.ts :24 import type { Dirent } from 'node:fs';

shell / exec 7

  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/build.ts :16 import { execFile } from 'node:child_process';
  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-framework-antipatterns.ts :38 import { spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/check-skill-versions.ts :32 import { spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/clean-mcpb.ts :28 import { execFileSync } from 'node:child_process';
  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/devcheck.ts :2 import { type ChildProcess, spawn, spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/lint-packaging.ts :51 import { execFileSync } from 'node:child_process';
  • shell (weak) cyanheads-census-mcp-server-a5ee8fb/scripts/release-github.ts :32 import { spawnSync } from 'node:child_process';

tool registrations 8

  • census_compare_geographies cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-compare-geographies.tool.ts :25
  • census_get_variable cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-get-variable.tool.ts :14
  • census_list_datasets cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-list-datasets.tool.ts :83
  • census_list_geographies cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-list-geographies.tool.ts :15
  • census_list_predicate_values cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-list-predicate-values.tool.ts :68
  • census_query_data cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-query-data.tool.ts :25
  • census_resolve_geography cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-resolve-geography.tool.ts :11
  • census_search_variables cyanheads-census-mcp-server-a5ee8fb/src/mcp-server/tools/definitions/census-search-variables.tool.ts :14

declared dependencies 11

  • @cyanheads/mcp-ts-core@^0.12.3
  • pino-pretty@^13.1.3
  • zod@^4.4.3
  • @biomejs/biome@2.5.10
  • @socketsecurity/bun-security-scanner@^1.1.2
  • @types/node@26.2.0
  • depcheck@^1.4.7
  • ignore@^7.0.6
  • tsc-alias@^1.9.2
  • typescript@^7.0.2
  • vitest@^4.1.11