instantly-mcp
Instantly MCP server
Un servidor MCP que pone tu espacio de trabajo de email en frío de Instantly.ai ante un cliente de IA. Pregunta a Claude por la tasa de respuesta de la semana pasada, carga leads enriquecidos en una campaña, haz triaje de la Unibox, pausa un buzón que está quemando su reputación: 40 herramientas sobre la API v2 de Instantly.
El propósito del proyecto es el modelo de seguridad. Cada escritura requiere una confirm explícita, la autonomía es una política por niveles con límites de volumen y una lista de bloqueo estricto, y todo ello se aplica en código, no se pide en un prompt. Un agente no puede saltarse un límite con argucias, porque el límite es una sentencia if.
You: "Launch the Design Partners campaign."
Claude: → launch_campaign(campaign_id="camp-1")
← "Would LAUNCH (activate) campaign camp-1 — it will start sending.
AUTONOMY_LEVEL=manual — every write needs confirm=true.
Re-call with confirm=true to execute."
This will start sending from your mailboxes. Confirm?
You: "Yes."
Claude: → launch_campaign(campaign_id="camp-1", confirm=true) ← now it runsLa previsualización cuesta cero llamadas HTTP, así que nada llega a Instantly hasta que tú lo decidas.
Transporte: stdio local por defecto: sin alojamiento, sin URL pública, sin token. Una variable de entorno lo cambia a HTTP/SSE alojado (Alojamiento).
Autenticación: tu clave de Instantly v2, leída de
INSTANTLY_API_KEY, nunca incrustada en el código y nunca registrada.Verificado: las rutas y las estructuras de los payloads se comprueban contra la referencia v2 en vivo; cada punto en el que la API real difiere de la suposición obvia está documentado.
Probado: la suite está completamente simulada y nunca toca la API real.
Inicio rápido
Requiere Python 3.11+ y una cuenta de Instantly con acceso a la API v2.
1. Instala
git clone https://github.com/katekruger/instantlymcp.git
cd instantlymcp
# Option A — uv (preferred)
uv sync
# Option B — venv + pip
python3.12 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"2. Obtén una clave de API
En Instantly, ve a Settings → Integrations → API y crea una clave v2. Instantly admite claves con ámbito: empieza con una clave de solo lectura para probar la analítica con seguridad y, cuando confíes en ella, amplía los ámbitos.
export INSTANTLY_API_KEY=your_key_here3. Comprueba que arranca
# Fails cleanly if the key is unset:
unset INSTANTLY_API_KEY
instantly-mcp # -> "ERROR: INSTANTLY_API_KEY is not set", exit 1
# Starts (stdio server waits on stdin) with any non-empty key:
INSTANTLY_API_KEY=dummy instantly-mcpNo se realiza ninguna llamada HTTP hasta que se invoca una herramienta. Pulsa Ctrl-C para detenerlo.
4. Regístralo en tu cliente MCP
Añade esto a la configuración de tu cliente, ajustando la ruta absoluta:
{
"mcpServers": {
"instantly": {
"command": "uv",
"args": ["--directory", "/absolute/path/to/instantlymcp", "run", "instantly-mcp"],
"env": { "INSTANTLY_API_KEY": "your_key_here" }
}
}
}Si instalaste con venv + pip en lugar de uv, apunta command al punto de entrada del venv y elimina args:
{
"mcpServers": {
"instantly": {
"command": "/absolute/path/to/instantlymcp/.venv/bin/instantly-mcp",
"env": { "INSTANTLY_API_KEY": "your_key_here" }
}
}
}Dónde se encuentra esa configuración (macOS):
Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.jsonClaude Code:
claude mcp add instantly -e INSTANTLY_API_KEY=your_key_here -- uv --directory /absolute/path/to/instantlymcp run instantly-mcp
5. Pruébalo
Reinicia el cliente, confirma que aparecen las herramientas de instantly y empieza con una lectura: "list my Instantly campaigns". Después prueba una escritura — primero verás una previsualización.
Related MCP server: Apollo.io MCP Server
Qué puede hacer
40 herramientas. Las lecturas se ejecutan libremente; las escrituras están por niveles. Firmas completas y niveles en la referencia de herramientas.
Área | Herramientas | Nivel más alto |
Analítica | Analítica de campañas, cuentas y por paso/variante con tasas calculadas de apertura, respuesta, clic y rebote | READ |
Leads | Listar, obtener, buscar por email, añadir (sin duplicados), actualizar, fijar estado de interés, mover, eliminar | HIGH_WRITE |
Listas de leads | Listar, crear | LOW_WRITE |
Campañas | Listar, obtener, previsualizar una construcción sin escrituras, crear (empieza en pausa), actualizar, lanzar, pausar | HIGH_WRITE |
Emails / Unibox | Listar, obtener, contar no leídos, marcar hilo como leído, responder, reenviar | HIGH_WRITE |
Cuentas de remitente | Listar, obtener, pausar, reanudar, actualizar | HIGH_WRITE |
Lista de bloqueo | Listar, añadir, eliminar | HIGH_WRITE |
Entregabilidad y espacio de trabajo | Verificar un email, leer el espacio de trabajo, listar/crear/eliminar webhooks | HIGH_WRITE |
Cuatro de ellas están bloqueadas por completo — delete_lead, delete_webhook, pause_account, remove_from_blocklist — y nunca se ejecutan sin confirm=true, en ningún nivel de autonomía, diga lo que diga la política.
El modelo de seguridad
Nivel | LOW_WRITE (reversible) | HIGH_WRITE (irreversible / amplio radio de impacto) |
| requiere | requiere |
| se ejecuta sin supervisión, dentro de los límites | requiere |
| se ejecuta dentro de los límites | se ejecuta dentro de los límites, excepto la lista de bloqueo estricto |
Además de los niveles: límites de volumen por llamada y en ventana móvil de 24 horas (leads, emails, campañas), listas opcionales de campañas permitidas y denegadas, y un audit.log de solo añadidura con cada escritura ejecutada y los secretos redactados. Superar un límite fuerza una previsualización incluso en autonomous. Detalles en Seguridad y autonomía.
Alojamiento
El stdio local no necesita alojamiento y es el valor por defecto adecuado: no hay exposición de red que defender. Alójalo solo cuando el servidor deba existir mientras tu máquina esté apagada, principalmente para recibir webhooks de Instantly. Por HTTP, la autenticación entrante es obligatoria y el servidor falla en modo cerrado: sin token, con un token de menos de 32 caracteres o con una URL pública que no sea https, se niega a arrancar. Se incluyen un Dockerfile y un blueprint de Render. Ver Alojamiento.
Documentación
Página | Contenido |
Las 40 herramientas, agrupadas por área, con sus niveles de riesgo | |
La puerta | |
Cada variable de entorno, su valor predeterminado y su función | |
Transportes HTTP, el modelo de amenazas, el flujo de inicio de sesión OAuth, Docker/Render y webhooks | |
Dónde difiere la API v2 real de Instantly de la lectura obvia | |
Cómo notificar una vulnerabilidad; qué protege y qué no protege este servidor | |
Cómo ejecutar las pruebas y el linter, y qué hace que un cambio sea bueno |
Estructura del repositorio
src/instantly_mcp/
server.py MCP server: the 40 tool definitions, login route, transport selection
client.py Instantly v2 API client (httpx) — all HTTP lives here
models.py Pydantic input models and normalizers
policy.py Risk tiers, autonomy levels, volume caps, audit log
auth.py Inbound bearer-token auth for HTTP transports; fails closed
oauth.py Single-user OAuth authorization server for MCP clients
formatting.py Compact, LLM-friendly summaries of raw API responses
tests/ Fully mocked — never hits the live API
docs/ The pages listed above
Dockerfile Container image for hosted deployment (non-root, reads $PORT)
render.yaml Render blueprint; secrets are prompted, never committed
.env.example Annotated template for every supported variableDesarrollo
pytest -q # all mocked, no network, no API key needed
ruff check src tests # lintLa CI se ejecuta tanto en cada push como en cada pull request contra Python 3.11, 3.12 y 3.13.
Licencia
MIT.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityFmaintenanceEnables interaction with Instantly.ai email outreach platform through 31 tools across accounts, campaigns, leads, emails, and analytics. Supports both local and remote deployment with multi-tenant authentication.27MIT
- AlicenseNot gradedqualityAmaintenanceFastMCP server exposing the full operational surface of the Apollo.io REST API to AI assistants. Provides 27 tools for outbound sales automation including campaign health, sequence management, mailbox warmup, CRM operations, and programmatic template/sequence editing with audit logging.3MIT
- AlicenseNot gradedqualityBmaintenanceEnables management of OpenAI Ads campaigns, ad groups, ads, and insights through MCP, with approval-gated live mutations for safe write operations.57MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to manage multiple HighLevel CRM sub-accounts through a single OAuth-based MCP server, providing read-only access to contacts, conversations, opportunities, calendars, payments, blogs, emails, and social media.
Related MCP Connectors
Read-only MCP access to sessions, funnels, campaigns, errors, live visitors, and anomalies.
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
Connect any AI agent to 11+ social platforms: schedule, publish & track posts via hosted MCP.
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/katekruger/instantlymcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server