Token导航 LogoToken导航TokenDH.com
Mailtrap MCP logo
开发工具stdio官方级别未说明来源级核验

Mailtrap MCP

MCP Server

mcp-mailtrap

An MCP server that provides a tool for sending transactional emails via Mailtrap

工具数

15

提示词数

0

GitHub Stars

59

资源数

0
开发工具TypeScriptClaudeClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Mailtrap

提供方

Mailtrap

最后核验

2026/5/18 04:05

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

MAILTRAP_API_TOKEN={MAILTRAP_API_TOKEN} DEFAULT_FROM_EMAIL={DEFAULT_FROM_EMAIL} npx -y mcp-mailtrap {\ \ "MAILTRAP_API_T...

详细介绍

TypeScript ![test](https://github.com/mailtrap/mailtrap-mcp/actions/workflows/main.yml) ](https://www.npmjs.com/package/mcp-mailtrap)

MCP邮件陷阱服务器

一个MCP服务器,提供通过Mailtrap在沙箱中发送和测试的工具。

先决条件

在使用此MCP服务器之前,您需要:

  1. 创建邮件陷阱帐户
  2. 验证您的域名
  3. 从获取您的API令牌 Mailtrap API设置
  4. 从获取您的帐户ID 邮件陷阱帐户管理

所需的环境变量:

  • MAILTRAP_API_TOKEN -所有功能都需要
  • MAILTRAP_ACCOUNT_ID -模板、统计数据、电子邮件日志、沙盒列表/显示和发送域都是必需的。仅适用于发送电子邮件和发送沙盒电子邮件。

可选(可以作为工具参数传递):

  • DEFAULT_FROM_EMAIL -默认发件人电子邮件 from 不提供用于发送电子邮件或发送沙盒电子邮件。允许通过以下方式切换每次通话的发件人 from 参数。
  • MAILTRAP_TEST_INBOX_ID -沙盒工具的默认测试收件箱ID test_inbox_id 未提供。允许通过以下方式在每次通话的收件箱之间切换 test_inbox_id 参数。

快速安装

![Install in Cursor](https://cursor.com/en-US/install-mcp?name=mailtrap&config=eyJlbnYiOnsiTUFJTFRSQVBfQVBJX1RPS0VOIjoieW91cl9tYWlsdHJhcF9hcGlfdG9rZW4iLCJERUZBVUxUX0ZST01fRU1BSUwiOiJ5b3VyX3NlbmRlckBleGFtcGxlLmNvbSIsIk1BSUxUUkFQX0FDQ09VTlRfSUQiOiJ5b3VyX2FjY291bnRfaWQiLCJNQUlMVFJBUF9URVNUX0lOQk9YX0lEIjoieW91cl90ZXN0X2luYm94X2lkIn0sImNvbW1hbmQiOiJucHggLXkgbWNwLW1haWx0cmFwIn0%3D)

](https://insiders.vscode.dev/redirect/mcp/install?name=mailtrap&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22mcp-mailtrap%22%5D%2C%22env%22%3A%7B%22MAILTRAP_API_TOKEN%22%3A%22%24%7Binput%3AmailtrapApiToken%7D%22%2C%22DEFAULT_FROM_EMAIL%22%3A%22%24%7Binput%3AsenderEmail%7D%22%2C%22MAILTRAP_ACCOUNT_ID%22%3A%22%24%7Binput%3AmailtrapAccountId%7D%22%2C%22MAILTRAP_TEST_INBOX_ID%22%3A%22%24%7Binput%3AmailtrapTestInboxId%7D%22%7D%7D&inputs=%5B%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22mailtrapApiToken%22%2C%22description%22%3A%22Mailtrap+API+Token%22%2C%22password%22%3Atrue%7D%2C%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22senderEmail%22%2C%22description%22%3A%22Sender+Email+Address%22%7D%2C%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22mailtrapAccountId%22%2C%22description%22%3A%22Mailtrap+Account+ID%22%7D%2C%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22mailtrapTestInboxId%22%2C%22description%22%3A%22Mailtrap+Test+Inbox+ID+%28optional%29%22%7D%5D)

Smithery CLI

铁匠铺 是适用于所有AI客户端的MCP服务器的注册表安装程序和管理器。

npx @smithery/cli install mailtrap
Smithery自动处理客户端配置,并提供交互式设置过程。这是在本地开始使用MCP服务器的最简单方法。

设置

克劳德桌面版

使用MCPB安装邮件陷阱服务器。您可以在以下位置找到这些文件 发布. 下载。MCPB文件并打开它。如果你有克劳德桌面,它会打开它并建议配置。

克劳德桌面或光标

添加以下配置:

{
  "mcpServers": {
    "mailtrap": {
      "command": "npx",
      "args": ["-y", "mcp-mailtrap"],
      "env": {
        "MAILTRAP_API_TOKEN": "your_mailtrap_api_token",
        "DEFAULT_FROM_EMAIL": "your_sender@example.com",
        "MAILTRAP_ACCOUNT_ID": "your_account_id",
        "MAILTRAP_TEST_INBOX_ID": "your_test_inbox_id"
      }
    }
  }
}

如果您正在使用 asdf 为了管理Node.js,您必须使用可执行文件的绝对路径(例如Mac)

{
  "mcpServers": {
    "mailtrap": {
      "command": "/Users//.asdf/shims/npx",
      "args": ["-y", "mcp-mailtrap"],
      "env": {
        "PATH": "/Users//.asdf/shims:/usr/bin:/bin",
        "ASDF_DIR": "/opt/homebrew/opt/asdf/libexec",
        "ASDF_DATA_DIR": "/Users//.asdf",
        "ASDF_NODEJS_VERSION": "20.6.1",
        "MAILTRAP_API_TOKEN": "your_mailtrap_api_token",
        "DEFAULT_FROM_EMAIL": "your_sender@example.com",
        "MAILTRAP_ACCOUNT_ID": "your_account_id",
        "MAILTRAP_TEST_INBOX_ID": "your_test_inbox_id"
      }
    }
  }
}

Claude桌面配置文件位置

苹果电脑: ~/Library/Application Support/Claude/claude_desktop_config.json

视窗: %APPDATA%\Claude\claude_desktop_config.json

游标配置文件位置

苹果电脑: ~/.cursor/mcp.json

视窗: %USERPROFILE%\.cursor\mcp.json

VS Code

手动更改配置

在命令选项板中运行: Preferences: Open User Settings (JSON)

然后,在设置文件中添加以下配置:

{
  "mcp": {
    "servers": {
      "mailtrap": {
        "command": "npx",
        "args": ["-y", "mcp-mailtrap"],
        "env": {
          "MAILTRAP_API_TOKEN": "your_mailtrap_api_token",
          "DEFAULT_FROM_EMAIL": "your_sender@example.com",
          "MAILTRAP_ACCOUNT_ID": "your_account_id",
          "MAILTRAP_TEST_INBOX_ID": "your_test_inbox_id"
        }
      }
    }
  }
}
\[!提示\] 更改“env”部分后,不要忘记重新启动MCP服务器。

MCP束(MCPB)

为了在支持MCP Bundles的主机中轻松安装,您可以分发 .mcpb 捆绑文件。

# Build TypeScript and pack the MCPB bundle
npm run mcpb:pack

# Inspect bundle metadata
npm run mcpb:info

# Sign the bundle for distribution (optional)
npm run mcpb:sign

这创造了 mailtrap-mcp.mcpb 使用存储库 manifest.json 并在 dist/.

用法

配置后,您可以要求代理发送电子邮件和管理模板,例如:

电子邮件发送操作:

  • “发送电子邮件至john.doe@example.com主题为“明天的会议”,并友好地提醒我们即将举行的会议。"
  • “电子邮件sarah@example.com关于项目更新,CC团队team@example.com"
  • “发送欢迎模板(uuid b81aabcd-1a1e-41cf-91b6-eca0254b3d96)tonew@example.com带变量 { name: 'Alex' }"
  • “向发送沙盒电子邮件test@example.com主题为“测试模板”,预览我们的欢迎电子邮件的外观”

电子邮件日志(调试传递):

  • “列出我最近发送的电子邮件日志”
  • “显示发送到的电子邮件的电子邮件日志user@example.com"
  • “获取ID abc-123-uuid的电子邮件日志消息,以检查传递状态”

发送统计信息:

  • “获取发送2025年1月的统计数据”
  • “显示上个月按域细分的交付率”
  • “从2025年1月1日到2025年01月31日,我的电子邮件统计数据按类别是什么?”

沙盒操作:

  • “从我的沙盒收件箱获取所有邮件”
  • “显示沙盒消息的第一页”
  • “在我的沙盒收件箱中搜索包含'test'的邮件”
  • “显示ID为5159037506的沙盒消息的详细信息”

模板操作:

  • “列出我的邮件陷阱帐户中的所有电子邮件模板”
  • “创建一个名为“欢迎电子邮件”的新电子邮件模板,主题为“欢迎来到我们的平台!”
  • “更新ID为12345的模板,将主题更改为“更新的欢迎消息””
  • “删除ID为67890的模板”

发送域名:

  • “列出我的发送域”
  • “获取ID为3938的发送域”
  • “创建一个发送域,例如.com”
  • “删除发送域3938”
  • “获取发送域3938的DNS设置说明”

可用工具

发送电子邮件

通过Mailtrap发送事务性电子邮件。支持两种互斥模式-- 展示内嵌内容 (subject + text/html)或 基于模板 (template_uuid).

参数:

  • from (可选):发件人为电子邮件字符串或 { email, name? }如果没有提供, DEFAULT_FROM_EMAIL 使用。
  • to (可选):收件人--一封电子邮件/{ email, name? } 或阵列。可选,如果 ccbcc 提供;至少一个 to / cc / bcc 必须包含收件人。
  • cc (可选):抄送收件人数组(电子邮件字符串或 { email, name? } 每个)。
  • bcc (可选):BCC收件人数组(电子邮件字符串或 { email, name? } 每个)。
  • subject (有条件):电子邮件主题行。内联发送需要;在以下情况下必须省略 template_uuid 已设置。
  • text (条件):电子邮件正文。必需(与或代替 html)用于内联发送;在以下情况下必须省略 template_uuid 已设置。
  • html (条件):电子邮件正文的HTML版本。必需(与或代替 text)用于内联发送;在以下情况下必须省略 template_uuid 已设置。
  • category (可选):用于跟踪和分析的电子邮件类别。在以下情况下必须省略 template_uuid 已设置。
  • template_uuid (可选):使用邮件陷阱电子邮件模板而不是内联内容。当设置时, subject / text / html / category 必须省略(根据Mailtrap API)。
  • template_variables (可选):替换到由引用的模板中的变量对象 template_uuid。只允许与 template_uuid.

列出电子邮件日志

列出已发送的电子邮件日志(传递历史),并可选择分页和过滤器。用于从IDE调试交付问题。

参数:

  • search_after (可选):从上一个响应的分页光标 next_page_cursor
  • sent_after (可选):ISO 8601日期/时间;仅在此时间之后发送日志
  • sent_before (可选):ISO 8601日期/时间;仅在此时间之前发送的日志
  • from_email (可选):按发件人电子邮件过滤;与...一起使用 from_operator (默认值:ci_equal)
  • to_email (可选):按收件人电子邮件过滤;与...一起使用 to_operator (默认值:ci_equal)
  • status (可选):按交付状态过滤:已交付、未交付、已排队、已选择退出;与...一起使用 status_operator (默认值:相等)
  • subject (可选):按电子邮件主题筛选;与...一起使用 subject_operator (默认值:ci_contain)。使用 subject_operator:empty/not_empty按主题的存在进行筛选。
  • sending_domain_id (可选):通过发送域ID(数字)进行过滤;与...一起使用 sending_domain_id_operator (默认值:相等)
  • sending_stream (可选):按流过滤:事务性或批量;与...一起使用 sending_stream_operator (默认值:相等)
  • events (可选):按事件类型筛选:送达、打开、点击、退回、垃圾邮件、取消订阅、软取消、拒绝、暂停;与...一起使用 events_operator (包括事件/不包括事件)
  • clicks_count / opens_count (可选):点击过滤/打开计数;与...一起使用 *_operator:相等、大于、小于
  • client_ip / sending_ip (可选):按IP过滤;与...一起使用 *_operator:相等、不相等、包含、不包含
  • email_service_provider_response (可选):按提供者响应文本筛选;与...一起使用 *_operator (ci_contain等)
  • email_service_provider (可选):按提供商筛选(精确);与...一起使用 *_operator:相等,不相等
  • recipient_mx (可选):按收件人MX筛选;与...一起使用 recipient_mx_operator (ci_contain等)
  • category (可选):按电子邮件类别筛选;与...一起使用 category_operator:相等,不相等

所有参数都是可选的。

获取电子邮件日志消息

按ID(UUID)获取单个电子邮件日志消息:可读摘要(发件人、收件人、主题、发送时间、状态、类别、流、参与、传递上下文),然后是详细的事件历史记录。可选地,与 include_content: true,您还可以在Mailtrap公开原始消息URL时加载并显示消息正文(HTML和纯文本)。

参数:

  • message_id (必填):电子邮件日志消息的UUID(来自发送响应或列表电子邮件日志)。使用 list-email-logs 查找消息ID。
  • include_content (可选):当 true,获取原始EML(如果 raw_message_url 可用)并附加解析的HTML和纯文本正文部分,类似于显示沙盒电子邮件消息。

获取发送统计数据

获取某一日期范围内的电子邮件发送统计数据(投递、退回、打开、点击、垃圾邮件率)。可选择按域、类别、电子邮件服务提供商或日期进行细分。在不离开编辑的情况下检查交货率。

参数:

  • start_date (必填):统计范围的开始日期(YYYY-MM-DD)
  • end_date (必填):统计范围的结束日期(YYYY-MM-DD)
  • breakdown (可选):如何分解统计数据: aggregated (默认), by_domain, by_category, by_email_service_provider,或 by_date
  • sending_domain_ids (可选):将结果限制为这些发送域ID(整数数组)
  • sending_streams (可选):限制为 transactionalbulk (字符串数组)
  • categories (可选):仅限于这些电子邮件类别(字符串数组)
  • email_service_providers (可选):仅限于这些提供商,例如谷歌、雅虎、Outlook(字符串数组)

创建模板

在您的Mailtrap帐户中创建新的电子邮件模板。

参数:

  • name (必填):模板名称
  • subject (必填):电子邮件主题行
  • html (或 text 必填):模板的HTML内容
  • text (或 html 必填):模板的纯文本版本
  • category (可选):模板类别(默认为“常规”)

列表模板

列出您的Mailtrap帐户中的所有电子邮件模板。

参数:

  • 无需参数

更新模板

更新现有电子邮件模板。

参数:

  • template_id (必填):要更新的模板的ID
  • name (可选):模板的新名称
  • subject (可选):新电子邮件主题行
  • html (可选):模板的新HTML内容
  • text (可选):模板的新纯文本版本
  • category (可选):模板的新类别
\[!注意\] 调用更新模板执行更新时,必须至少提供一个可更新字段(名称、主题、html、文本或类别)。

删除模板

删除现有电子邮件模板。

参数:

  • template_id (必填):要删除的模板的ID

发送沙盒电子邮件

出于开发和测试目的,向您的Mailtrap测试收件箱发送电子邮件。这非常适合在不向真实收件人发送电子邮件的情况下测试电子邮件模板。支持与相同的两种模式 send-email展示内嵌内容基于模板 (template_uuid).

参数:

  • test_inbox_id (可选):邮件陷阱测试收件箱ID。除非 MAILTRAP_TEST_INBOX_ID 已设置;通过每次通话来定位特定的收件箱。
  • from (可选):发件人为电子邮件字符串或 { email, name? }如果没有提供, DEFAULT_FROM_EMAIL 使用。
  • to (可选):收件人以逗号分隔的字符串或电子邮件字符串数组表示/ { email, name? } 物体。可选,如果 ccbcc 提供;至少一个 to / cc / bcc 必须包含收件人。
  • cc (可选):抄送收件人数组(电子邮件字符串或 { email, name? } 每个)。
  • bcc (可选):BCC收件人数组(电子邮件字符串或 { email, name? } 每个)。
  • subject (有条件):电子邮件主题行。内联发送需要;在以下情况下必须省略 template_uuid 已设置。
  • text (条件):电子邮件正文。必需(与或代替 html)用于内联发送;在以下情况下必须省略 template_uuid 已设置。
  • html (条件):电子邮件正文的HTML版本。必需(与或代替 text)用于内联发送;在以下情况下必须省略 template_uuid 已设置。
  • category (可选):用于跟踪的电子邮件类别。在以下情况下必须省略 template_uuid 已设置。
  • template_uuid (可选):使用邮件陷阱电子邮件模板而不是内联内容。当设置时, subject / text / html / category 必须省略。
  • template_variables (可选):替换到由引用的模板中的变量对象 template_uuid。只允许与 template_uuid.
\[!注意\] 对于沙盒工具,请提供 test_inbox_id 在工具调用中或设置 MAILTRAP_TEST_INBOX_ID 环境变量。您可以通过传递在每次通话的收件箱之间切换 test_inbox_id.

获取沙盒消息

从邮件陷阱测试收件箱中检索邮件列表。在测试期间,可用于检查沙盒中收到了哪些电子邮件。

参数:

  • page (可选):分页页码(最小:1)
  • last_id (可选):使用最后一个消息ID进行分页。返回指定消息ID后的消息(最小值:1)
  • search (可选):搜索查询以筛选邮件
\[!注意\] 所有参数都是可选的。如果没有提供,将返回收件箱中的第一页邮件。使用page进行传统分页,last_id进行基于光标的分页,或搜索按内容过滤消息。

显示沙盒电子邮件消息

显示来自Mailtrap测试收件箱的特定电子邮件的详细信息和内容,包括HTML和文本正文内容。

参数:

  • message_id (必填):要检索的沙盒电子邮件的ID
\[!注意\] 使用 get-sandbox-messages 首先获取消息列表及其ID,然后使用此工具查看特定消息的完整内容。

列出发送域

列出发送域及其DNS验证状态。

参数:

  • 无需参数

获取发送域

通过ID及其验证状态(包括DNS记录)获取发送域。通过设置,可选地包括DNS设置说明 include_setup_instructionstrue.

参数:

  • sending_domain_id (必填):发送域ID
  • include_setup_instructions (可选):如果 true,将DNS设置说明附加到响应中。违约: false

创建发送域

创建新的发送域。创建后,添加DNS记录以验证域(使用get发送域 include_setup_instructions: true 查看记录)。

参数:

  • domain_name (必填):域名(例如example.com)

删除发送域

删除发送域。

参数:

  • sending_domain_id (必填):发送要删除的域ID

发展

  1. 克隆存储库:
git clone https://github.com/mailtrap/mailtrap-mcp.git
cd mailtrap-mcp
  1. 安装依赖项:
npm install

使用克劳德桌面或光标进行配置

\[!提示\] 请参阅配置文件的位置 设置 部分。

添加以下配置:

{
  "mcpServers": {
    "mailtrap": {
      "command": "node",
      "args": ["/path/to/mailtrap-mcp/dist/index.js"],
      "env": {
        "MAILTRAP_API_TOKEN": "your_mailtrap_api_token",
        "DEFAULT_FROM_EMAIL": "your_sender@example.com",
        "MAILTRAP_ACCOUNT_ID": "your_account_id",
        "MAILTRAP_TEST_INBOX_ID": "your_test_inbox_id"
      }
    }
  }
}

如果您正在使用 asdf 为了管理Node.js,你应该使用可执行文件的绝对路径:

(以Mac为例)

{
  "mcpServers": {
    "mailtrap": {
      "command": "/Users//.asdf/shims/node",
      "args": ["/path/to/mailtrap-mcp/dist/index.js"],
      "env": {
        "PATH": "/Users//.asdf/shims:/usr/bin:/bin",
        "ASDF_DIR": "/opt/homebrew/opt/asdf/libexec",
        "ASDF_DATA_DIR": "/Users//.asdf",
        "ASDF_NODEJS_VERSION": "20.6.1",
        "MAILTRAP_API_TOKEN": "your_mailtrap_api_token",
        "DEFAULT_FROM_EMAIL": "your_sender@example.com",
        "MAILTRAP_ACCOUNT_ID": "your_account_id",
        "MAILTRAP_TEST_INBOX_ID": "your_test_inbox_id"
      }
    }
  }
}

VS Code

\[!提示\] 请参阅配置文件的位置 设置 部分。
{
  "mcp": {
    "servers": {
      "mailtrap": {
        "command": "node",
        "args": ["/path/to/mailtrap-mcp/dist/index.js"],
        "env": {
          "MAILTRAP_API_TOKEN": "your_mailtrap_api_token",
          "DEFAULT_FROM_EMAIL": "your_sender@example.com",
          "MAILTRAP_ACCOUNT_ID": "your_account_id",
          "MAILTRAP_TEST_INBOX_ID": "your_test_inbox_id"
        }
      }
    }
  }
}

测试

您可以使用 MCP检查员:

npm run dev

运行MCPB服务器

# Run the MCPB server directly
node dist/mcpb-server.js

# Or use the provided binary
mailtrap-mcpb-server
\[!提示\] 关于MCP Inspector的开发:
npm run dev:mcpb

错误处理

此服务器使用与MCP约定一致的结构化错误处理:

  • VALIDATION_ERROR:输入验证失败
  • CONFIGURATION_ERROR:配置缺失或无效
  • EXECUTION_ERROR:运行时执行错误
  • TIMEOUT:操作超时(默认30秒)

错误包括可操作的消息,并以结构化形式记录。

安全

  • 通过Zod模式验证输入
  • 安全处理环境变量
  • 操作超时保护(30秒)
  • 在错误输出中清除敏感细节

日志记录

具有以下级别的结构化JSON日志:信息、警告、错误、调试。

通过设置启用调试日志记录 DEBUG=true.

# Example: enable debug logging
DEBUG=true node dist/mcpb-server.js
重要提示:服务器将日志写入stderr,因此stdout仍保留用于JSON-RPC帧。这可以防止主机因交错日志而遇到JSON解析错误。

日志分析示例使用 jq:

# Filter error logs
node dist/mcpb-server.js 2>&1 | jq 'select(.level == "error")'

# Filter debug logs
node dist/mcpb-server.js 2>&1 | jq 'select(.level == "debug")'

故障排除

常见问题:

  1. 缺少API令牌:确保 MAILTRAP_API_TOKEN 已设置
  2. 沙箱不工作:提供 test_inbox_id 在工具调用或集合中 MAILTRAP_TEST_INBOX_ID 环境
  3. 超时错误:检查网络连接和Mailtrap API状态
  4. 验证错误:确保提供了所有必填字段

贡献

欢迎在上提交Bug报告和拉取请求 。该项目旨在成为一个安全、温馨的合作空间,贡献者应遵守 行为准则.

许可证

该软件包可根据以下条款作为开源软件提供 MIT许可证.

行为准则

在Mailtrap项目的代码库、问题跟踪器、聊天室和邮件列表中交互的每个人都应该遵循 行为准则.

目录标签

目录标签

开发工具TypeScriptClaudedeveloper-toolsmailtrapemail-apitransactional-emails邮件测试本地部署邮件发送沙盒环境API集成

支持客户端

ClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

mcp-mailtrap

工具数量(toolCount,工具数)

15

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP