Skip to main content

Government Data

US government open data: federal procurement opportunities (SAM.gov) and product recalls (CPSC + FDA). Both are free public feeds with no API key required — the same data the contracting and safety industries use.

What it scrapes

SourceData
SAM.gov (public API v2)Federal procurement opportunities and contract awards
CPSC + FDA (open.fda.gov)Product recalls — product, hazard, recall date, severity

Endpoints

Router: routers/gov_data.py · tag: Government Data

MethodPathSummary
GET/v1/gov/procurement/searchSearch federal procurement opportunities
GET/v1/gov/procurement/{notice_id}Single procurement notice
GET/v1/gov/recalls/searchSearch CPSC / FDA product recalls

GET /v1/gov/procurement/search

Query params: query, agency, set_aside, limit (1–200, default 20).

curl -X GET "http://localhost:8005/v1/gov/procurement/search?query=test&limit=1" \
-H "Authorization: Bearer <key>"

Response (200):

{
"success": true,
"query": "test",
"limit": 1,
"data": [
{
"id": "3488234",
"title": "Z--TEST Presolicitation",
"agency": "OFFICE OF ...",
"type": "Presolicitation",
"naics": "531210",
"set_aside": "Total Small Business Set-Aside (FAR 19.5)",
"due_date": "2026-01-01 12:00:00+00",
"url": "https://sam.gov/opp/3488234/view",
"source": "sam_gov"
}
]
}

GET /v1/gov/recalls/search

Query params: query, agency (cpsc | fda), limit.

curl -X GET "http://localhost:8005/v1/gov/recalls/search?agency=cpsc&limit=1" \
-H "Authorization: Bearer <key>"

Response (200):

{
"success": true,
"agency": "cpsc",
"limit": 1,
"data": [
{
"id": "cpsc:12345",
"agency": "cpsc",
"title": "Children's Hooded Sweatshirts Recalled ...",
"product": "Children's hooded sweatshirts",
"reason": "Drawstrings can become entangled ...",
"date": "2023-01-01",
"severity": null,
"url": "https://www.cpsc.gov/Recalls/2023/Recall-12345",
"source": "cpsc"
}
]
}

FDA records use id="fda:<recall_number>", agency="fda", and a severity of "Class I" / "Class II" / "Class III".

MCP tools

ToolBacking endpoint
pry_procurementGET /v1/gov/procurement/search
pry_recallsGET /v1/gov/recalls/search
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "pry_procurement",
"arguments": {"query": "construction", "limit": 10}
}
}

Who uses this

  • GovCon teams — monitor opportunities and set-asides without SAM.gov scraping.
  • Compliance / safety monitoring — recall feeds for retail and marketplace sellers.
  • News desks — recall and award tracking.

Next steps