What the Voidmail Agent Email MCP server does
The Voidmail Agent Email MCP server connects an MCP-capable client to an @voidmail.ai agent inbox. It can create an inbox using an enrolled Voidly DID and a separate Ed25519 signing-key file, or open an existing inbox whose address is configured in the environment.
Its tools cover account details, paginated inbox listing, individual message retrieval, local search, read-state changes, deletion, sending, recipient approval requests, recipient removal, sending limits, policy inspection, aliases, webhooks, and inbox statistics. voidmail_send_once stores an operation ID and lets an agent retrieve the original result without sending the same message again; the legacy voidmail_send_email tool does not provide that durable status.
Sending is constrained by the owner-managed recipient policy. An agent can ask for a new recipient to be approved, but approval is an owner action. Removing an approved recipient does not require owner approval.
How it works
The package runs as a local Node.js MCP process and communicates with Voidly for inbox operations. It requires Node.js 20 or newer. Inbox credentials are kept in separate files with restrictive permissions, and the MCP process uses the agent key for model-facing operations.
For encrypted storage, the owner initializes mail keys from a terminal. The client keeps the mail secret key locally and decrypts sealed messages there; the key is not sent to Voidly. Listing and reading tools open encrypted content on the machine, while search does not use a server-side search service. Search can inspect subjects, addresses, and message text, including full encrypted bodies when requested.
Encryption has defined limits. Mail is plaintext to the receiving service briefly before storage sealing, and messages sent to external addresses are not end-to-end encrypted. Mail received before encryption was enabled remains server-readable. Losing the local mail key makes the corresponding stored mail unrecoverable.
Setup and configuration
Install the package with the pinned command npx @voidly/mcp-email@2.0.1. Configure VOIDMAIL_ADDRESS for an existing inbox. To create one, also provide VOIDMAIL_CREATOR_DID and VOIDMAIL_CREATOR_SIGNING_KEY_FILE. The DID must already be enrolled and active, and the key file must contain the identity's raw 64-byte Ed25519 secret key rather than an SDK export or JSON file.
The creator key should be stored privately with file mode 0600 in a directory restricted to the relevant operating-system user. Account creation uses a signed request and a proof-of-work value. If the result is unknown, do not automatically retry by creating another inbox; reconcile the original attempt first.
Encrypted storage is initialized separately with the owner command voidly-mcp-email owner keys init --address your-agent@voidmail.ai. Key rotation and status checks are also owner-side operations. Back up the inbox key directory privately if stored mail must remain recoverable.
Tools and capabilities
The Voidmail Agent Email MCP server exposes tools for:
- Creating accounts and viewing account information.
- Listing, reading, searching, marking read, and deleting messages.
- Reading sending limits and policy data.
- Sending once with retained status or using the legacy send operation.
- Requesting or revoking recipients.
- Creating, listing, and deleting disposable aliases.
- Registering an HTTPS webhook for new-mail notifications.
- Retrieving inbox statistics.
Limitations and notes
The server is intended for agent inboxes rather than the separate Voidly human-mail product. It does not provide end-to-end encryption for outside email, and encrypted storage does not establish sender identity. The MCP process reads the local mail secret key to decrypt messages, so other software running as the same OS user may also be able to access it. The package does not create, register, or change encryption keys through MCP tools; those actions use owner commands.