github TypeScript re-analysis due

cyanheads/bls-labor-mcp-server

github

Fetch US Bureau of Labor Statistics data — CPI, unemployment, wages, JOLTS, and more via MCP. STDIO or Streamable HTTP.

maintainer
cyanheads
licence
NOASSERTION
first seen
2026-06-04
last seen
2026-08-31
releases · 30d
3
short id

Drift inferred · capture-to-capture

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 code analysis

tools

  • bls_dataframe_describe
  • bls_dataframe_drop
  • bls_dataframe_query
  • bls_get_latest
  • bls_get_series
  • bls_list_surveys
  • bls_search_series
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 3b727e9 · analyzer v33 · 2w ago

skills & prompt files 34

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

code files: 52

filesystem 17

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

shell / exec 9

  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/build.ts :16 import { execFile } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/check-framework-antipatterns.ts :38 import { spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/check-skill-versions.ts :32 import { spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/clean-mcpb.ts :28 import { execFileSync } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/devcheck.ts :2 import { type ChildProcess, spawn, spawnSync } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/lint-packaging.ts :51 import { execFileSync } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/scripts/release-github.ts :32 import { spawnSync } from 'node:child_process';
  • shell cyanheads-bls-labor-mcp-server-3b727e9/src/services/bls-observations/subprocess.ts :20 import { type ChildProcess, spawn } from 'node:child_process';
  • shell (weak) cyanheads-bls-labor-mcp-server-3b727e9/tests/services/bls-observations/subprocess.test.ts :3 * parent-side spawn supervision. `node:child_process.spawn` is mocked (via

network 3

  • net cyanheads-bls-labor-mcp-server-3b727e9/src/services/bls-api/bls-api-service.ts :270 const response = await fetch(`${this.baseUrl}/timeseries/data`, {
  • net cyanheads-bls-labor-mcp-server-3b727e9/src/services/bls-catalog/bls-catalog-service.ts :381 fetch(`${baseUrl}/${abbr}/${abbr}.series`, { headers, signal: AbortSignal.timeout(30_000) }),
  • net cyanheads-bls-labor-mcp-server-3b727e9/src/services/bls-observations/ingester.ts :25 /** Retry budget for a single HTTP fetch (3 attempts, linear backoff). */

secrets 1

  • secrets (weak) cyanheads-bls-labor-mcp-server-3b727e9/tests/tools/bls-get-series.tool.test.ts :609 // process.env.BLS_API_KEY is typically empty/undefined in tests — confirm no secret leakage pattern

tool registrations 7

  • bls_dataframe_describe cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-dataframe-describe.tool.ts :12
  • bls_dataframe_drop cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-dataframe-drop.tool.ts :12
  • bls_dataframe_query cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-dataframe-query.tool.ts :13
  • bls_get_latest cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-get-latest.tool.ts :33
  • bls_get_series cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-get-series.tool.ts :72
  • bls_list_surveys cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-list-surveys.tool.ts :43
  • bls_search_series cyanheads-bls-labor-mcp-server-3b727e9/src/mcp-server/tools/definitions/bls-search-series.tool.ts :12

declared dependencies 13

  • @cyanheads/mcp-ts-core@^0.12.3
  • @duckdb/node-api@^1.5.5-r.4
  • better-sqlite3@^13.0.3
  • pino-pretty@^13.1.3
  • zod@^4.4.3
  • @biomejs/biome@^2.5.9
  • @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
show 1 more
  • vitest@^4.1.11