Streamable HTTP / JSON-RPC 2.0
Standard MCP streamable HTTP. Works over HTTPS, no websockets required. Responses stream progressively for long tools; short tools return in a single frame.
20+ specialized tools tuned for LLM tool selection. Streamable HTTP / JSON-RPC 2.0 at mcp.boringdataplatform.com. Same API key and monthly quota as the REST API — no SDK to install, nothing extra to provision.
What Army IT services opportunities have been posted or updated this week?
Three new and seven updated. Largest is W912-ABC-123 · Enterprise IT Support Services (Dept. of the Army, response due May 2). It was amended Monday — response window extended two weeks. Want me to pull the SOW and summarize the scope?
Pick your client. Paste the config. Restart. The tools appear — no SDK, no OAuth dance, no separate account.
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonmcpServers block if you have one.{
"mcpServers": {
"boring-data-platform": {
"url": "https://mcp.boringdataplatform.com/mcp",
"transport": "streamable-http",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}The full MCP surface has 20+ specialized tools. Names are short and specific so LLMs pick the right one on the first try. Each maps to a REST endpoint — same data, same quota.
| Tool | What it does | Example prompt that selects it |
|---|---|---|
| search_opportunities | Full-text + filter search across canonical records. | “Find Army IT solicitations updated this week.” |
| get_opportunity | Fetch one canonical opportunity thread by record ID. | “Open the full record for this recordId.” |
| get_opportunity_documents | Fetch document metadata and extracted text for an opportunity. | “Pull the documents for this RFQ so I can summarize the SOW.” |
| get_opportunity_history | Fetch amendment and state-change history for an opportunity. | “Show what changed since the original posting.” |
| list_notices | Source-verbatim notices, filtered by date range. | “Show raw SAM.gov postings between Apr 1 and Apr 10.” |
| get_notice | Fetch a single raw notice by ID. | “Open the original notice for this record.” |
| list_changes | Ordered stream of creates / updates / deletes since a timestamp. | “What changed on this watchlist since yesterday?” |
| list_opportunity_analysis | Filter opportunities by structured dimensions and document flags. | “Show DIBBS RFQs with PDFs for NAICS 336413.” |
| search_awards | Search federal contract awards by vendor, agency, NAICS, PSC, and FY. | “Find FY2025 awards for this UEI.” |
| list_award_rollups | Aggregate contract awards by agency, vendor, NAICS, or PSC. | “Which agencies bought the most 541512 work this fiscal year?” |
| get_entity_profile | Connect one UEI to registration, awards, exclusions, and integrity records. | “Give me the risk and award profile for this vendor.” |
| search_exclusions | Search SAM.gov exclusion records by entity identifiers or text. | “Check whether this UEI is excluded.” |
| search_integrity_records | Search public responsibility and integrity records. | “Any public integrity records for this CAGE code?” |
A typical analyst question, walked through end-to-end. Same agent, same key — the tools chain themselves.
I'm tracking DLA aviation RFQs over $100K. Anything new this week? For the biggest one, pull the tech package and tell me what's changed from the original posting.
Four new DLA Aviation RFQs over $100K this week. Biggest is SPE4A626U2442 · Screw, Machine · 2,400 units (est. $184K). Tech package is the T56 engine fastener spec, revision G. Two amendments since posting: quantity went from 1,800 → 2,400, and the response due date moved out five days. The drawing version is unchanged.
Watch that one — ping me if anything changes.
Added to watchlist. I'll check list_changes for SPE4A626U2442 daily and surface any updates.
Claude picked tools on its own — no hand-crafted chain, no function-calling glue code.
/v1/opportunities/:recordId/documents— the agent doesn't have to discover attachment URLs separately.Standard MCP streamable HTTP. Works over HTTPS, no websockets required. Responses stream progressively for long tools; short tools return in a single frame.
Same strata_live_… keys as the REST API. Rotate instantly from the console; old keys keep working for 60s to avoid cutover pain.
A tool call counts as one API request against your plan. Switching between REST and MCP never double-bills. Overage behaves the same on both.
Tool names are short and verb-first. Descriptions state the tool's job in one sentence. Parameter names mirror the REST query params so switching between surfaces is trivial.
Get an API key, paste one snippet into Claude Desktop or Cursor, restart. The tools show up — the data is real.