API & MCP

Lead generation
your AI agent can call.

The only affordable B2B leads platform with a native MCP server and a REST API. Search 6M+ contacts for free; reveal a verified email for one credit — refunded automatically if we can't verify it. Built for AI sales agents and developers.

Quickstart

Two ways in — connect over MCP so an AI agent can use it as a tool, or call the REST API directly. Both authenticate with the same API key.

1 · Get an API key

Sign in and open the API & MCP tab in your dashboard to create a key. Keys look like la_live_… — shown once, so copy it. The free tier includes 25 credits/month and can use the API.

Start free — 25 credits

2 · Connect over MCP (Claude, Cursor, …)

Add LeadsApp to your MCP client config. We use the mcp-remote bridge (the colon-with-no-space header avoids an arg-escaping bug in some clients).

{
  "mcpServers": {
    "leadsapp": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://leadsapp.com/api/mcp",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": { "AUTH_HEADER": "Bearer la_live_YOUR_KEY" }
    }
  }
}

Restart your client. Your agent now has three tools: search_contacts, reveal_contacts, get_credits.

3 · Or call the REST API

Search is free. Take an id from the results and reveal its verified email for one credit.

curl -X POST https://leadsapp.com/api/v1/search \
  -H "Authorization: Bearer la_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"role":"VP Sales","country":"United States","limit":25}'
curl -X POST https://leadsapp.com/api/v1/reveal \
  -H "Authorization: Bearer la_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"contactIds":["c1a2..."]}'

MCP server

Streamable HTTP at https://leadsapp.com/api/mcp, authenticated with your API key as a bearer token. Tools run in your account and spend from your credit balance.

search_contactsfree

Search the contact database. Args: q, industry, role, country, region, companySize, limit. Returns matches WITHOUT emails — pass the ids to reveal_contacts.

reveal_contacts1 credit / deliverable

Reveal + verify emails for ids from search_contacts. Args: contactIds[]. Anything unverifiable is refunded automatically.

get_creditsfree

Return the API key owner's current credit balance.

REST API

Base URL https://leadsapp.com/api/v1. Every request needs Authorization: Bearer la_live_….

POST/api/v1/searchfree

Filter by q (name/title/company), industry, role, country, region, companySize. limit ≤ 100, offset ≤ 4900. Emails are never returned here.

{
  "count": 25,
  "limit": 25,
  "offset": 0,
  "results": [
    {
      "id": "c1a2...",
      "fullName": "Jane Doe",
      "jobTitle": "VP Sales",
      "companyName": "Acme Co",
      "companyDomain": "acme.com",
      "companyIndustry": "Software",
      "locationRegion": "Ontario",
      "locationCountry": "Canada",
      "hasEmail": 1
    }
  ]
}
POST/api/v1/reveal1 credit / deliverable

Body { contactIds: [...] } (1–1000). Charges 1 credit per deliverable contact; non-deliverable and already-owned contacts are not charged. 402 if you're out of credits.

{
  "revealed": [
    {
      "id": "c1a2...",
      "email": "jane@acme.com",
      "fullName": "Jane Doe",
      "jobTitle": "VP Sales",
      "companyName": "Acme Co",
      "companyDomain": "acme.com",
      "verifyStatus": "valid",
      "confidence": 84
    }
  ],
  "creditsSpent": 1,
  "creditsRefunded": 0,
  "balance": 24
}
GET/api/v1/mefree

Your current credit balance and plan — check quota before a big reveal.

curl https://leadsapp.com/api/v1/me \
  -H "Authorization: Bearer la_live_YOUR_KEY"
# → { "credits": 24, "plan": "free", "subscriptionStatus": null }

Credits & limits

  • Search is always free. One credit reveals one deliverable contact.
  • Anything we can't verify is refunded automatically — you never pay for an email we won't stand behind. Re-revealing a contact you already own is free.
  • Free: 25 credits/month. Paid plans 200 → 2,000 credits/month — see pricing.
  • Rate limits: search 60/min, reveal 3/min. A 429 means slow down; a 402 means top up.

About the data

~6M B2B business contacts across the US and Canada, weighted toward small-business owners and operators. Emails are verified on reveal, not pre-verified — each one is checked for a live mail domain, pattern/name match, and disposable filtering at the moment you reveal it, and refunded if it doesn't pass. Contacts in CA, TX, VT, OR and the EU are excluded for compliance.

Start free

6M+ contacts.
Free to search.

Create a free account — 25 reveal credits every month, no card required. Search is always free; credits are only spent when you reveal an email. Or drop your email below for product updates.

Unsubscribe anytime. No spam.