MCP server
Irisend's REST API is also exposed as a remote MCP server at /mcp, so a coding agent can send mail, check on it, and diagnose a bounce without glue code.
Connect
Authenticate the same way as the REST API: an Irisend API key as a Bearer token. sending_access keys can only call send_email; every other tool needs a full_access key.
claude mcp add --transport http irisend https://api.irisend.com/mcp \
--header "Authorization: Bearer ir_xxxx"Any other MCP client that supports Streamable HTTP takes the same URL and header in its own config format:
{
"mcpServers": {
"irisend": {
"type": "http",
"url": "https://api.irisend.com/mcp",
"headers": { "Authorization": "Bearer ir_xxxx" }
}
}
}Tools
Every tool is team-scoped and runs through the exact same guardrails (quota, domain verification, suppression checks) as the matching REST endpoint — a tool call can never bypass them. A failed call comes back as a tool error carrying the same name/message pair as the REST API's own errors (see Errors). explain_bounce's successful result is plain human-readable prose, not JSON — every other tool returns a JSON-stringified object.
| Tool | What it does |
|---|---|
| send_email | Send an email. Goes through the same validation, quota, domain-verification, and suppression handling as POST /emails. Works with a sending_access key. |
| list_emails | List this team's emails, newest first. |
| get_email | Retrieve one email by id, including its full event timeline. |
| list_domains | List this team's sending domains. |
| check_domain_health | 0-100 health score for a domain from bounce/complaint reputation and a live DNS check. |
| explain_bounce | Translate an email's bounce, complaint, failure, or suppression event into a plain-language explanation and a fix. |