Developers

API, MCP and CSV

Every call is a POST with a JSON body to https://leads.be-human.ai/api/v1/<tool> and the header Authorization: Bearer bhl_.... Create keys at your account.

Tools

ToolInputUses records
search_businessesstate, city, niche, website (any, none, bad, needs_help, ok), has_email, has_phone, min_rating, limit (1 to 100), offset1 per record returned
lookup_businessphone, or domain, or name with city and state1 per record returned
get_coveragenonefree
get_accountnonefree

Responses

Found: {"status":"ok","results":[...],"metadata":{...}}. Nothing matched: "status":"not_found", and nothing is used. Errors return 4xx with {"error":{"code","message"}}: unauthorized 401, upgrade_required 402, invalid_input 422, fair_use_limit_exceeded 429 with retry_after seconds, tool_not_found 404.

CSV

curl "https://leads.be-human.ai/api/v1/export.csv?state=TX&city=Dallas&niche=plumber&website=needs_help&limit=100" \
  -H "Authorization: Bearer bhl_..." -o dallas-plumbers.csv

MCP

Server URL https://leads.be-human.ai/mcp (streamable HTTP). In Claude Code:

claude mcp add --transport http be-human-leads https://leads.be-human.ai/mcp \
  --header "Authorization: Bearer bhl_..."

Any MCP client that can send a header works the same way. Then ask in plain English, for example "find 20 plumbers in Houston TX without a website and give me a CSV".

Limits

Free: 50 records in total. Pro: 1,000 records in any rolling 24 hours and 10,000 in any 30 days. Up to 5 active keys per account.