Sends email through the Mailtrap Email API.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add mailtrap --env MAILTRAP_API_TOKEN='<MAILTRAP_API_TOKEN>' --env DEFAULT_FROM_EMAIL='<DEFAULT_FROM_EMAIL>' --env MAILTRAP_ACCOUNT_ID='<MAILTRAP_ACCOUNT_ID>' --env ASDF_DATA_DIR='<ASDF_DATA_DIR>' --env ASDF_DIR='<ASDF_DIR>' --env ASDF_NODEJS_VERSION='<ASDF_NODEJS_VERSION>' --env MAILTRAP_TEST_INBOX_ID='<MAILTRAP_TEST_INBOX_ID>' --env PATH='<PATH>' -- npx -y mcp-mailtrap~/.codex/config.toml
[mcp_servers.mailtrap]
command = "npx"
args = ["-y", "mcp-mailtrap"]
env = { MAILTRAP_API_TOKEN = "<MAILTRAP_API_TOKEN>", DEFAULT_FROM_EMAIL = "<DEFAULT_FROM_EMAIL>", MAILTRAP_ACCOUNT_ID = "<MAILTRAP_ACCOUNT_ID>", ASDF_DATA_DIR = "<ASDF_DATA_DIR>", ASDF_DIR = "<ASDF_DIR>", ASDF_NODEJS_VERSION = "<ASDF_NODEJS_VERSION>", MAILTRAP_TEST_INBOX_ID = "<MAILTRAP_TEST_INBOX_ID>", PATH = "<PATH>" }
# codex mcp add mailtrap --env MAILTRAP_API_TOKEN='<MAILTRAP_API_TOKEN>' --env DEFAULT_FROM_EMAIL='<DEFAULT_FROM_EMAIL>' --env MAILTRAP_ACCOUNT_ID='<MAILTRAP_ACCOUNT_ID>' --env ASDF_DATA_DIR='<ASDF_DATA_DIR>' --env ASDF_DIR='<ASDF_DIR>' --env ASDF_NODEJS_VERSION='<ASDF_NODEJS_VERSION>' --env MAILTRAP_TEST_INBOX_ID='<MAILTRAP_TEST_INBOX_ID>' --env PATH='<PATH>' -- npx -y mcp-mailtrap~/.cursor/mcp.json
{
"mcpServers": {
"mailtrap": {
"command": "npx",
"args": [
"-y",
"mcp-mailtrap"
],
"env": {
"MAILTRAP_API_TOKEN": "<MAILTRAP_API_TOKEN>",
"DEFAULT_FROM_EMAIL": "<DEFAULT_FROM_EMAIL>",
"MAILTRAP_ACCOUNT_ID": "<MAILTRAP_ACCOUNT_ID>",
"ASDF_DATA_DIR": "<ASDF_DATA_DIR>",
"ASDF_DIR": "<ASDF_DIR>",
"ASDF_NODEJS_VERSION": "<ASDF_NODEJS_VERSION>",
"MAILTRAP_TEST_INBOX_ID": "<MAILTRAP_TEST_INBOX_ID>",
"PATH": "<PATH>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"mailtrap": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-mailtrap"
],
"env": {
"MAILTRAP_API_TOKEN": "<MAILTRAP_API_TOKEN>",
"DEFAULT_FROM_EMAIL": "<DEFAULT_FROM_EMAIL>",
"MAILTRAP_ACCOUNT_ID": "<MAILTRAP_ACCOUNT_ID>",
"ASDF_DATA_DIR": "<ASDF_DATA_DIR>",
"ASDF_DIR": "<ASDF_DIR>",
"ASDF_NODEJS_VERSION": "<ASDF_NODEJS_VERSION>",
"MAILTRAP_TEST_INBOX_ID": "<MAILTRAP_TEST_INBOX_ID>",
"PATH": "<PATH>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"mailtrap": {
"command": "npx",
"args": [
"-y",
"mcp-mailtrap"
],
"env": {
"MAILTRAP_API_TOKEN": "<MAILTRAP_API_TOKEN>",
"DEFAULT_FROM_EMAIL": "<DEFAULT_FROM_EMAIL>",
"MAILTRAP_ACCOUNT_ID": "<MAILTRAP_ACCOUNT_ID>",
"ASDF_DATA_DIR": "<ASDF_DATA_DIR>",
"ASDF_DIR": "<ASDF_DIR>",
"ASDF_NODEJS_VERSION": "<ASDF_NODEJS_VERSION>",
"MAILTRAP_TEST_INBOX_ID": "<MAILTRAP_TEST_INBOX_ID>",
"PATH": "<PATH>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"mailtrap": {
"command": "npx",
"args": [
"-y",
"mcp-mailtrap"
],
"env": {
"MAILTRAP_API_TOKEN": "<MAILTRAP_API_TOKEN>",
"DEFAULT_FROM_EMAIL": "<DEFAULT_FROM_EMAIL>",
"MAILTRAP_ACCOUNT_ID": "<MAILTRAP_ACCOUNT_ID>",
"ASDF_DATA_DIR": "<ASDF_DATA_DIR>",
"ASDF_DIR": "<ASDF_DIR>",
"ASDF_NODEJS_VERSION": "<ASDF_NODEJS_VERSION>",
"MAILTRAP_TEST_INBOX_ID": "<MAILTRAP_TEST_INBOX_ID>",
"PATH": "<PATH>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"mailtrap": {
"command": "npx",
"args": [
"-y",
"mcp-mailtrap"
],
"env": {
"MAILTRAP_API_TOKEN": "<MAILTRAP_API_TOKEN>",
"DEFAULT_FROM_EMAIL": "<DEFAULT_FROM_EMAIL>",
"MAILTRAP_ACCOUNT_ID": "<MAILTRAP_ACCOUNT_ID>",
"ASDF_DATA_DIR": "<ASDF_DATA_DIR>",
"ASDF_DIR": "<ASDF_DIR>",
"ASDF_NODEJS_VERSION": "<ASDF_NODEJS_VERSION>",
"MAILTRAP_TEST_INBOX_ID": "<MAILTRAP_TEST_INBOX_ID>",
"PATH": "<PATH>"
}
}
}
}Environment variables
MAILTRAP_API_TOKENDEFAULT_FROM_EMAILMAILTRAP_ACCOUNT_IDASDF_DATA_DIRASDF_DIRASDF_NODEJS_VERSIONMAILTRAP_TEST_INBOX_IDPATH
Replace the placeholders with your own credentials and keep them out of version control.