Mailcannon
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
AI-powered email outreach platform — send campaigns with deliverability tracking.
| Author | io.github.AinaLuc |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 324 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"Mailcannon": {
"url": "https://www.thinkandautomate.dev/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (34)
add_contactAdd a single contact
Parameters:
email(required) — stringfirstName(required) — stringtags— arraytitle— stringcompany— stringlastName— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
add_contactsBulk add contacts (max 100)
Parameters:
contacts(required) — array
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_contactsList all contacts
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
remove_contactRemove a contact by ID
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
update_contact_tagsSet tags on a contact (replaces all tags)
Parameters:
id(required) — stringtags(required) — array
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_tagsList all unique tags across your contacts
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
create_campaignCreate a new email campaign
Parameters:
name(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
add_campaign_stepAdd a sequence step (delay in hours, subject, body)
Parameters:
campaignId(required) — stringday(required) — number — Delay in hourssubject(required) — stringbody(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_campaignsList all campaigns with their steps
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
delete_campaignDelete a campaign and all its steps
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
update_campaignUpdate a campaign's name
Parameters:
id(required) — stringname(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
delete_campaign_stepDelete a step from a campaign
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
update_campaign_stepUpdate a campaign step's day, subject, or body
Parameters:
id(required) — stringday— number — Delay in hoursbody— stringsubject— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
schedule_campaignAssign contacts to a campaign and schedule it
Parameters:
campaignId(required) — stringtags— array — Filter contacts by tag (overrides contactIds)startAt— string — ISO date (optional)contactIds— array — Contact IDs (ignored if tags provided)providerId— string — Provider ID (optional)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_schedulesList all scheduled campaign runs
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
process_campaignsProcess all due campaign schedules (includeFailed: true to retry failed ones)
Parameters:
includeFailed— boolean — Also retry failed schedules
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
add_providerAdd an email provider
Parameters:
name(required) — stringkind(required) — stringenv— objecturl— stringargs— arraycommand— stringtransport— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_providersList all email providers
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
remove_providerRemove a provider by ID
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_deliverabilityGet deliverability stats (sent, opens, bounces, replies)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
create_taskCreate a new task
Parameters:
title(required) — stringdueDate— string — ISO date (optional)priority— stringdescription— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_tasksList all tasks
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
update_taskUpdate a task's status, priority, or fields
Parameters:
id(required) — stringtitle— stringstatus— stringdueDate— stringpriority— stringdescription— string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
delete_taskDelete a task by ID
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_settingGet a user setting (e.g. timezone)
Parameters:
key(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
set_settingSet a user setting (e.g. timezone to 'America/New_York')
Parameters:
key(required) — stringvalue(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_settingsList all user settings
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
send_test_emailSend a test email to yourself to preview formatting
Parameters:
subject(required) — stringbody(required) — stringproviderId— string — Provider ID (optional, uses first available)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
check_domain_deliverabilityCheck SPF, DKIM, DMARC records for a domain
Parameters:
domain(required) — string — Domain to check (e.g. thinkandautomate.dev)
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
check_email_spam_scoreAnalyze email subject/body for spam trigger words
Parameters:
subject(required) — stringbody(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
pause_campaignPause a campaign — stops processing all active schedules for this campaign
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
resume_campaignResume a paused campaign — reactivates all paused schedules
Parameters:
id(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
retry_failedReset all failed schedules to active for retry
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
check_step_spam_scoreCheck a campaign step's subject and body for spam triggers
Parameters:
stepId(required) — string
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.