instantly-mcp
instantly-mcp
A local stdio MCP server that exposes the Instantly.ai v2 API to Claude Code — the same way crmdata exposes HubSpot, but with no dashboard, no database, no hosting. Just the tools.
Claude Code ──stdio──▶ node src/server.mjs ──HTTPS+Bearer──▶ Instantly v2 APISetup
cd instantly-mcp
npm install
cp .env.example .env # then paste your INSTANTLY_API_KEY
npm run smoke # boots the server, lists tools, does one live readGet the key from Instantly → Settings → Integrations → API keys.
Wire it into Claude Code
Use absolute paths (stdio launches the process directly):
claude mcp add instantly -- node --env-file="C:/Users/colen/OneDrive/Desktop/Code-Projects/instantly-mcp/.env" "C:/Users/colen/OneDrive/Desktop/Code-Projects/instantly-mcp/src/server.mjs"Verify:
claude mcp listThen just ask, in any Claude Code session:
"How are my Instantly campaigns doing this week, and is any sending account's warmup health dropping?"
Tools
Read
Tool | What it does |
| Campaigns with ids, names, status |
| Sent/open/reply stats (one campaign or all) |
| Connected sending inboxes |
| Inbox-vs-spam + 0–100 health per account |
| SPF/DKIM/DMARC deliverability checks |
| Unibox (address or |
| One email, full body |
| Unread count |
| Leads on a campaign |
Write — staging (no send)
Tool | What it does |
| Create a sequence + schedule (does not launch) |
| Bulk-add leads to a campaign |
| Mark a unibox thread read |
Write — LIVE SEND (require confirm: true)
Tool | What it does |
| Launches a campaign — it starts sending |
| Sends a reply into a unibox thread |
The two live-send tools refuse unless you pass confirm: true, so cold email is never fired on a one-word ask.
Files
src/client.mjs thin Instantly v2 fetch wrapper (zero deps)
src/tools.mjs tool definitions (name, description, zod schema, handler)
src/server.mjs McpServer + stdio transport
scripts/smoke.mjs end-to-end boot + tools/list testNotes
All 9 read tools are verified live against the real workspace (2026-07-17). Two endpoints ported from salesintel were stale against the current v2 API and were corrected here: warmup is
POST /accounts/warmup-analytics(hyphen), and vitals takes{ accounts: [...] }and returns per-domain MX/SPF/DKIM/DMARC.client.mjstags each endpoint[verified]/[ported].The 5 write tools (
create_campaign,add_leads,mark_thread_read,activate_campaign,reply_to_email) are not exercised by the smoke test — they create/send.list_leads_in_campaignshares the/leads/listpath withadd_leadsand is verified, but confirm the add shape on your first real use.This repo does the querying; the
salesintelapp still owns durable infra (webhooks, reply polling, warmup ramp). Two views on one Instantly account, not two sources of truth.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/colenew1/Instantly-Mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server