# SMB Listings > Search business-for-sale listings from public marketplaces and broker sites through one REST API and MCP server for AI agents. Asking price, revenue, cash flow and multiples, normalized. Pay per request; 250 free credits. SMB Listings aggregates public business-for-sale listings (websites, SaaS, ecommerce, and more) from public marketplaces and broker sites, normalizes asking price, annual revenue and cash flow to USD, and serves them through a REST API and an MCP server. Use it to find businesses to buy, monitor new listings, and compare valuation multiples by industry. ## Docs - [API and MCP documentation](https://smblistings.ai/docs): authentication, credits, endpoints, listing fields, MCP setup - [OpenAPI spec](https://smblistings.ai/openapi.json): machine-readable REST API definition - [Full docs for LLMs](https://smblistings.ai/llms-full.txt): everything in one file, plus current market statistics by industry ## Data - [Businesses for sale by industry](https://smblistings.ai/businesses-for-sale): listing counts, median asking price and median price-to-cash-flow multiple per industry ## Optional - [Sign up](https://smblistings.ai/sign-in?mode=sign-up): 250 free credits, no card ## Authentication Create an account at https://smblistings.ai/sign-in (250 free credits), then create an API key on the dashboard. Send it as `x-api-key: ` or `Authorization: Bearer `. ## Credits 1 credit = 1 request. Credits never expire. The balance is returned in the `x-credits-remaining` header. When credits run out the API returns HTTP 402. ## Rate limits Each account can make 120 requests per minute across REST and MCP. Every response includes `RateLimit-Limit`, `RateLimit-Remaining` and `RateLimit-Reset` (seconds until the window resets). Over the limit, the API returns HTTP 429 with a `Retry-After` header; wait that many seconds and retry. Repeated requests with invalid keys from one IP address are blocked for a minute. | Pack | Price (USD) | Credits | | --- | --- | --- | | Free | $0 | 250 | | Starter | $29 | 5,000 | | Pro | $149 | 50,000 | | Scale | $799 | 500,000 | ## REST endpoints Base URL: `https://smblistings.ai/api/v1`. OpenAPI spec: https://smblistings.ai/openapi.json | Endpoint | Credits | Description | | --- | --- | --- | | `GET /listings/search` | 1 | Search listings. Query: `q`, `industry`, `source`, `location`, `minPrice`, `maxPrice`, `minCashFlow`, `limit` (1-100), `offset` | | `GET /listings/new?since=` | 1 | Listings first seen after a timestamp, newest first (max 100) | | `GET /listings/{id}` | 1 | One listing by `id` (as returned by search) | | `GET /account` | 0 | Credit balance | Example: ```bash curl "https://smblistings.ai/api/v1/listings/search?industry=Health%20and%20Beauty&maxPrice=500000" \ -H "x-api-key: sl_..." ``` ## Listing fields | Field | Type | Notes | | --- | --- | --- | | `id` | string | Stable listing id | | `source` | string | Where the listing was found | | `url` | string | Original listing; always link users here | | `title` | string | Listing headline | | `industry` | string \| null | Industry label | | `location` | string \| null | Free text, e.g. "TX, United States" | | `askingPrice` | number \| null | USD | | `revenue` | number \| null | USD, annual | | `cashFlow` | number \| null | USD, annual profit / SDE | | `firstSeen`, `lastSeen` | ISO 8601 | When we first and last saw the listing | ## MCP server Remote MCP server (Streamable HTTP): `https://smblistings.ai/api/mcp`. Authenticate with `Authorization: Bearer `. Listing tools is free; tool calls cost the same as the REST endpoints. | Tool | Credits | Description | | --- | --- | --- | | `search_listings` | 1 | Same filters as `/listings/search` | | `get_listing` | 1 | One listing by id | | `new_listings` | 1 | Listings first seen after a timestamp | | `get_credits` | 0 | Remaining credits | ## Connect your AI tool Every client needs the same two things: the server URL `https://smblistings.ai/api/mcp` and the header `Authorization: Bearer sl_...` with your API key. Replace `sl_...` with your key, or keep it in an environment variable where the client supports one. ### Claude Code ```bash claude mcp add --transport http smblistings https://smblistings.ai/api/mcp --header "Authorization: Bearer sl_..." ``` ### Claude Desktop and claude.ai Open Customize, then Connectors, then Add custom connector. Enter the name `smblistings` and the URL `https://smblistings.ai/api/mcp`, and add a request header `Authorization` with the value `Bearer sl_...`. On Team and Enterprise plans an owner adds it under Organization settings, then Connectors. ### Cursor Add to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (one project): ```json { "mcpServers": { "smblistings": { "url": "https://smblistings.ai/api/mcp", "headers": { "Authorization": "Bearer ${env:SMBLISTINGS_API_KEY}" } } } } ``` ### VS Code with GitHub Copilot Add to `.mcp.json` in your workspace: ```json { "mcpServers": { "smblistings": { "type": "http", "url": "https://smblistings.ai/api/mcp", "headers": { "Authorization": "Bearer ${SMBLISTINGS_API_KEY}" } } } } ``` ### Gemini CLI ```bash gemini mcp add --transport http --header "Authorization: Bearer sl_..." SMB Listings https://smblistings.ai/api/mcp ``` ### OpenAI Codex CLI Add to `~/.codex/config.toml`, and set `SMBLISTINGS_API_KEY` in your environment: ```toml [mcp_servers.smblistings] url = "https://smblistings.ai/api/mcp" bearer_token_env_var = "SMBLISTINGS_API_KEY" ``` ### Zed Add to `context_servers` in Zed's `settings.json`, or use Settings, then AI, then MCP Servers, then Add Remote Server: ```json { "context_servers": { "smblistings": { "url": "https://smblistings.ai/api/mcp", "headers": { "Authorization": "Bearer sl_..." } } } } ``` ### Cline ```bash cline mcp add smblistings https://smblistings.ai/api/mcp --transport http --header "Authorization: Bearer sl_..." --yes ``` Or add to `cline_mcp_settings.json` with `"type": "streamableHttp"`, the URL, and the header. ### Other clients Any client that can add a remote (Streamable HTTP) MCP server with a custom request header works the same way. Some clients, including ChatGPT, only support sign-in (OAuth) for remote servers; OAuth support is on our roadmap. ## Market statistics (as of 2026-11-15) - Listings tracked: 2,003 (2,003 new in the last 7 days) - Median asking price: $5,700 - Median asking price / annual cash flow: 2.5x | Industry | Listings | Median asking price | Median annual cash flow | Median multiple | Page | | --- | --- | --- | --- | --- | --- | | Business | 334 | $5,000 | $2,604 | 2.9x | https://smblistings.ai/businesses-for-sale/business | | Internet | 284 | $3,500 | $2,316 | 3.9x | https://smblistings.ai/businesses-for-sale/internet | | Design and Style | 264 | $2,500 | $2,160 | 2.0x | https://smblistings.ai/businesses-for-sale/design-and-style | | Health and Beauty | 203 | $7,476 | $9,288 | 2.1x | https://smblistings.ai/businesses-for-sale/health-and-beauty | | Home and Garden | 177 | $8,386 | $4,548 | 2.9x | https://smblistings.ai/businesses-for-sale/home-and-garden | | Entertainment | 131 | $14,900 | $11,796 | 2.1x | https://smblistings.ai/businesses-for-sale/entertainment | | Lifestyle | 98 | $5,000 | $7,944 | 1.9x | https://smblistings.ai/businesses-for-sale/lifestyle | | Sports and Outdoor | 97 | $6,642 | $2,754 | 2.5x | https://smblistings.ai/businesses-for-sale/sports-and-outdoor | | Hobbies and Games | 89 | $5,800 | $1,176 | 2.9x | https://smblistings.ai/businesses-for-sale/hobbies-and-games | | Education | 77 | $7,853 | $2,280 | 3.0x | https://smblistings.ai/businesses-for-sale/education | | Food and Drink | 73 | $1,500 | $1,920 | 2.7x | https://smblistings.ai/businesses-for-sale/food-and-drink | | Travel | 63 | $5,000 | $3,324 | 3.0x | https://smblistings.ai/businesses-for-sale/travel | | Electronics | 41 | $5,617 | $5,448 | 2.7x | https://smblistings.ai/businesses-for-sale/electronics | | Automotive | 40 | $9,999 | $11,268 | 2.4x | https://smblistings.ai/businesses-for-sale/automotive | | General Knowledge | 32 | $6,639 | $3,204 | 1.7x | https://smblistings.ai/businesses-for-sale/general-knowledge |