mcpbeat Sign in

BNM Data Shop MCP Server

answering

BNM Data Shop is answering right now. Last checked 14 min ago. It exposes 81 tools. Last commit 31 Oct 2026.

Official public-data caches sold per pull via x402/USDC on Base.

Uptime history 67 days of history · worst day 77%
67 days agonow
95.6%
Uptime 24h
87 of 91 checks
81
Tools
read from the server
7313 ms
Response time
average over 24h
2
Stars
last commit 31 Oct 2026

What changed 258

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 1 September 2026. No other catalogue keeps this.

30 Sep 3 tools changed the parameters they ask for6 times that day get-one, get-page, search
30 Sep 2 tools appeared cftc-reparations, msha-fatals
30 Sep a tool description was rewritten2 times that day firm-check
29 Sep 3 tools changed the parameters they ask for12 times that day get-one, get-page, search
29 Sep 4 tools appeared cbca-decisions, ferc-issuances, mspb-decisions and 1 more
29 Sep a tool description was rewritten3 times that day firm-check
26 Sep 3 tools changed the parameters they ask for get-one, get-page, search
26 Sep a tool appeared ccb-determinations
25 Sep 3 tools changed the parameters they ask for get-one, get-page, search
25 Sep a tool appeared ibla-decisions
and 236 more, back to 1 September 2026

What the code does

We read the source, 1 d ago · tools taken from the live server · rules 995398eba69f

Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Runs an external command src/ticks-ams.ts:4202
  const result = spawnSync(helper, ["-layout", pdfPath, "-"], {

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

This code can reach further than it looks

We found places where it runs commands, builds paths or queries from values it is given. None of that is a flaw by itself — it becomes one when the code changes, and code changes quietly between releases. We re-read it on every one.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 14 min ago.

run in your terminal
claude mcp add bnm-data-shop --transport http https://ticks.bnm.farm/mcp
Settings → Connectors → Add custom connector, then paste this address
https://ticks.bnm.farm/mcp
~/.codex/config.toml
[mcp_servers.bnm-data-shop]
url = "https://ticks.bnm.farm/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "bnm-data-shop": {
      "url": "https://ticks.bnm.farm/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "bnm-data-shop": {
      "type": "http",
      "url": "https://ticks.bnm.farm/mcp"
    }
  }
}

Available tools 81

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

mariners
mariners
GET https://ticks.bnm.farm/mariners — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D13 / Northwest LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d1
GET https://ticks.bnm.farm/mariners-d1 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D1 / Northeast LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d11
GET https://ticks.bnm.farm/mariners-d11 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D11 / Southwest LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d14
GET https://ticks.bnm.farm/mariners-d14 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D14 / Pacific LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d17
GET https://ticks.bnm.farm/mariners-d17 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D17 / Alaska LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d5
GET https://ticks.bnm.farm/mariners-d5 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D5 / Mid-Atlantic LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d7
GET https://ticks.bnm.farm/mariners-d7 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D7 / Southeast LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d8
GET https://ticks.bnm.farm/mariners-d8 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D8 / Gulf LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mariners-d9
GET https://ticks.bnm.farm/mariners-d9 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG D9 / Great Lakes LNM Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
epa
epa-alj
GET https://ticks.bnm.farm/epa-alj — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA OALJ Initial Decision and Order + ALJ Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
epa-cafo
GET https://ticks.bnm.farm/epa-cafo — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA Part 22 CAFO / ESA administrative penalty letter text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
epa-eab
GET https://ticks.bnm.farm/epa-eab — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA EAB Unpublished Final Order / Board Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
cftc
cftc-orders
GET https://ticks.bnm.farm/cftc-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. CFTC institution enforcement-order / settlement text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
cftc-reparations
GET https://ticks.bnm.farm/cftc-reparations — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. CFTC reparations disposition and Commission opinion text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ferc
ferc-issuances
GET https://ticks.bnm.farm/ferc-issuances — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FERC eLibrary Commission order/opinion and ALJ initial-decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ferc-orders
GET https://ticks.bnm.farm/ferc-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FERC institution stipulation-and-consent text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ftc
ftc-orders
GET https://ticks.bnm.farm/ftc-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FTC ALJ Decision / Commission Decision and Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ftc-wl
GET https://ticks.bnm.farm/ftc-wl — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FTC BCP warning-letter text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
gmp
gmp
GET https://ticks.bnm.farm/gmp — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Health Canada Drug GMP report-card observation bodies GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
gmp-md
GET https://ticks.bnm.farm/gmp-md — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Health Canada medical-device report-card observation bodies GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
aaib
aaib-reports
GET https://ticks.bnm.farm/aaib-reports — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. UK AAIB investigation-report text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
air
air-letters
GET https://ticks.bnm.farm/air-letters — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USDA APHIS AIR confirmation-letter text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
awa
awa
GET https://ticks.bnm.farm/awa — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USDA APHIS AWA inspection-report observation text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
bis
bis-orders
GET https://ticks.bnm.farm/bis-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. BIS institution charging-letter / order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
bsee
bsee-reports
GET https://ticks.bnm.farm/bsee-reports — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. BSEE District Accident Investigation Report text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
cbca
cbca-decisions
GET https://ticks.bnm.farm/cbca-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. CBCA decision, dismissal, and order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ccb
ccb-determinations
GET https://ticks.bnm.farm/ccb-determinations — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Copyright Claims Board Final Determination text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
cder
cder-reviews
GET https://ticks.bnm.farm/cder-reviews — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA CDER Integrated Review text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
cfpb
cfpb-orders
GET https://ticks.bnm.farm/cfpb-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. CFPB consent-order / administrative-order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
cma
cma-ca98
GET https://ticks.bnm.farm/cma-ca98 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. UK CMA CA98 infringement-decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
csb
csb-reports
GET https://ticks.bnm.farm/csb-reports — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. US CSB final investigation report PDFs Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
denovo
denovo-orders
GET https://ticks.bnm.farm/denovo-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA De Novo classification-order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ecab
ecab-decisions
GET https://ticks.bnm.farm/ecab-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. ECAB FECA Decision and Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
eeoc
eeoc-appellate
GET https://ticks.bnm.farm/eeoc-appellate — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EEOC OFS appellate decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
eis
eis-reports
GET https://ticks.bnm.farm/eis-reports — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA NEPA Environmental Impact Statement PDFs GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ema
ema-referrals
GET https://ticks.bnm.farm/ema-referrals — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EMA human-medicine referral procedure text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
faa
faa-civil-penalty
GET https://ticks.bnm.farm/faa-civil-penalty — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FAA Civil Penalty Appeals Administrator Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fcc
fcc-eb-orders
GET https://ticks.bnm.farm/fcc-eb-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FCC Enforcement Bureau order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fdic
fdic-orders
GET https://ticks.bnm.farm/fdic-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDIC institution consent-order / C&D text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fifra
fifra-orders
GET https://ticks.bnm.farm/fifra-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA FIFRA institution order / consent text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fincen
fincen-orders
GET https://ticks.bnm.farm/fincen-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FinCEN institution consent-order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
firm
firm-check
Free cross-door search of official caches: Form 483, FDA warning letters, FDA untitled letters, FTC BCP warning letters, FTC ALJ/Commission orders, FMC orders, NMB representation determinations, NLRB Board decisions, FLRA Authority decisions, ECAB decisions, FCC Enforcement Bureau orders, CBCA decisions, MSPB decisions, FERC eLibrary issuances, CFTC reparations dispositions and Commission opinions, MSHA fatality final reports, EEOC OFS appellate decisions, Ofwat enforcement, Ofgem enforcement, CFPB orders, OCC C&Ds, FDIC orders, and the FDA import-alert catalog. Not a paid SKU. Hits name the door, the id or page to buy, and fetchedAt/asOf. One official text is GET ?id= ($0.02). The page of newest 10 official texts is $0.05. The import-alert table stays the entire current table at $0.05. Does not return letter, decision, or order bodies or the full import-alert table.
flra
flra-decisions
GET https://ticks.bnm.farm/flra-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FLRA Authority Decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fmc
fmc-orders
GET https://ticks.bnm.farm/fmc-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FMC Initial Decision / Commission Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fmshrc
fmshrc-orders
GET https://ticks.bnm.farm/fmshrc-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FMSHRC ALJ + Commission Decision/Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
form
form-483
GET https://ticks.bnm.farm/form-483 — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA Form 483 observation bodies GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
frb
frb-orders
GET https://ticks.bnm.farm/frb-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FRB institution C&D / written-agreement / PCA text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
fsis
fsis-humane
GET https://ticks.bnm.farm/fsis-humane — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USDA FSIS humane-handling enforcement letter text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
gain
gain
GET https://ticks.bnm.farm/gain — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USDA FAS GAIN attaché report TEXT GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
hhs
hhs-oig-reports
GET https://ticks.bnm.farm/hhs-oig-reports — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. HHS OIG audit and evaluation report PDFs Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ibla
ibla-decisions
GET https://ticks.bnm.farm/ibla-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. DOI IBLA precedential decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ico
ico-mpn
GET https://ticks.bnm.farm/ico-mpn — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. ICO Monetary Penalty Notice text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
import
import-alerts
GET https://ticks.bnm.farm/import-alerts — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA Import Alerts / DWPE Whole current table ($0.05). Send If-None-Match or ?since= to 304 an unchanged snapshot. Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
msha
msha-fatals
GET https://ticks.bnm.farm/msha-fatals — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. MSHA Fatality Investigation Final Report text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
mspb
mspb-decisions
GET https://ticks.bnm.farm/mspb-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. MSPB nonprecedential and precedential decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ncua
ncua-orders
GET https://ticks.bnm.farm/ncua-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. NCUA institution consent C&D text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
nlrb
nlrb-decisions
GET https://ticks.bnm.farm/nlrb-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. NLRB published Board Decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
nmb
nmb-determinations
GET https://ticks.bnm.farm/nmb-determinations — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. NMB representation determination text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
npdes
npdes-permits
GET https://ticks.bnm.farm/npdes-permits — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA individual NPDES permit text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
oalj
oalj-decisions
GET https://ticks.bnm.farm/oalj-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. DOL OALJ / BALCA / ARB Decision and Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
occ
occ-cd
GET https://ticks.bnm.farm/occ-cd — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. OCC institution C&D / consent-order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ofac
ofac-orders
GET https://ticks.bnm.farm/ofac-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. OFAC institution enforcement-release text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ofgem
ofgem-enforcement
GET https://ticks.bnm.farm/ofgem-enforcement — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Ofgem enforcement-notice text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ofsted
ofsted-inspections
GET https://ticks.bnm.farm/ofsted-inspections — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Ofsted school / provider inspection report text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ofwat
ofwat-enforcement
GET https://ticks.bnm.farm/ofwat-enforcement — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Ofwat Water Industry Act 1991 enforcement-notice text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
one
get-one
Paid get-one on an extracted-body door. Same URL ?id= ($0.02 / 20000 atomic). Not a new SKU. Unpaid returns HTTP 402 asking 20000.
orr
orr-enforcement
GET https://ticks.bnm.farm/orr-enforcement — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. ORR Railways Act s.55 enforcement-notice text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
oshrc
oshrc-orders
GET https://ticks.bnm.farm/oshrc-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. OSHRC ALJ Decision/Order + Commission Final Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
page
get-page
Paid get-page on an extracted-body door. Same URL as the door GET ($0.05). Omit before/page for the newest 10 official texts; pass the free-index cursor for an older page; ?since= for newer-than. Not a new SKU. Unpaid returns HTTP 402.
pcac
pcac
GET https://ticks.bnm.farm/pcac — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA PCAC 503A briefing-memo evaluation text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
phmsa
phmsa-orders
GET https://ticks.bnm.farm/phmsa-orders — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. PHMSA pipeline enforcement-order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
search
search
Free catalog search on an extracted-body door. Returns matching rows plus id, the ?id= URL ($0.02), and the page cursor ($0.05). Optional before=<catalog id or ISO date> and date filters. Not a paid SKU. Does not return official bodies.
stb
stb-decisions
GET https://ticks.bnm.farm/stb-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. STB Board Decision / Order text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
superfund
superfund-rods
GET https://ticks.bnm.farm/superfund-rods — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. EPA Superfund ROD and Five-Year Review text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
swisspar
swisspar
GET https://ticks.bnm.farm/swisspar — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. Swissmedic first-authorisation SwissPAR evaluation text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ticks
ticks
GET https://ticks.bnm.farm/ticks — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USDA farm market prices Whole current table ($0.05). Send If-None-Match or ?since= to 304 an unchanged snapshot. Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ttab
ttab-decisions
GET https://ticks.bnm.farm/ttab-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USPTO TTAB reading-room decision text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
ttb
ttb-oic
GET https://ticks.bnm.farm/ttb-oic — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. TTB institution Offer in Compromise text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
untitled
untitled-letters
GET https://ticks.bnm.farm/untitled-letters — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA Untitled Letter bodies (CDER OPDP + CBER promo) GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
uscg
uscg-alj-decisions
GET https://ticks.bnm.farm/uscg-alj-decisions — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. USCG ALJ Suspension and Revocation Decisions and Orders text GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.
warning
warning-letters
GET https://ticks.bnm.farm/warning-letters — $0.05 USDC on Base to 0xf59621FC406D266e18f314Ae18eF0a33b8401004. FDA warning-letter bodies GET ?id= is one official text ($0.02). Newest chunk on a plain GET ($0.05); older chunk if they ask (?before, $0.05); newer than a watermark ?since= ($0.05). Unpaid returns HTTP 402. After a valid X-PAYMENT, the same URL returns JSON. Not a new SKU.

Endpoints

URLTransportStateLatencyChecked
https://ticks.bnm.farm/mcp streamable-http answering 6715 ms 14 min ago

Alternatives to BNM Data Shop

same job, measured the same way
L
lokalapi – Indonesian reference data
by lokalapi

Official Indonesian region codes and KBLI 2025 business codes, pay-per-call via x402 (USDC on Base).

6 tools answering
Boo X402 MCP
by lucle87

Pay-per-call crypto data for AI agents. USDC on Base via x402. No API key.

49 installs/wk local only
Agent Utils (x402)
by workers-revenue-agent-jw-agent-utils-x402-production

Pay-per-call US public data for agents: recalls, weather, climate, SEC filings. x402 USDC on Base.

10 tools answering
P
Polyform
by polyform

Pay-per-call data APIs for AI agents. USDC on Base via x402. 33 tools, no signup.

70 tools answering
Agent Data API
by chiemgaufilms-agent

31 pay-per-call APIs for AI agents: SEO, open data, video planning (EN/DE). USDC on Base via x402.

38 tools answering
C
CryptoPulse Data API
by saascloud

Pay-per-call crypto market intelligence for AI agents. USDC on Base via x402.

11 tools answering
Sovereign Engine
by invertedhoologan

15 paid AI agent primitives via x402 (USDC on Base). Pay-per-call MCP server.

answering
U
Utilsforagents MCP
by utilsforagents

Pay-per-call AI agent utilities via x402 on Base (USDC). 7 tools, $0.003/call.

47 installs/wk local only

BNM Data Shop — questions

Answers built from our own checks of this server.

What can BNM Data Shop do?
It exposes 81 tools, read directly from the server on our last check. Among them: aaib-reports, air-letters, awa, bis-orders, bsee-reports, cbca-decisions and 75 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is BNM Data Shop mostly used for?
Its tools cluster around mariners, epa and gmp. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is BNM Data Shop working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 87 of 91 checks got a reply (95.6%), average response time 7313 ms. The bar chart above shows every period we have measured.
How do I connect BNM Data Shop?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does BNM Data Shop need an API key?
No. BNM Data Shop completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 81 of them are readable on this page. This is what we observed, not what the docs claim.
Is BNM Data Shop open source?
The code is open source: it is published under the MIT licence, written in TypeScript, 2 stars on GitHub and 4 open issues. The licence covers the code in the repository, not the hosted service at ticks.bnm.farm, which runs on its operator's own terms.