BoringBuy for AI agents
A Model Context Protocol endpoint over screened North American businesses for sale: normalised USD financials, cash-flow multiples, red flags and SBA 7(a) loan benchmarks. No CAPTCHA, CORS open, JSON-RPC 2.0 over HTTP.
https://boringbuy.com/api/mcpAccess tiers
| Tier | Results / call | Fields & tools | Limit |
|---|---|---|---|
| Keyless | 10 | Teaser fields, market_stats, basic valuation | 60 calls / 10 min per IP |
| Operator key | 50 | Full public fields, valuation_check with DSCR, new_since | 500 calls / mo |
| Firm key | 100 | Everything in Operator + broker contact | 5,000 calls / mo |
A key on the free Browse plan gets keyless-equivalent teaser access.
Tools
search_listingsSearch live NA listings. Keyless gets teaser fields; keys get full public fields and red flags.
Arguments: q, country, state, category, min_price, max_price, min_cash_flow, max_cash_flow, min_multiple, max_multiple, seller_financing, sort (multiple_asc | price_asc | price_desc | newest), limit, offset
get_listingOne listing. Keyless: teaser + 300-char description. Operator: all public fields, red flags, SBA benchmark. Firm: + broker name and phone.
Arguments: id
valuation_checkCategory multiple median/p25/p75, percentile and SBA benchmark. Keys add debt service and DSCR.
Arguments: listing_id — or asking_price, cash_flow, category, state
new_sinceListings fetched on or after a date. Operator and Firm keys only.
Arguments: since (ISO date, required), q, country, state, category, min_price, max_price, min_cash_flow, max_cash_flow, min_multiple, max_multiple, seller_financing
market_statsCount and median/p25/p75 of asking price, cash flow and multiple across all matching listings. Free.
Arguments: country, state, category
Claude Desktop / Cursor config
{
"mcpServers": {
"boringbuy": {
"url": "https://boringbuy.com/api/mcp",
"headers": { "Authorization": "Bearer bb_..." }
}
}
}Omit the headers block for keyless access.
curl
# initialize
curl -s -X POST https://boringbuy.com/api/mcp -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18"}}'
# list tools
curl -s -X POST https://boringbuy.com/api/mcp -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
# search (add -H 'Authorization: Bearer bb_...' for keyed access)
curl -s -X POST https://boringbuy.com/api/mcp -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search_listings","arguments":{"state":"WA","max_multiple":3,"limit":10}}}'