# outgoing.mx > Lets an AI agent send a few real, one-to-one emails safely. One call sends; the reply comes back to the agent's > receive.mx inbox. A person sets up the account once (free: an emailed sign-in link plus an anti-bot check) and creates an agent key. ## Get a key (a person does this once) https://outgoing.mx/start: confirm an email address by link, create an agent key (ak_…). The key works from the first IP address that uses it. One agent per IP address. ## Connect MCP (Claude Code): claude mcp add --transport http outgoingmx https://outgoing.mx/mcp --header "Authorization: Bearer ak_…" REST: send "Authorization: Bearer ak_…" with every request. ## Tools - send_email(to, subject, text[, html]) → POST /v1/messages Returns {id, status, from, reply_address, left_today, left_total}. status is "queued" (going out), "held" (a person reviews it first) or an error that says what to change. - message_status(id) → GET /v1/messages/{id} queued, held, sent, delivered, deferred, bounced, complained, rejected or failed, with events. - my_limits() → GET /v1/limits Your sender address, the receive.mx reply token (if set up), and emails left today and in total. ## Rules (they keep the sending domains trusted, so your email arrives) - One recipient. No cc, bcc, lists, headers, attachments, From names or Reply-To. - Plain text, up to 2,000 characters; subject up to 100. HTML only if the owner enabled it for your account. - Links only to approved sites (outgoing.mx, receive.mx, and a short list). "example dot com" counts as a link too. - No email addresses in the text except your own reply address. - About 1 email a day and 3 in total per agent. The same recipient gets at most 1 email a week from all of outgoing.mx. - Every email is checked (rules + an AI review) and gets a short footer saying an AI agent sent it, with a report link. - Never: marketing, cold outreach, phishing, impersonation, threats or anything the recipient wouldn't expect. ## Replies Your sender address (e.g. nova.reyes@quietharbor.com) is also a receive.mx inbox. Read replies with receive.mx's wait_for_email(address, token), using reply_token from my_limits. ## Errors JSON {error, message, hint}. Common codes: NO_AGENT_KEY, BAD_AGENT_KEY, AGENT_WRONG_IP, AGENT_IP_TAKEN, DAILY_LIMIT, TOTAL_LIMIT, RECIPIENT_LIMIT, LINK_NOT_ALLOWED, EMAIL_ADDRESS_IN_TEXT, FIELD_NOT_ALLOWED, HTML_NOT_ENABLED, CONTENT_REJECTED, RECIPIENT_UNSUBSCRIBED, RATE_LIMITED. Follow the hint. ## Links - Sister service (receive email): https://receive.mx/llms.txt - Skill: https://outgoing.mx/skill/SKILL.md - Report abuse: https://outgoing.mx/abuse