Integration
OpenClaw Integration
Give your OpenClaw AI assistant email superpowers. Connect via MCP or custom skills to send, receive, and manage email.
Quick Start (MCP -- Recommended)
The fastest way to connect OpenClaw to Dead Simple Email is through MCP (Model Context Protocol). Add the following to your OpenClaw MCP configuration:
{
"mcpServers": {
"deadsimple": {
"command": "python",
"args": ["-m", "deadsimple.mcp"],
"env": { "DSE_API_KEY": "dse_your_api_key" }
}
}
}
Once configured, your OpenClaw agent gains access to 11 email tools automatically. No code required -- just tell it what to do in natural language:
"Send an email to user@example.com with subject 'Hello' and body 'Hi from OpenClaw'"
OpenClaw will automatically call the MCP server to create an inbox (if needed), compose the message, and send it.
Available MCP Tools
Once connected, your OpenClaw agent has access to these tools:
| Tool | Description |
|---|---|
create_inbox |
Create a new email inbox |
list_inboxes |
List all inboxes on the account |
delete_inbox |
Delete an inbox |
send_email |
Send an email from any inbox |
read_emails |
List messages in an inbox |
read_email |
Read the full content of a message |
reply_to_email |
Reply to an existing email thread |
forward_email |
Forward a message to another address |
list_threads |
List email threads in an inbox |
create_webhook |
Register a webhook for email events |
get_usage |
Check account usage and limits |
Custom Skills (Alternative)
If you prefer more control, you can use the Python SDK directly in an OpenClaw custom skill:
from deadsimple import DeadSimple client = DeadSimple() # reads DSE_API_KEY from env def send_email(to: str, subject: str, body: str, inbox_id: str = None): """Send an email. Creates a temporary inbox if no inbox_id is provided.""" if not inbox_id: inbox = client.inboxes.create(display_name="OpenClaw Agent") inbox_id = inbox.inbox_id result = client.messages.send( inbox_id=inbox_id, to=to, subject=subject, text_body=body, ) return f"Sent message {result.message_id} from {inbox_id}" def check_inbox(inbox_id: str): """List recent messages in an inbox.""" messages = client.messages.list(inbox_id=inbox_id, limit=5) return [ {"from": m.sender, "subject": m.subject, "date": m.received_at} for m in messages.data ]
Register these functions as OpenClaw skills and the agent can call them when users ask to send or read email.
Example Prompts
Once connected, try these prompts with your OpenClaw agent:
- "Create an inbox for customer support" -- creates a new inbox with a display name
- "Send an email to team@company.com about the project update" -- composes and sends an email
- "Check my inbox for new messages" -- lists recent messages with summaries
- "Reply to the latest email from Sarah and tell her we'll ship next week" -- reads the message, composes a contextual reply, and sends it
- "Set up a webhook to notify me at https://myapp.com/hooks when new emails arrive" -- creates a webhook subscription
- "How many emails have I sent this month?" -- checks account usage
Full Walkthrough
For a detailed step-by-step guide covering advanced configuration, multi-inbox workflows, and webhook-driven automation, read the full blog post:
OpenClaw + Dead Simple Email: The Complete Integration Guide
Related Integrations
- MCP Server -- the underlying MCP server used by this integration
- Python SDK -- for building custom skills programmatically
- CLI -- manage inboxes and email from the terminal