trackmcp
Back to directory
coresignal-com

coresignal-mcp

View on GitHub
3 starsOthers Updated Oct 8, 2025

Documentation

Coresignal MCP v2

The official Model Context Protocol server for Coresignal — bring fresh B2B data on 895M+ employees, 70M+ companies, and 468M+ job postings straight into your AI assistant.

bash
https://mcp.coresignal.com/mcp/v2

Search in plain natural language, pull full records, enrich contacts with verified emails, and export large result sets as downloadable files — all from Claude, Cursor, Codex, VS Code, or any other MCP-compatible client.


Features

  • OAuth 2.1 authentication — sign in with your Coresignal dashboard account; no API keys in config files.
  • Natural-language search with match evidence in every result row, so you can see *why* each record matched.
  • Cost transparency — every response reports `credits_consumed`, and expensive calls ask for confirmation before spending.
  • Field discovery — `entity_fields` finds the right field names by keyword, free, without loading the full 300+ field vocabulary into context.
  • File downloads — large result sets are stored server-side and returned as a download link instead of flooding the chat.
  • `artifact_read` pages delivered files back into the conversation for free — works even in clients with no filesystem access.

Prerequisites

  • A Coresignal account with an active subscription (credits) and a team API key provisioned in the dashboard. The MCP server resolves your team's key automatically after sign-in — you never paste it into a config file. No subscription yet? Start with the 7-day free trial — it includes 2,000 credits. See the plan comparison.

On first connection your client opens a browser window to sign in to the Coresignal dashboard. That's the whole setup — no environment variables, no secrets.


Client setup

Claude Desktop

Claude Desktop supports remote MCP servers natively via Connectors:

1. Open Settings → Connectors → Add custom connector.

2. Name: `Coresignal`, URL: `https://mcp.coresignal.com/mcp/v2`.

3. Click Add, then Connect — a browser window opens to sign in to your Coresignal dashboard account.

> Important — enable file downloads: Claude Desktop blocks downloads from domains it doesn't know. To download result files (large fetches are delivered as links), add `mcp.coresignal.com` to the Domain allowlist in Claude Desktop settings (on Team/Enterprise plans your admin manages this). Without it, download links from the server will be blocked — though you can always read the data back in-chat with the free `artifact_read` tool instead. See File downloads.

Claude Code

bash
claude mcp add --transport http coresignal https://mcp.coresignal.com/mcp/v2

Then inside a session run `/mcp`, select coresignal, and complete the browser sign-in. Re-run `/mcp` any time you need to re-authenticate.

Codex (OpenAI Codex CLI)

bash
codex mcp add coresignal --url https://mcp.coresignal.com/mcp/v2

A browser window opens to sign in to your Coresignal dashboard account.

Cursor

Add to `~/.cursor/mcp.json`:

json
{
  "mcpServers": {
    "coresignal": {
      "url": "https://mcp.coresignal.com/mcp/v2"
    }
  }
}

Cursor detects that the server requires authentication and shows a Needs login prompt — click it to complete the browser sign-in.

OpenCode

Add Coresignal MCP:

bash
opencode mcp add coresignal --url https://mcp.coresignal.com/mcp/v2

Authenticate:

bash
opencode mcp auth coresignal

A browser window opens to sign in to your Coresignal dashboard account.

Visual Studio Code

Run MCP: Add Server from the Command Palette, choose HTTP, and enter the URL — or add to `.vscode/mcp.json`:

json
{
  "servers": {
    "coresignal": {
      "type": "http",
      "url": "https://mcp.coresignal.com/mcp/v2"
    }
  }
}

VS Code prompts you to authorize the server on first use and handles the OAuth flow in your browser.

Cline

Add to `~/.cline/data/settings/cline_mcp_settings.json`:

json
{
  "mcpServers": {
    "coresignal": {
      "type": "streamableHttp",
      "url": "https://mcp.coresignal.com/mcp/v2",
      "disabled": false
    }
  }
}

Open Cline MCP interface:

bash
cline mcp

From menu select Authorize OAuth and select coresignal. Cline will handle the OAuth flow in your browser.


File downloads & the domain allowlist

Large results (and any call with `delivery="url"`) are not dumped into the chat to save LLM input tokens. Instead the server stores the rows as a file and returns a signed HTTPS download link that expires after 1 hour:

json
{
  "delivery": "url",
  "url": "https://mcp.coresignal.com/mcp/v2/artifacts/…?exp=…&sig=…",
  "artifact_name": "employee_fetch-baf941dd4f8c4dfe.jsonl",
  "count": 500,
  "credits_consumed": 10000
}

From here, the agent gets at the data in one of three ways:

1. The agent downloads the file itself — in clients with shell access, the agent will typically `curl` the link to disk and analyze the file locally with `grep`/`jq`/pandas.

2. The agent reads it back in-chat — in clients with no shell and no filesystem, the agent calls `artifact_read(artifact_name, offset, limit)` instead, paging through the file in slices over the MCP session. This is free and works everywhere, so nothing floods the chat.

3. You download it manually — if the agent itself isn't allowed to fetch the link (domain not allowlisted, sandbox without network access), click the link, save the file, and tell the agent where it is: *"I've downloaded the file to ~/Downloads/employee_fetch-….jsonl — analyze it from there."* Works in any client that can read local files.

> Prefer the download when your client supports it. `artifact_read` is free in Coresignal credits, but not in LLM tokens: every page it returns becomes part of the conversation and is re-billed as input tokens on each subsequent turn. Each page is also trimmed to a fixed token budget — a full employee record is ~8k tokens, so a single page carries only a handful of full records regardless of the `limit` you ask for. Reading a large file that way takes hundreds of calls and can exhaust the context window before you reach the end. A downloaded file costs essentially no tokens — the assistant can filter thousands of rows locally with `grep`/`jq` and surface only the answer. That's why it pays to get downloads working up front (domain allowlist, sandbox network access) and keep `artifact_read` for clients that can't download or for eyeballing a few rows.

If downloads are blocked, nothing is lost: the records are already stored and paid for — read them with `artifact_read`. Never re-run a fetch to "recover" a file; that bills every record a second time.


Tools

ToolWhat it doesCost
`entity_search`Natural-language search over employees, companies, or jobs20 credits per search (flat)
`entity_fields`Keyword search over an entity's ~300 field namesFree
`entity_fetch`Pull full (JSONL) or projected records, by search handle or by id20 credits per employee/company record, 1 per job record
`email_enrich`Verified business emails for employee ids (CSV)10 credits per email found (misses are free)
`artifact_read`Page rows back out of a delivered fileFree

Searches `employee`, `company`, or `job` records with a plain-language query:

> *"Senior Python developers at fintech companies in French"*

Every call costs a flat 20 credits and returns:

  • `total_count` — the exact number of records the query matched,
  • up to 20 preview rows (`limit=0` returns just the count), each showing the fields the query matched on — the *evidence* for why each result is there,
  • a `cache_id` — a 1-hour handle to the search that saves credits and time: pass it to `entity_fetch` and the matched records are collected straight away — no need to re-run (and re-pay for) the search, and resolving the `cache_id` itself is free. Record ids stay server-side, so nothing bulky ever passes through the conversation.

`entity_fields`

Free, instant lookup of field names by meaning — `"salary"` finds the compensation fields, `"current job title and seniority"` finds `active_experience_title`, `experience.position_title`, etc. Use it to build the `fields` list for a custom-scope fetch without ever loading the full field vocabulary into context.

`entity_fetch`

Collects records — either up to 20 hand-picked ids from search results, or up to 1,000 records per call via a `cache_id`. Billing is per record found: 20 credits for employees/companies, 1 for jobs.

`email_enrich`

Verified, deliverable business emails for up to 1,000 employee ids — 10 credits per email found; not-found ids are free. EEA/UK contacts are not accessible (GDPR).

`artifact_read`

Reads a delivered file back over the authenticated MCP session, a page at a time — free, since the records were billed when they were fetched. This is what makes file delivery work everywhere, including chat clients that can't open a link or touch a filesystem.


Example prompts

Market scan

> *"Find B2B SaaS companies in the Nordics with 50–200 employees that raised funding in the last two years."*

Build a lead list with verified emails

> *"Search for heads of data at US companies with 500+ employees. Fetch 20 full profiles to a file with verified emails."*

Deep-dive a single company**

> *"Pull the full record for flo.health — funding rounds, headcount growth, and current job openings."*

...


Credits & billing

ActionCredits
`entity_search` (any `limit`, including 0)20 per search
`entity_fetch` — employee or company20 per record found
`entity_fetch` — job1 per record found
`email_enrich`10 per email found; misses free
`entity_fields`, `artifact_read`Free

Every response includes `credits_consumed` — the actual billed amount, so a discrepancy (sent 1,000 ids, billed for 950 records) tells you exactly how many ids weren't found. The server never spends silently: fetches confirm field scope with you first, and a fetch that can't be delivered fails *before* any credits are spent.

Credits are drawn from your team's Coresignal subscription — manage keys and billing in the dashboard. New to Coresignal? The 7-day free trial comes with 2,000 credits — that's 100 searches, or 100 employee/company records, or a mix — see the plan comparison.

smithery badge

Frequently asked questions

What is coresignal-mcp?

coresignal-mcp is a Model Context Protocol (MCP) server listed in the TrackMCP directory.

How do I install coresignal-mcp?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is coresignal-mcp open source?

Yes — it is hosted on GitHub at https://github.com/coresignal-com/coresignal-mcp and has 3 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP