B2bleads Mcp

io.github.gtovtyaPublished by GitHub account gtovtyav1.6.1Updated Oct 24, 2026

Search and enrich B2B business leads by industry and city.

Overview

AI-generated overview

Wraps the B2BLeads API so an assistant can search and enrich B2B company leads by industry, city and filters, and manage saved lead lists.

What you can do
  • Search companies and contacts by free-text query, industry, city, radius, rating, website, verification, opening hours and price level, with pagination
  • Run an exhaustive city-wide search that tiles the area into a grid for up to about 180 deduplicated businesses
  • List available industry categories
  • List saved lead lists, read one list's full leads, and append search results to a list by ID or name
  • Look up a best-effort contact email for a single business website
  • Check account usage, monthly quota and renewal date, saved search alerts, and recent search history
When to use it
Useful when you want an assistant to build or enrich B2B prospect lists — for example finding construction firms in a city with a website and phone, or collecting companies above a rating threshold — and to keep those results in B2BLeads saved lists.
Requirements
Runs locally via npx, so Node.js 18 or later is needed. A B2BLeads account and API key are required, supplied through the B2BLEADS_API_KEY environment variable; B2BLEADS_API_URL optionally overrides the API base URL. Network access to the B2BLeads API is required.
Before you install
The API key is a billable credential: searches consume quota from a paid B2BLeads plan, and the advanced search tool consumes nine times the quota of a normal search. Some features, such as email lookup, require a paid plan. Searches can write to your saved lists when save_to_list, list_id or list_name are used. Query text and website URLs are sent to the B2BLeads service.

Installation

In SourceWeft

  1. Open B2bleads Mcp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

B2BLeads MCP Server

An MCP (Model Context Protocol) server that gives AI agents — Claude, Cursor, and any other MCP-compatible client — a search_leads tool for real-time B2B company discovery and enrichment.

Ask your agent things like:

"Find construction companies in Munich with a website and phone number."

"Collect 50 IT companies in Berlin rated above 4.0."

"Enrich this lead list with email contacts where available."

...and it calls this tool to return a ready-made list of companies: name, address, phone, website, and email where available.

This server is a thin MCP wrapper around the B2BLeads REST API. You need a B2BLeads account and API key — see Getting an API key below.

Requirements

  • Node.js 18 or later
  • A B2BLeads API key (sign up)

Installation

No install needed — run it directly with npx. Add it to your MCP client's config:

Claude Desktop / Claude Code

Edit your claude_desktop_config.json (or run claude mcp add):

json
{  "mcpServers": {    "b2bleads": {      "command": "npx",      "args": ["-y", "b2bleads-mcp"],      "env": {        "B2BLEADS_API_KEY": "your-api-key-here"      }    }  }}

Cursor

Add the same block to .cursor/mcp.json in your project (or your global Cursor MCP settings).

Any other MCP client

Point it at the command npx -y b2bleads-mcp with the B2BLEADS_API_KEY environment variable set.

Getting an API key

  1. Create an account at b2bleadsapi.com.
  2. Pick a plan in Billing.
  3. Generate a key under API Keys in the dashboard.
  4. Set it as B2BLEADS_API_KEY in your MCP client config (see above).

Tools

search_leads

Search for companies and business contacts in real time.

ParameterTypeDescription
qstringFree-text query, e.g. "construction companies in Munich".
industrystringOne of the categories from list_industries.
citystringCity or region to search in.
radius_kmnumberSearch radius in kilometers.
min_ratingnumberMinimum rating (0-5).
has_websitebooleanOnly businesses with a website.
verified_onlybooleanOnly businesses with a verified listing.
open_nowbooleanOnly businesses currently open.
price_levelstringbudget | moderate | expensive | luxury
rank_bystringrelevance | distance
limitintegerMax results per call, 1-20.
langstringResult language, BCP-47 tag (e.g. en, pt-BR).
page_tokenstringPagination token from a previous call.
save_to_listbooleanAlso save results into a B2BLeads saved list.
list_idstringExisting saved-list ID to append to.
list_namestringSaved-list name to find-or-create and append to.

At least one of q, industry, or city is required.

search_leads_advanced

⚠️ Elevated cost: consumes 9x the quota of a single search_leads call. Only use this when you need more results than search_leads returned for a specific city, or need to exhaustively cover a city — not as a default or first attempt. Tiles the city into a 3x3 grid of sub-searches server-side to go beyond the normal ~20-60 result ceiling, returning up to ~180 deduplicated businesses in one call. Does not support pagination.

ParameterTypeDescription
qstringFree-text query, e.g. "construction companies". Optional if industry is given.
industrystringOne of the categories from list_industries.
citystringRequired. City or region to search in — must be only the city name (e.g. "Lyon"), not the full search phrase, or the wrong place may be geocoded.
min_ratingnumberMinimum rating (0-5).
has_websitebooleanOnly businesses with a website.
verified_onlybooleanOnly businesses with a verified listing.
open_nowbooleanOnly businesses currently open.
price_levelstringbudget | moderate | expensive | luxury
langstringResult language, BCP-47 tag (e.g. en, pt-BR).

list_industries

Lists the predefined industry categories usable in search_leads's industry filter. Takes no arguments.

list_saved_lists

Lists all of your saved lead lists — id, name, and lead count for each, not the leads themselves. Read-only. Takes no arguments. Use get_saved_list to fetch one list's full leads.

get_saved_list

Gets one saved lead list by ID, with its full set of saved leads. Read-only.

ParameterTypeDescription
list_idstringThe saved list's ID, from list_saved_lists or a search_leads save_to_list response. Required.

find_email

Looks up a best-effort contact email for a single business website (checks the homepage and common contact pages). Use this for one specific website rather than re-running search_leads. Requires any paid plan (Starter and above); may return a null email if none is found.

ParameterTypeDescription
websitestringThe business website URL to look up, e.g. https://example.com. Required.

account_get_usage

Gets how much of your monthly search quota has been used and how much remains for the current billing period. Read-only. Takes no arguments.

account_get_usage_limit

Gets your account's total monthly search quota and when the current billing period renews. Read-only. Takes no arguments.

list_saved_searches

Lists your saved search alerts (recurring searches that auto-run and save results to a list). Read-only. Takes no arguments.

get_search_history

Gets your recent search history — up to the last 200 searches (query text, result count, date). Read-only. Takes no arguments.

Configuration

Environment variableRequiredDescription
B2BLEADS_API_KEYYesYour B2BLeads API key.
B2BLEADS_API_URLNoOverride the API base URL. Defaults to https://api.b2bleadsapi.com.

Pricing & rate limits

Each search consumes quota from your B2BLeads plan — see pricing. Rate limits and quota errors are returned by the API and surfaced back to your agent as tool errors.

Links

License

MIT

Source: README.md at commit f6ae438

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

5
  1. v1.6.1LatestOct 14, 2026
  2. v1.5.0Oct 2, 2026
  3. v1.4.1Oct 1, 2026
  4. v1.3.0Sep 25, 2026
  5. v1.2.0Sep 24, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts