Agentic data interface
API & MCP for agents
Any agent can query live BrokerMafia data over public HTTPS — firm profiles, FMCSA MC/USDOT point lookups, vertical taxonomy, and capped search. Stats are offline-only (never live COUNT(*)).
Quick start
Base URL: https://brokermafia.com/api/v1
curl -s https://brokermafia.com/api/v1/health | jq .
curl -s https://brokermafia.com/api/v1/stats | jq '.count,.refreshedAt'
curl -s https://brokermafia.com/api/v1/brokers/nandha-transport-inc-mc758091 | jq '.broker.slug,.broker.sourceIds'
curl -s https://brokermafia.com/api/v1/fmcsa/mc/758091 | jq '.results[0].slug'
curl -s 'https://brokermafia.com/api/v1/search?q=Nandha&limit=5' | jq '.count,.results[].slug'
Machine card: /api/v1/agent.json · OpenAPI: /api/v1/openapi.json
Endpoints
| Method | Path | Notes |
|---|---|---|
| GET | /health | Liveness + discovery URLs |
| GET | /stats | Offline aggregates only |
| GET | /verticals | Taxonomy from ASSETS |
| GET | /brokers/{slug} | Indexed point lookup |
| GET | /search?q=&vertical=&state=&source=&limit= | Default 20, max 50; require a filter |
| GET | /fmcsa/mc/{mc} | MC / FF / MX docket |
| GET | /fmcsa/usdot/{dot} | USDOT number |
| GET | /openapi.json | OpenAPI 3 |
| GET | /agent.json | Agent card |
Cursor MCP (stdio)
Run the small Node MCP server that proxies these HTTPS endpoints — no Supabase credentials required.
cd mcp
npm install
# Cursor → Settings → MCP → Add server (stdio):
# command: node
# args: ["/absolute/path/to/brokermafia/mcp/src/index.js"]
Tools: search_brokers, get_broker, lookup_fmcsa_mc, lookup_fmcsa_usdot, list_verticals, get_stats.
Hard rules
- No live
COUNT(*)/ heavy aggregates on request paths. - Stats from offline
brokermafia.stats//data/stats.jsononly. - Search is capped; unfiltered list scans are rejected.
- Public regulatory data — not an FMCSA (or other regulator) endorsement.