B2B Database MCP: Search Companies and People in Claude (2026)
By Kushal Magar · August 15, 2026 · 11 min read
Key Takeaway
A B2B database MCP turns Claude into a live prospecting interface. Connect the SyncGTM MCP with one command — claude mcp add --transport http syncgtm https://api.syncgtm.com/mcp — authenticate through the browser, and Claude can call find_companies and find_people with the same firmographic, technographic, funding, and headcount-growth filters you would use in a prospecting UI. Results come back as real records, then enrich_organization, find_company_techstack, and find_work_email fill in the rest. Search runs cost 3 credits; check_credits is free.
A b2b database mcp connects Claude directly to a live company and contact database. You describe the accounts you want in plain English, and Claude runs the search, applies the filters, and hands back real records — no CSV export, no tab-switching, no copy-paste into a spreadsheet.
This guide walks through the SyncGTM MCP end to end: the one-line install, the authentication flow, the two search tools that do most of the work, and what each call actually costs. Every command and credit figure here comes from the SyncGTM MCP documentation and the tool definitions the server exposes.
TL;DR
- What it is: An MCP server that exposes a B2B company and people database to Claude as callable tools.
- Install:
claude mcp add --transport http syncgtm https://api.syncgtm.com/mcp - Auth: Browser OAuth through
/mcp. No API key, no header, no .env file. - Company search:
find_companies— industry, headcount, revenue, funding round, investors, tech stack, headcount growth, plus anexclude_variant on every categorical filter. - People search:
find_people— title, seniority, function, tenure, past employers, skills, verified business email, recent job changes. - Cost: 3 credits per search run. Enrichment runs from 0.5 credits.
check_creditsis free. - Coverage: SyncGTM pulls from 33+ lead sources with waterfall enrichment and returns up to 76+ data points per record.
What Is a B2B Database MCP?
A B2B database MCP is a Model Context Protocol server that hands an AI assistant structured, permissioned access to a company and contact database. MCP is the open standard Anthropic published so tools like Claude can call external services without bespoke integration code on either side.
The practical difference is where the data comes from. Ask a raw language model for "Series B fintechs in Germany with 200+ employees" and it invents plausible names from training data. Ask the same question with a database MCP connected and it issues a query, gets rows back, and reports what the database actually returned.
The SyncGTM MCP tool surface, grouped:
| Group | Representative tools |
|---|---|
| Search | find_companies, find_people |
| Company enrichment | enrich_organization, enrich_linkedin_page, find_company_techstack |
| Contact enrichment | find_work_email |
| Signals | headcount_by_department, company_job_openings |
| Account | check_credits |
The full server is open source. You can read every tool definition and its parameters in the SyncGTM lead-gen and enrichment MCP repository before you connect anything.
Why It Beats Exporting CSVs
The old prospecting loop has four steps: build a filter in a web UI, export a CSV, clean it, then paste it somewhere useful. Each step drops context and each export is stale the moment it lands.
An MCP connection collapses that loop into a conversation. Three things change in practice.
- Iteration gets cheap."Too broad — drop staffing agencies and anything under 50 people" is one sentence, not a rebuilt filter set and a second export.
- Search and enrichment chain. Claude can take the domains from a company search and feed them straight into
find_peopleandfind_work_emailwithout you moving a file. - The output is whatever you need. A CSV, a markdown table, a CRM payload, or a written account brief — the data never has to land in a spreadsheet first.
Most major B2B data vendors have shipped MCP servers on the same logic. Apollo, ZoomInfo, and Crustdata all expose search and enrichment through the protocol now — see Apollo's MCP product page for a comparable implementation. What separates them is filter depth, coverage, and how much you pay per record, which is the same shortlist you would run when comparing B2B database providers without an MCP in the picture.
Prerequisites
Four things, and three of them are free.
- An MCP client. Claude Code is the example here. The Claude app, Cursor, Codex, and Gemini CLI all work — the server is remote HTTP, so any client with remote MCP support can connect.
- A SyncGTM account. Sign up free. The account carries the credit balance the tools draw from.
- A logged-in browser session. Authentication happens through your default browser, so be signed in to SyncGTM there before you start.
- No API key. There is nothing to paste into a
.envfile and nothing to rotate. Auth is OAuth end to end.
Quick check:
Run claude mcp list before you start. If the command is not recognized, update Claude Code — remote MCP transport requires a recent version.
Connect the SyncGTM MCP to Claude
Three steps, roughly ninety seconds. The pattern will look familiar if you have already set up the HubSpot MCP for Claude Code— same command shape, different server.
Step 1: Add the Server
# Add to the current project claude mcp add --transport http syncgtm https://api.syncgtm.com/mcp # Or make it available across every project claude mcp add --scope user --transport http syncgtm https://api.syncgtm.com/mcp
Use --scope user if you prospect from more than one repo. It writes the server to your user config instead of the project one.
Step 2: Authenticate
# Restart Claude Code, then: /mcp # Select: syncgtm -> Authenticate # Your browser opens the SyncGTM login page. Sign in, approve access.
Claude Code stores and refreshes the session for you. There is no token to copy back into the terminal.
Step 3: Verify and Check Your Balance
# Confirm the connection /mcp # syncgtm should show "connected" with its tools listed # Then, in the chat: "Check my SyncGTM credit balance." # -> Claude calls check_credits (free)
If the server shows as disconnected, re-run the add command and confirm you are signed in to SyncGTM in your default browser — the OAuth handoff uses that one, not whichever window happens to be open.
Search Companies With find_companies
find_companies is the account-discovery tool. It costs 3 credits per run and returns up to 100 company profiles, with a cursor for paging further.
You never write the parameters yourself. You describe the accounts and Claude maps your description onto the filters. Knowing what exists is still useful, because it tells you what you are allowed to ask for.
Filter families on find_companies:
| Family | What you can filter on |
|---|---|
| Firmographic | Industry, business category, LinkedIn speciality, company type, employee-count bucket or exact min/max headcount, year founded |
| Geographic | HQ country, HQ location text, street address, office locations across all sites, and the country holding the largest employee base |
| Financial | Estimated revenue range, total funding raised, last funding round type and amount, fundraise date window, investors, IPO date, ticker |
| Technographic | Technologies in the stack, technology categories and super-categories, top technologies only, total count of detected technologies |
| Growth | Headcount growth over 1, 3, 6, or 12 months as a percentage or an absolute number; LinkedIn follower growth; per-department headcount bounds |
| Negative | An exclude_ counterpart on every categorical filter — industries, countries, investors, technologies, domains, company types |
The exclusion filters carry more weight than they look. Excluding your existing customer domains and the industries you never close turns a 500-row list into a 60-row list worth actually working.
Example: A Signal-Led Account Search
# Prompt to Claude: "Find B2B software companies headquartered in the US or UK with 201-500 employees that raised a Series B in the last 18 months, run Salesforce, and grew headcount at least 15% in the last 6 months. Exclude staffing and recruiting. Give me 40 results as a table with domain, headcount, last round, and HQ."
One tool call, 3 credits. Claude maps that sentence onto industries, countries, employee_count_ranges, last_funding_round_types, technologies, min_headcount_growth_percent_6m, and exclude_industries. Rebuilding that in a filter UI takes minutes; changing your mind about it takes minutes again.
Search Decision-Makers With find_people
find_people searches profiles across companies and also serves as the "list everyone at this one account" tool — pass the account through current_company_domains. Same price as company search: 3 credits per run, up to 100 results.
Filter families on find_people:
| Family | What you can filter on |
|---|---|
| Current role | Job title, normalized title, seniority level (CXO through Entry Level), function, department and sub-department, employment type, role start date, tenure |
| Current company | Company name, domain, industry, company type, HQ country and location, size bucket or exact headcount |
| History | Past employers by name or domain, past titles, past seniority, past function, past role date windows |
| Person | Name, headline and summary keywords, city, state, country, continent, languages, total years of experience |
| Credentials | Schools, degrees, fields of study, school country, skills, certifications and issuing organizations |
| Signals | Recently changed jobs, open-to-work and hiring-manager flags, follower and connection counts, verified business email present |
Two of those deserve a callout. has_verified_business_email filters to people who already have a verified work address at their current employer, which cuts the enrichment bill later. recently_changed_jobs surfaces the strongest timing signal in B2B — a new buyer with budget and something to prove.
Example: Chaining Company Search Into People Search
# Prompt to Claude: "Take the 40 domains from that company search. Find VP-level and above people in Sales or Revenue Operations at those companies, based in the US, who have a verified business email and started their current role in the last 12 months. Skip anyone with 'Assistant' in the title."
Claude passes the domains into current_company_domains and combines seniority_levels, current_functions, person_countries, has_verified_business_email, current_role_started_after, and exclude_current_titles. That handoff — search output becoming search input without a file in between — is the whole argument for running sales prospecting inside Claude Code.
Enrich What You Found
Search returns profiles. Enrichment fills in the fields you actually need to write an email or score an account — and each enrichment tool is a separate, individually priced call.
enrich_organization— firmographics from a website domain: industry, size, funding, technologies. Use when your identifier is a domain.enrich_linkedin_page— the cheapest company lookup at 0.5 credits. Use when you already have the LinkedIn company page.find_company_techstack— the detected stack for one domain, resolved through waterfall enrichment across providers.headcount_by_department— a point-in-time headcount for one department. "How many people sit in their sales org?" is an ICP-fit question, not trivia.company_job_openings— open roles at a named company, filterable by title and location. Hiring for the function you sell into is a buying signal.find_work_email— a verified work email from a LinkedIn profile URL, resolved across multiple providers in a waterfall.
# Prompt to Claude: "For the top 10 people on that list, get work emails. Then for each of their companies, pull the tech stack, sales headcount, and any open Account Executive roles. Write it to accounts.csv with one row per company."
That is the pattern: enrichment runs inside the conversation, and the file lands where you asked for it. The same coverage logic applies here as anywhere else in B2B lead enrichment — no single provider hits every record, so the waterfall matters more than any one source.
Credit Costs Per Tool
Every tool declares its own price, and Claude will happily chain fifty calls if you ask it to. Know the numbers before you turn it loose on a list.
| Tool | Credits | Billing unit |
|---|---|---|
check_credits | Free | Per call |
enrich_linkedin_page | 0.5 | Per company |
find_work_email | 1 | Per person |
find_company_techstack | 1 | Per company |
enrich_organization | 2 | Per company |
headcount_by_department | 2 | Per company |
find_companies | 3 | Per search run |
find_people | 3 | Per search run |
company_job_openings | 5 | Per run, regardless of results |
The asymmetry is the point. Search is billed per run, not per row — a 100-result company search costs the same 3 credits as a 5-result one, so raise your limit and filter afterward. Enrichment is billed per record, so narrow the list before you enrich it.
Credit allowances vary by plan. Current tiers and per-action costs are on the SyncGTM pricing page.
Tips and Best Practices
Search wide, enrich narrow
Pull 100 companies for your 3 credits, have Claude rank them against your ICP in the same conversation, then enrich only the top 20. Enriching all 100 costs 200 credits with enrich_organization; enriching 20 costs 40.
Lead with exclusions
Give Claude your existing customer domains and your dead-industry list up front. Every exclude_ filter you set is a row you do not pay to enrich later.
Pick the cheapest tool that answers the question
If you have a LinkedIn company URL, enrich_linkedin_page at 0.5 credits does what enrich_organization does at 2. Tell Claude which identifier you have and it will route accordingly.
Ask for the raw rows when precision matters
The tool results are real. The prose Claude wraps around them is generated, and generated prose rounds numbers. For anything that goes into a forecast or a board deck, ask for the table, not the summary.
Save the prompt, not the list
A saved CSV decays. A saved prompt re-runs. Keep your best ICP queries in a project file and re-execute them monthly — the same discipline that makes firmographic enrichment in Claude Code repeatable rather than a one-off.
Before any large batch:
Ask Claude to run check_credits and estimate the spend from the tool table above. It is free, and it prevents a 500-record enrichment from emptying your balance mid-run.
Conclusion
A B2B database MCP does not add a new data source to your stack. It removes the interface between you and the one you already pay for.
Setup is a single command and a browser sign-in. After that, the two tools that matter are find_companies and find_people, at 3 credits each, with enrichment layered on top of whatever survives your filters.
Start with one search. Describe your best-fit account in a sentence, see what comes back, and iterate on the result instead of rebuilding a filter. That loop — sentence, rows, refinement — is the part that does not exist in a CSV workflow. Create a free SyncGTM account and connect the MCP to try it.
