Send emails, check delivery status, and manage your email infrastructure using natural language through AI assistants.Documentation Index
Fetch the complete documentation index at: https://arkhq.io/docs/llms.txt
Use this file to discover all available pages before exploring further.
Why Use MCP?
Natural Language
Context-Aware
Safe Defaults
Supported AI Assistants
Claude Desktop
Cursor
VS Code
Windsurf
Quick Setup
Claude Desktop
Get your API key
Configure Claude Desktop
- macOS
- Windows
- Linux
~/Library/Application Support/Claude/claude_desktop_config.jsonStart sending emails
“Send a test email to my@email.com from hello@yourdomain.com with the subject ‘Hello from Ark!’”
Cursor
- One-Click Install
- Manual Setup
VS Code
Windsurf
Add to your Windsurf MCP configuration:What You Can Do
Send Emails
Just describe what you want in natural language:Simple emails
Simple emails
“Send a welcome email to john@example.com with the subject ‘Welcome to Acme!’”
“Email user@example.com saying their order has shipped”
“Send a test email to myself at my@email.com”
Password resets & notifications
Password resets & notifications
“Send a password reset email to user@example.com with a reset link”
“Notify the engineering team that the deployment is complete”
“Send an alert email about the failed payment”
Formatted emails
Formatted emails
“Send an HTML email to customer@example.com with their invoice details in a nice table format”
“Email the report as a formatted newsletter”
Batch emails
Batch emails
“Send the same announcement to these 10 email addresses: …”
“Email all team leads about the upcoming meeting”
Check Delivery Status
Delivery verification
Delivery verification
“Was the email to customer@example.com delivered?”
“Check the status of the last email I sent”
“Did john@acme.com receive the welcome email?”
Troubleshooting
Troubleshooting
“Why didn’t the email to user@domain.com go through?”
“Show me recent bounces”
“What happened to the email sent to invalid@example.com?”
Manage Suppressions
Check suppression status
Check suppression status
“Is john@example.com on our suppression list?”
“Why is user@domain.com suppressed?”
“Show me all suppressed emails”
Modify suppression list
Modify suppression list
“Remove user@example.com from the suppression list”
“Add bounced@example.com to the suppression list”
“Clear the suppression for this customer who fixed their mailbox”
Configure Domains
Domain setup
Domain setup
“Help me set up mail.mydomain.com as a sending domain”
“Show me the DNS records I need to add for mydomain.com”
“What domains do I have configured?”
Verification
Verification
“Verify my domain configuration for mydomain.com”
“Check if the DNS records for mail.acme.com are correct”
Available Tools
The MCP server exposes these tools to AI assistants:Email Operations
| Tool | Description |
|---|---|
send_email | Send a transactional email to one or more recipients |
send_batch | Send multiple different emails in one request (up to 100) |
send_raw | Send a raw MIME message for advanced use cases |
get_email | Get details and delivery status of a sent email |
list_emails | List sent emails with filtering by status, date, tags |
retry_email | Retry delivery of a failed email |
get_deliveries | Get all delivery attempts for an email |
Suppression Management
| Tool | Description |
|---|---|
check_suppression | Check if an email address is suppressed and why |
add_suppression | Add an email to the suppression list |
bulk_add_suppressions | Add multiple emails to the suppression list |
remove_suppression | Remove an email from the suppression list |
list_suppressions | List all suppressed email addresses |
Domain Management
| Tool | Description |
|---|---|
create_domain | Register a new sending domain |
list_domains | List all configured sending domains |
get_domain | Get details and DNS records for a domain |
verify_domain | Trigger DNS verification for a domain |
delete_domain | Remove a sending domain |
Webhook Management
| Tool | Description |
|---|---|
create_webhook | Create a webhook endpoint for events |
list_webhooks | List all configured webhooks |
update_webhook | Modify webhook URL or events |
test_webhook | Send a test event to a webhook |
delete_webhook | Remove a webhook |
Tracking Domains
| Tool | Description |
|---|---|
create_tracking_domain | Set up a custom tracking domain |
list_tracking_domains | List tracking domain configurations |
verify_tracking_domain | Verify tracking domain DNS |
delete_tracking_domain | Remove a tracking domain |
Testing
To test email sending, use your verified domain:“Send a test email from hello@yourdomain.com to myemail@gmail.com”
Example Conversations
Sending a Welcome Email
Checking Delivery Status
Troubleshooting a Bounce
Security
API Key Storage
API Key Storage
- Never sent to Anthropic, OpenAI, or other AI providers
- Only transmitted directly to Ark’s servers (api.arkhq.io) over HTTPS
- Only accessible by the local MCP server process
How MCP Works
How MCP Works
Permissions
Permissions
- Create a restricted API key with only the permissions needed
- Use read-only keys for monitoring/analytics use cases
- Rotate keys regularly at arkhq.io/org/credentials
Rate Limits
The MCP server respects Ark’s rate limits:| Operation | Rate Limit |
|---|---|
| Most operations | 5 requests/second |
| Batch sending | 1 request/second (up to 100 emails) |
Troubleshooting
MCP server not loading
MCP server not loading
- Ensure Node.js 20+ is installed:
node --version - Check your config file for JSON syntax errors (use a JSON validator)
- Restart your AI assistant completely (fully quit, not just close window)
- Check logs:
- Claude Desktop: Help > Show Logs
- Cursor: View > Output > MCP
- VS Code: Output panel > Claude
Authentication errors
Authentication errors
- Verify your API key is correct (no extra spaces)
- Ensure the key starts with
ark_live_orark_test_ - Check the key hasn’t been revoked at arkhq.io/org/credentials
- Try generating a new API key
Emails not sending
Emails not sending
- Domain: Ensure your sending domain is verified
- DNS: Verify DNS records are configured correctly
- Suppression: Check if recipient is on suppression list
- Spam folder: Check recipient’s spam/junk folder
- Status: Ask “What’s the status of the last email I sent?”
Slow responses
Slow responses
- Large batch operations naturally take longer
- Check your internet connection
- The first request after startup may be slow (npm package download)
- Check Ark status page for any issues
FAQ
Is this free?
Is this free?
Can I use this for marketing emails?
Can I use this for marketing emails?
Does the AI see my email content?
Does the AI see my email content?
Can I self-host the MCP server?
Can I self-host the MCP server?
