OutreachPilot MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@OutreachPilot MCP Server Build a 3-step email campaign"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
OutreachPilot MCP Server
The official Model Context Protocol (MCP) server for OutreachPilot โ AI-Powered Sales Outreach Platform.
Connect your AI agents โ Claude Desktop, Cursor, LangChain, CrewAI, or any MCP-compatible client โ directly to your OutreachPilot workspace to automate outreach, research leads, manage campaigns, and much more.
OutreachPilot replaces your entire sales stack (Apollo, Instantly, Expandi) with one AI-powered platform. It combines AI SDR automation, multi-channel outreach (email, LinkedIn, SMS, phone), live prospect research, and autonomous AI reply handling that books meetings 24/7.
๐ API & MCP Documentation ยท ๐ Sales Outreach Blog ยท ๐งฎ ROI Calculator
Requirements
Node.js โฅ 18
An active OutreachPilot Pro or Scale workspace
An API key (generate one in Settings โ Workspace โ API Keys)
Related MCP server: LinkedNav MCP
Quick Start
Option A: npx (recommended โ zero install)
No download needed. Just configure your MCP client:
Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"outreachpilot": {
"command": "npx",
"args": ["-y", "outreachpilot-mcp"],
"env": {
"OUTREACHPILOT_API_KEY": "op_live_your_key_here",
"OUTREACHPILOT_API_URL": "https://useoutreachpilot.com"
}
}
}
}Restart Claude Desktop โ done. โ
Option B: Manual install (for development)
git clone https://github.com/emielmadonna/OutreachPilotMCP.git
cd OutreachPilotMCP
npm installCreate a .env file:
OUTREACHPILOT_API_KEY=op_live_your_key_here
OUTREACHPILOT_API_URL=https://useoutreachpilot.comBuild the server:
npm run buildCLI mode
The same binary can run a few quick command-line checks without starting an MCP client:
outreachpilot-mcp list-tools
outreachpilot-mcp doctor
outreachpilot-mcp pilot "Check my workspace setup and tell me what is missing"doctor verifies API connectivity. pilot sends a natural-language command to /api/v1/chat.
Write safety
Tools that can send, delete, archive, pause, or otherwise make irreversible changes now return a confirmation payload first. Re-run the same tool with confirmed: true to execute. The server also sends stable Idempotency-Key headers for writes so retries are less likely to duplicate work.
Connecting to Claude Desktop
Add this to your claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"outreachpilot": {
"command": "node",
"args": ["/absolute/path/to/OutreachPilotMCP/build/index.js"],
"env": {
"OUTREACHPILOT_API_KEY": "op_live_your_key_here",
"OUTREACHPILOT_API_URL": "https://useoutreachpilot.com"
}
}
}
}Restart Claude Desktop โ you'll see OutreachPilot tools available in the toolbar.
Connecting to Cursor
Open Cursor Settings โ Features โ MCP
Click
+ Add New MCP ServerSet Name to
OutreachPilot, Type tocommandSet Command to:
npx -y outreachpilot-mcpAdd env vars:
OUTREACHPILOT_API_KEYandOUTREACHPILOT_API_URL
Getting Started After Install
Once connected, start with these two commands:
Check your workspace status:
Use the setup_workspace toolThis runs a health check and tells you what's configured and what needs setup.
Get the full setup guide:
Use the onboarding_guide toolReturns step-by-step instructions for email, ICP, knowledge base, contacts, and campaigns.
Available Tools (31)
๐ง Setup & Onboarding
Tool | Description |
| Full workspace health check โ email, ICP, knowledge base, contacts, campaigns, credits. Returns readiness % and action items. |
| Step-by-step setup guide. Pass |
๐ฌ pilot โ AI Engine Bridge (recommended for complex tasks)
Send any natural language instruction to the OutreachPilot AI engine. This is the most powerful tool โ it has access to all 35+ internal tools including calendar booking, LinkedIn outreach, deep research, email drafting, campaign building, voice dialing, and more.
"Find 20 VP of Sales at Series B SaaS companies in Austin"
"Draft a follow-up email to John Doe at Acme Corp"
"Build a 3-step email campaign for the Austin SaaS folder"
"Research Stripe โ find buying signals and key decision makers"
"Book a meeting with Jane Smith on Friday at 2pm"
"Check if my email accounts and integrations are working"๐ฅ Contact Tools
Tool | Description |
| Search CRM contacts by name, email, or company |
| List contacts with filters (status, folder, pagination) |
| Create one or more contacts, optionally auto-enroll in a campaign |
| Update a contact's fields (name, email, status, tags, etc.) |
| Get full details of a single contact by ID |
| Delete a contact from the CRM |
๐ฃ Campaign Tools
Tool | Description |
| List campaigns with optional status/type filters |
| Create a new draft campaign |
| Pause, resume, activate, or archive a campaign |
| Enroll a specific contact into a campaign |
| Get campaign audience stats (enrolled, completed, replied) |
| Get full campaign details including config, steps, and audience |
| Update campaign name, config, steps, or type |
๐ข Company Tools
Tool | Description |
| List company accounts in the CRM |
| Create one or more company accounts |
| Get full details of a single company by ID |
| Update company fields |
| Delete a company from the CRM |
๐ง Email
Tool | Description |
| Send a one-off email through your connected account. Costs 1 credit. |
๐ Folders
Tool | Description |
| List contact folders with contact counts |
| Create a new folder (idempotent โ returns existing if name matches) |
๐ณ Credits
Tool | Description |
| Check credits remaining, plan tier, and reset date |
๐ฌ Research
Tool | Description |
| Canonical B2B people/account prospecting tool. If |
| Google Maps/local-business prospecting tools: estimate cost, start a run, list/recover runs, poll status, list ranked business candidates, or stop a run. Use for place-based searches like "dentists in Austin"; use |
| Start agentic research to find companies or people |
| Poll a research job's progress |
| Import research results as contacts into the CRM |
๐ Webhook Tools
Tool | Description |
| List active webhook subscriptions |
| Register a new webhook endpoint for real-time events |
| Remove a webhook subscription |
Example Workflows
Full Prospecting Pipeline
User: Find 10 fintech founders in New York with verified emails, research each one, and add them to a campaign.
Claude: [setup_workspace] โ checks workspace is ready
[find_prospects] โ channels=["email","linkedin"], target_count=10
[check_research_status] โ waits for results
โ only count verified, person-specific emails
โ if only 7 verify, report 7/10 and do not pretend the target is met
[pilot] โ "Build a 3-step email campaign for the NYC Fintech folder"Email prospecting is strict: target_count=10 means 10 sendable email contacts, not 10 LinkedIn profiles. Generic inboxes (hello@, info@), guessed local parts, catch-all/likely results, and unverified emails do not count.
Quick Health Check
User: Is everything set up correctly?
Claude: [setup_workspace] โ returns readiness %, flags missing items
โ "Your workspace is 75% ready. You're missing a knowledge base โ this is critical for campaign quality. Go to Settings โ Pilot and add your product info."Guided Onboarding
User: I'm new, how do I get started?
Claude: [onboarding_guide] โ returns full setup walkthrough
โ walks through email setup, ICP config, knowledge base, first campaignAuthentication
All API calls use Bearer token authentication:
Authorization: Bearer op_live_your_key_hereAPI keys are scoped to endpoints. Default scopes:
contactsโ contact operationscampaignsโ campaign, webhook operationscreditsโ credit balancechatโ pilot bridge (required for agentic tasks)emailโ direct email sending
Development
Run in development mode (no build step needed):
npm run devThe server communicates over stdio (JSON-RPC 2.0), which is required by the MCP protocol.
Architecture
MCP Client (Claude, Cursor, etc.)
โ JSON-RPC over stdio
OutreachPilot MCP Server (31 tools)
โ HTTPS REST + Bearer auth
OutreachPilot API (/api/v1/*)
โ Internal
OutreachPilot AI Pilot (35+ tools)
โ
Supabase ยท OpenAI ยท LinkedIn ยท Twilio ยท Google CalendarThe pilot tool routes through POST /api/v1/chat, which gives your AI agent full access to the internal OutreachPilot engine โ the same AI that powers the in-app Pilot Buddy chat.
Available Tools
31 toolscheck_research_statusA
Poll the status of a running research job. Returns status (pending/running/complete/error), result count, and full results when complete. Keep calling this until status is 'complete', then call import_research_results.
Inputs: job_id (required).
create_campaignA
Create a new campaign. Creates it as a draft โ use update_campaign_status to activate it. For a fully AI-built campaign with email steps already written, use the pilot tool with a message like 'create a 3-step email campaign for the Austin folder'.
Inputs: name (required), type, config, idempotency_key.
create_companyC
Create a company account in the CRM.
Inputs: companies (required), upsert, idempotency_key.
create_contactA
Create one or more contacts in the CRM. Automatically creates the company account if a company is specified. Optionally enroll in a campaign immediately.
Inputs: contacts (required), upsert, campaign_id, idempotency_key.
create_folderA
Create a new contact folder. If a folder with the same name already exists, returns the existing one.
Inputs: name (required), idempotency_key.
create_webhookB
Register a webhook to receive real-time event notifications from OutreachPilot. The webhook URL must use HTTPS.
Inputs: url (required), events (required), secret, idempotency_key.
delete_companyA
Permanently delete a company account from the CRM. Contacts linked to this company will be unlinked but not deleted.
Inputs: company_id (required), confirmed, idempotency_key.
delete_contactA
Permanently delete a contact from the CRM by its ID. This cannot be undone.
Inputs: contact_id (required), confirmed, idempotency_key.
delete_webhookB
Remove a webhook subscription by its ID.
Inputs: webhook_id (required), confirmed, idempotency_key.
get_campaignA
Get full details of a single campaign including its config, steps, and audience statistics.
Inputs: campaign_id (required).
get_campaign_statusA
Get the status and audience statistics of a campaign. Returns total contacts enrolled, active, completed, paused, bounced, and failed counts.
Inputs: campaign_id (required).
get_companyA
Get a single company account by its ID. Returns all fields including name, domain, industry, size, and custom context.
Inputs: company_id (required).
get_contactA
Get a single contact by its ID. Returns all fields including email, phone, LinkedIn URL, company, status, tags, and custom context.
Inputs: contact_id (required).
get_credit_balanceA
Check your current credit balance, monthly limit, plan tier, and when credits reset. Use this to verify you have enough credits before launching research or campaigns.
Inputs: no named parameters.
import_research_resultsA
Import completed research results into the CRM as contacts. Only call after check_research_status returns 'complete'. Can auto-assign to a folder and/or enroll in a campaign.
Inputs: job_id (required), confirmed, campaign_id, folder_name, +1 more.
list_campaignsA
List your outreach campaigns. Filter by status or type to find active, draft, or paused campaigns.
Inputs: type, limit, offset, status.
list_companiesB
List company accounts in your CRM. Companies are automatically linked to contacts.
Inputs: limit, domain, offset, search.
list_contactsA
List all contacts in your CRM with optional filters. Use search_contacts for keyword search. This is for paginated browsing.
Inputs: limit, offset, status, folder_id.
list_foldersA
List all contact folders in the workspace. Folders organize contacts into groups for campaigns. Returns folder names, IDs, and contact counts.
Inputs: limit, search.
list_webhooksA
List all active webhook subscriptions. Webhooks deliver real-time notifications when events occur (email.sent, email.replied, contact.created, etc.).
Inputs: no named parameters.
onboarding_guideA
Get the step-by-step onboarding guide for setting up OutreachPilot from scratch. Returns a detailed walkthrough covering: account setup, email connection, ICP configuration, knowledge base, contact import, folder organization, campaign creation, and launch. Use this when a user is new or asks how to get started.
Inputs: focus.
pilotA
The OutreachPilot AI engine. Send any natural language instruction and Pilot will execute it using its full toolkit.
Use this for complex or multi-step tasks that go beyond simple CRUD:
MESSAGING & OUTREACH
"Draft a follow-up email to John Doe at Acme Corp"
"Send a LinkedIn connection request to Jane Smith"
"Write a cold email to my CEO contacts at fintech companies"
RESEARCH & LEAD GENERATION
"Research Stripe โ find buying signals and key decision makers"
"Find 20 VP of Sales at Series B SaaS companies in Austin"
"Enrich all contacts at Salesforce with LinkedIn profiles"
"Find emails for all contacts at HubSpot"
CAMPAIGN BUILDING
"Build a 3-step email campaign for the Austin SaaS folder"
"Add a wait step of 5 days to campaign abc123"
"Pause my cold email campaign"
CALENDAR & MEETINGS
"What's my calendar availability for this week?"
"Book a meeting with Jane Smith on Friday at 2pm"
ANALYTICS & REPORTING
"Show me email stats for the last 30 days"
"How many contacts replied to my campaigns?"
"What's the open rate on my outbound emails?"
SYSTEM & ADMIN
"Check if my email accounts are connected properly"
"How many credits do I have left?"
"What does our auto-responder prompt say?"
"Update our knowledge base with: [text]"
VOICE DIALING
"Start a dialing session for the Startup Founders folder"
"What are my call stats?"
Inputs: message (required), thread_id.
run_researchA
Start an agentic research job to find companies or people matching your criteria. Returns a job_id to poll with check_research_status. Send with confirmed=false first to get a cost estimate, then confirmed=true to execute.
Inputs: query (required), depth, limit, confirmed, +2 more.
search_contactsA
Search your OutreachPilot CRM for contacts by name, email, or company. Returns matching contacts with their status, email, LinkedIn URL, and creation date.
Inputs: query (required), limit, status, folder_id.
send_emailA
Send a one-off email through your connected email account. Costs 1 credit per send. For bulk sending, use campaigns instead.
Inputs: to (required), subject (required), body, confirmed, +3 more.
setup_workspaceA
Run a full health check on the OutreachPilot workspace. Returns setup completeness for: email accounts, ICP config, knowledge base, folders, contacts, campaigns, and credits. Use this FIRST when starting a new conversation to understand what's configured and what needs setup. Returns a readiness percentage and actionable recommendations.
Inputs: no named parameters.
trigger_campaignA
Enroll a contact into an active campaign. Can provide a contact_id for an existing contact, or provide contact fields (email, first_name, last_name, company) to auto-create and enroll. The campaign must be active.
Inputs: campaign_id (required), email, company, confirmed, +5 more.
update_campaignA
Update a campaign's name, config, steps, or type. For status changes (pause/resume/activate), use update_campaign_status instead.
Inputs: campaign_id (required), name, type, steps, +3 more.
update_campaign_statusB
Pause, resume, activate, or archive a campaign.
Inputs: status (required), campaign_id (required), confirmed, idempotency_key.
update_companyB
Update an existing company's fields. You must provide the company_id.
Inputs: company_id (required), name, size, domain, +4 more.
update_contactA
Update an existing contact's fields. You must provide the contact_id (use search_contacts to find it).
Inputs: contact_id (required), tags, email, phone, +7 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogโฆ
TDQS
Scored across 31 tools
Most tools have clearly distinct purposes, with explicit disambiguation between search_contacts and list_contacts, and update_campaign vs update_campaign_status. However, get_campaign_status overlaps with get_campaign's audience statistics, and trigger_campaign's ability to auto-create contacts could be confused with create_contact.
All tools follow a consistent verb_noun snake_case pattern with standard verbs like get, list, create, update, delete, search, trigger, and send. No mixed conventions or vague names.
31 tools is on the heavy side for an MCP server, even for a broad outreach platform. Some redundancy exists (get_campaign_status vs get_campaign, setup_workspace vs onboarding_guide) that could be consolidated, but most tools serve a distinct purpose.
The core CRM and campaign workflows are well-covered with full CRUD for contacts and companies, plus research and webhooks. However, notable gaps include no delete_folder, no delete_campaign (only archive), and no dedicated tools for calendar or knowledge base management despite pilot mentioning these capabilities.
Maintenance
Related MCP Connectors
Run B2B outreach from your AI agent: 250+ tools for campaigns, leads, LinkedIn and email workflows.
Give AI agents the LinkedIn tools to find, qualify, engage, and follow up with prospects.
Manage SalesCloser AI sales agents, leads, campaigns and calls from your AI assistant.
Find LinkedIn prospects, draft outreach, and run human-paced campaigns from your AI agent.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables research on prospects, pull call transcripts, and enrich leads using Gong, ZoomInfo, Clay, and LinkedIn Sales Navigator through natural language.161MIT
- AlicenseNot gradedqualityCmaintenanceConnects AI assistants to LinkedIn outreach, enabling lead finding, campaign management, messaging, and analytics through natural language.MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to connect to a hosted multichannel B2B outbound engine for LinkedIn messaging, cold email sequencing, and pipeline management, including campaign reads and prospect research. Write actions that send, launch, enroll, or spend credits require chat confirmation before completing.MIT

GTM Bud MCP connectorofficial
AlicenseNot gradedqualityCmaintenanceEnables AI assistants to build, preview, launch, and monitor LinkedIn outbound campaigns, draft replies for approval, manage campaign settings, and upgrade profiles.1MIT