MCP server
Let an AI assistant manage your aliases and mailboxes through the Model Context Protocol
Aliasify exposes a remote Model Context Protocol server. Once connected, an MCP client (Claude Code, Cursor, any client that speaks Streamable HTTP) can list your aliases, read and sort your mail, and, if you allow it, reply or send.
- URL:
https://api.aliasify.app/mcp - Transport: Streamable HTTP,
POSTonly (stateless, JSON responses) - Auth: OAuth 2.1 (for connectors such as Claude) or an API key sent as
Authorization: Bearer jm_...(Business plan, same keys as the REST API)
Add it as a Claude connector (OAuth)
In Claude (claude.ai, Desktop, mobile), add a custom connector with the URL https://api.aliasify.app/mcp and sign in when asked. Claude opens the Aliasify consent screen: it shows who is asking and where you will be sent back, and you tick the permissions to give. Nothing else to configure, no key to copy.
- Requires a Business plan.
- Permissions (
emails:read,emails:write,emails:send) are the same as for API keys; you can give less than what is requested. - Access tokens last one hour and are renewed automatically; the connection ends after 30 days without use, or as soon as the account is suspended.
- Claude Code can use the same flow:
claude mcp add --transport http aliasify https://api.aliasify.app/mcp, then/mcpto sign in.
The authorization server follows OAuth 2.1: authorization code with PKCE (S256), dynamic client registration, refresh token rotation. Discovery documents are at /.well-known/oauth-protected-resource and /.well-known/oauth-authorization-server.
Or use an API key
Create a key
Create an API key as described in Authentication and choose the scopes you want the assistant to have:
| Scope | What the assistant can do |
|---|---|
emails:read | List aliases, list and read emails |
emails:write | Create/delete aliases, sort, trash, restore |
emails:send | Reply and send mail (separate on purpose: a key that can sort and delete cannot become a mail relay) |
A tool only appears when the key carries its scope. /mcp accepts one call per request (no JSON-RPC batches) and is rate-limited to 30 requests per minute. For a read-only assistant, give the key emails:read only. A key with neither scope is refused.
Connect a client
Claude Code:
claude mcp add --transport http aliasify https://api.aliasify.app/mcp \
--header "Authorization: Bearer jm_your_key"
Any client that reads a JSON configuration:
{
"mcpServers": {
"aliasify": {
"type": "http",
"url": "https://api.aliasify.app/mcp",
"headers": { "Authorization": "Bearer jm_your_key" }
}
}
}
Both credentials work on the same URL.
Tools
| Tool | Scope | Description |
|---|---|---|
list_aliases | read | Your aliases with address, label and unread count |
list_emails | read | Emails, newest first, without bodies. Filters: alias, unread, starred, archived, trash, text, page |
read_email | read | One email in full (text body, capped at 20,000 characters) |
create_alias | write | Create an alias (label, custom prefix). Plan quotas apply |
delete_alias | write | Delete an alias and all its emails. Cannot be undone |
set_email_state | write | Mark read/unread, star, archive |
delete_email | write | Move to the trash (recoverable for 30 days) |
restore_email | write | Bring an email back from the trash |
reply_to_email | send | Reply to the sender, from the receiving alias |
send_email | send | Send a new message from one of your aliases |
reply_to_email and send_email really send mail and follow your plan's sending rules. Permanent deletion of a single email is not exposed: delete_email always goes through the trash.
Safety
Incoming emails are written by third parties. Every email returned by the server is marked as untrusted data, but your client and model still decide what to do with it: keep tool-call confirmation on for the write tools if you let an assistant read mail from unknown senders.