RocketReach MCP Worker
MCP server for RocketReach, enabling people and company lookup via search, full profile, and company details through Cloudflare Workers.
README
RocketReach MCP — Cloudflare Worker
A remote Model Context Protocol server for the RocketReach API, deployed as a Cloudflare Worker.
Exposes three tools that any MCP-compatible client (Claude Desktop, Cursor, Windsurf, etc.) can call:
| Tool | Description |
|---|---|
search_people |
Search people by name, employer, title, or location |
lookup_person |
Full profile + verified contact info (emails, phones) |
lookup_company |
Company details: size, revenue, industry, location |
Why a Cloudflare Worker?
The server uses createMcpHandler from the Cloudflare Agents SDK — a stateless MCP handler that runs in a plain Worker (no Durable Objects needed). Each request is fully self-contained; the RocketReach API key is read directly from the incoming ROCKETREACH_API_KEY header, so multiple users can share the same deployment with different keys.
Quick deploy
# 1. Clone and install
git clone https://github.com/balazsnemeth/rocketreach-mcp-worker.git
cd rocketreach-mcp-worker
npm install
# 2. Log in to Cloudflare (first time only)
npx wrangler login
# 3. Deploy
npm run deploy
The worker is now live at https://rocketreach-mcp.<your-subdomain>.workers.dev/mcp.
Optional: store a default API key as a secret
If you want the worker to work without a per-request header (e.g. for personal use), store your key as a Worker secret:
npx wrangler secret put ROCKETREACH_API_KEY
Client configuration
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"rocketreach": {
"command": "npx",
"args": [
"mcp-remote",
"https://rocketreach-mcp.<your-subdomain>.workers.dev/mcp",
"--header",
"ROCKETREACH_API_KEY:<your-rocketreach-api-key>"
]
}
}
}
Cursor / Windsurf
Add to your MCP settings file:
{
"rocketreach": {
"command": "npx",
"args": [
"mcp-remote",
"https://rocketreach-mcp.<your-subdomain>.workers.dev/mcp",
"--header",
"ROCKETREACH_API_KEY:<your-rocketreach-api-key>"
]
}
}
Note:
mcp-remoteproxies the local stdio transport (used by MCP clients) to the remote HTTP endpoint. Install it globally if needed:npm install -g mcp-remote.
Tools reference
search_people
Search for people in RocketReach. Returns basic profile information — no contact details are consumed from your plan's credit quota.
Parameters
| Parameter | Type | Description |
|---|---|---|
name |
string | string[] |
Full name or list of names — e.g. "Elon Musk" |
current_employer |
string | string[] |
Company name or list — e.g. "Tesla" |
title |
string | string[] |
Job title or list — e.g. "CEO" |
location |
string | string[] |
City / region or list — e.g. "San Francisco" |
radius_miles |
number |
Radius around location in miles (optional) |
start |
number |
1-based pagination offset (default: 1) |
page_size |
number |
Results per page, max 100 (default: 20) |
At least one of name, current_employer, title, or location is required.
Response shape
{
"total_results": 42,
"start": 1,
"next": 21,
"profiles": [
{
"id": 12345678,
"name": "Elon Musk",
"current_employer": "Tesla",
"current_title": "CEO",
"location": "Austin, TX",
"linkedin_url": "https://www.linkedin.com/in/elonmusk"
}
]
}
lookup_person
Get a full person profile including verified contact information. Uses one credit per unique lookup.
Parameters
| Parameter | Type | Description |
|---|---|---|
identifier |
string |
The identifier value (see lookup_type) |
lookup_type |
string |
How to identify the person (default: "id") |
lookup_type values
| Value | identifier format |
Notes |
|---|---|---|
id |
RocketReach numeric ID | Fastest, most reliable |
linkedin_url |
Full LinkedIn profile URL | |
email |
Email address | |
name_employer |
"Full Name|Company Name" |
Pipe-separated |
npi |
NPI number | Healthcare providers only |
Response includes id, name, current_employer, current_title, location, linkedin_url, status, contact_info (emails, phones, work email), job_history, education, skills, and social_profiles.
lookup_company
Get detailed company information.
Parameters
| Parameter | Type | Description |
|---|---|---|
identifier |
string |
The identifier value (see lookup_type) |
lookup_type |
string |
How to identify the company (default: "domain") |
lookup_type values
| Value | Example |
|---|---|
domain |
"rocketreach.co" (preferred) |
name |
"RocketReach" |
linkedin_url |
Full LinkedIn company URL |
ticker |
"AAPL" |
id |
RocketReach internal company ID |
Response includes id, name, domain, website, linkedin_url, description, industry, employees, employee_range, revenue, revenue_range, city, state, country, address, founded_year, company_type, ticker, and logo_url.
Local development
npm run dev
The worker is served at http://localhost:8787. Point mcp-remote at it for local testing:
{
"rocketreach": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8787/mcp",
"--header",
"ROCKETREACH_API_KEY:<your-key>"
]
}
}
API key priority
ROCKETREACH_API_KEYrequest header (sent bymcp-remote --header) — per-user, per-requestROCKETREACH_API_KEYWorker secret — shared fallback (set viawrangler secret put)
If neither is present the worker returns 401.
Tech stack
- Cloudflare Workers — edge runtime
- Cloudflare Agents SDK —
createMcpHandlerfor stateless MCP transport - @modelcontextprotocol/sdk — MCP protocol
- Zod — tool input validation
- TypeScript
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.