Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port number for HTTP mode deployment | 8080 |
| TOOL_CATEGORIES | No | Comma-separated list of tool categories to load (valid values: accounts, campaigns, leads, emails, analytics). Reduces context window usage by loading only needed categories. | |
| INSTANTLY_API_KEY | No | Your Instantly API key for authentication |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_accounts | List email accounts with cursor-based pagination (100 per page). PAGINATION: If response contains pagination.next_starting_after, there are MORE results. Call again with starting_after= to get next page. Continue until pagination.next_starting_after is null. Status codes: 1=Active, 2=Paused, -1/-2/-3=Errors Provider codes: 1=IMAP, 2=Google, 3=Microsoft, 4=AWS Returns accounts with warmup status and campaign eligibility. |
| get_account | Get account details, warmup status, and campaign eligibility by email. Returns comprehensive account information including:
|
| create_account | Create email account with IMAP/SMTP credentials. Provider codes:
Requires valid IMAP and SMTP credentials for email sending. |
| update_account | Update account settings (partial update). Common updates:
Only include fields you want to update. |
| manage_account_state | Manage account state: pause, resume, enable/disable warmup, or test vitals. Actions:
Use test_vitals to diagnose connection issues. |
| delete_account | π¨ PERMANENTLY delete an email account. CANNOT UNDO! This action:
Confirm with user before executing! |
| create_campaign | Create email campaign. Two-step process: Step 1: Call with name/subject/body to discover available sender accounts Step 2: Call again with email_list to assign senders Personalization variables:
Use sequence_steps for multi-step follow-up sequences. IMPORTANT API v2 Structure:
|
| list_campaigns | List campaigns with cursor-based pagination (100 per page). PAGINATION: If response contains pagination.next_starting_after, there are MORE results. Call again with starting_after= to get next page. Continue until pagination.next_starting_after is null. Note: search filters by campaign NAME only, not by status. To filter by status, use campaign_status in get_daily_campaign_analytics. Returns campaign list with status, lead counts, and performance metrics. |
| get_campaign | Get campaign details: config, sequences, schedules, sender accounts, tracking, status. Returns comprehensive campaign information including:
|
| update_campaign | Update campaign settings (partial update). Common updates:
Only include fields you want to update. |
| activate_campaign | Activate campaign to start sending. Prerequisites (all required):
Use get_campaign to verify all prerequisites are met. |
| pause_campaign | Pause campaign to stop sending. Effects:
Use activate_campaign to resume sending. |
| delete_campaign | π¨ PERMANENTLY delete a campaign. CANNOT UNDO! β οΈ REQUIRES USER CONFIRMATION before executing! This action:
Before calling this tool, you MUST:
|
| search_campaigns_by_contact | Find all campaigns that a specific contact/lead is part of. Useful for:
Returns list of campaigns the contact email is enrolled in. |
| list_leads | List leads with cursor-based pagination (100 per page). PAGINATION: If response contains pagination.next_starting_after, there are MORE results. Call again with starting_after= to get next page. Continue until pagination.next_starting_after is null. Filter values:
Use distinct_contacts=true to deduplicate by email. |
| get_lead | Get lead details by ID. Returns comprehensive lead information including:
|
| create_lead | Create a single lead with custom variables. Use skip_if_in_campaign=true to prevent duplicates (recommended). Custom variables must match field names defined in the campaign. Example: {"industry": "Technology", "company_size": "50-100"} For bulk imports (10+ leads), use add_leads_to_campaign_or_list_bulk instead. |
| update_lead | Update lead (partial update). β οΈ IMPORTANT: custom_variables REPLACES the entire object! To preserve existing custom variables:
Example: If lead has {"industry": "Tech"} and you want to add {"size": "Large"}, you must pass {"industry": "Tech", "size": "Large"} - not just {"size": "Large"} |
| list_lead_lists | List lead lists with cursor-based pagination (100 per page). PAGINATION: If response contains pagination.next_starting_after, there are MORE results. Call again with starting_after= to get next page. Continue until pagination.next_starting_after is null. Lead lists are containers for organizing leads outside of campaigns. Use has_enrichment_task filter to find lists with auto-enrichment enabled. |
| create_lead_list | Create a lead list. Set has_enrichment_task=true to enable automatic lead enrichment. Enrichment adds company info, social profiles, and other data. |
| update_lead_list | Update lead list name, enrichment settings, or owner. |
| get_verification_stats_for_lead_list | Get email verification statistics for a lead list. Returns breakdown of verification results:
|
| add_leads_to_campaign_or_list_bulk | Bulk add up to 1,000 leads. 10-100x faster than create_lead. Provide EITHER campaign_id OR list_id (not both). Each lead requires at minimum an email address. Custom variables must match campaign field definitions. Use skip_if_in_campaign=true to prevent duplicates (recommended). |
| delete_lead | ποΈ PERMANENTLY delete a lead. CANNOT UNDO! This action:
Confirm with user before executing! |
| delete_lead_list | π¨ PERMANENTLY delete a lead list. CANNOT UNDO! β οΈ REQUIRES USER CONFIRMATION before executing! This action:
Before calling this tool, you MUST:
|
| move_leads_to_campaign_or_list | Move or copy leads between campaigns/lists. Runs as background job for large operations. Source selection (use one):
Destination (use one):
Set copy_leads=true to copy instead of move. |
| get_server_info | Get Instantly MCP server information. Returns server version, loaded categories, and configuration status. Useful for debugging and verifying server setup. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |