跳到主要内容

从第一封邮件开始。

创建邮箱,选择接入方式,再把来信、回复和后续触达接起来。这里是上手指南,完整字段和接口约束请查阅 API 参考。

打开 API 参考

先选择你的入口。

Mailly 支持三种主要使用方式:在 AI 客户端里连接、在应用中调用、或在工作台里托管 Agent。它们使用同一套邮箱和会话数据。

创建账户与第一个邮箱

  1. 创建账户,进入工作台的收件箱,新建可用的 @mailly.site 地址。
  2. 这个地址用于收件,也可作为你的发件地址。向它发送一封测试邮件,确认会话出现在收件箱。
  3. 要使用自己的域名,到域名页添加并验证归属;按页面给出的 DNS 记录分别配置发件和收件。
发件 DNS 与收件 MX 是两件事

发件需要完成 SES DNS 验证,收件需要将 MX 指向 Mailly。已有邮箱服务的根域名不能直接覆盖 MX;可使用专门的子域名。以域名页显示的实际记录为准。

打开域名设置

先检查参数,再发第一封邮件

从工作台「接入」页获取 API Key,在你的服务端保存为 MAILLY_API_KEY。将示例中的发件地址和收件人替换为你自己的地址。dryRun 只检查参数,不发送、不扣 Credits。

HTTP · dry run
curl https://api.mailly.site/send-email \
  -H "Authorization: Bearer $MAILLY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "fromEmail": "your-inbox@mailly.site",
    "to": "you@example.com",
    "subject": "Hello from my agent",
    "text": "Your first email is ready.",
    "dryRun": true
  }'

准备发送时,先核对可用 Credits 或套餐额度,再移除 dryRun。发送记录在发件箱中查看;请求被接受不代表最终送达。不要自动重试结果未知的直接发件请求,先核对发件箱。

在 AI 客户端连接 Remote MCP

在支持远程 MCP(Streamable HTTP)和 OAuth 的客户端中添加以下端点。按客户端流程登录 Mailly,再确认授权范围。不同客户端的配置语法和内嵌界面支持可能不同。

Remote MCP endpoint
https://api.mailly.site/mcp
mail:read
读取邮箱、会话和邮件资源。
mail:draft
保存、修改、放弃草稿,管理已读状态。
mail:send
在审核界面明确批准当前草稿并发送。
workspace:manage
准备 Campaign / Workflow 配置;发布与发送仍需相应权限和确认。

可以先让助手列出最近会话,再读取其中一条并准备回复。草稿应展示最终正文,经过你的批准才发送。托管 Agent 与 MCP 宿主 Agent 是不同入口。

在终端安装 CLI 与 Skill

需要 Node.js 22.19+ 和 pnpm。CLI 当前从源码构建,没有可用的 npm 发布包。

Terminal · install CLI
git clone https://github.com/fatwang2/mailly.git
cd mailly
pnpm install
pnpm --filter @mailly/cli build
(cd apps/cli && npm link)
mailly login

完成浏览器授权后,读取会话:

Terminal · read mail
mailly whoami --json
mailly inbox threads list --json
mailly inbox threads show <thread-id> --json

Claude Code 用户可安装 Skill,让助手获得命令与处理规则。Skill 依赖已经安装并授权的本地 CLI。

Terminal · add skill
mkdir -p ~/.claude/skills/mailly
curl -fsSL \
  https://raw.githubusercontent.com/fatwang2/mailly/main/skills/mailly/SKILL.md \
  -o ~/.claude/skills/mailly/SKILL.md

让来信与投递事件进入程序

在工作台 Webhooks 页面配置公网 HTTPS 端点。收件支持 Workspace 默认端点与按地址独立订阅;投递 Webhook 可以选择需要的事件。

  • email.received — 读取事件中的邮件 ID 与 thread_id,再通过接口获取正文或完整会话。
  • 接收端验证 Mailly-Signature 签名,并按事件 ID 去重;签名密钥创建或轮换后只显示一次。
  • 失败通知会重试;投递事件也可以在工作台查看并重放。不要用“请求成功”替代最终送达状态。
CLI · incoming webhook
mailly inbox webhook set \
  --url https://your-service.example.com/mailly \
  --body-format markdown \
  --strip-quotes --json

上面的命令会修改 Webhook 配置。请换成你拥有的真实 HTTPS 端点;测试时使用独立地址。

接入现有 SMTP 邮件库

将 SMTP 主机指向 smtp.mailly.site,使用账户邮箱和 API Key 鉴权。发件人必须是已配置的邮箱或验证通过的域名地址。

SMTP transport
host: smtp.mailly.site
port: 465 (TLS) / 587 (STARTTLS)
username: <your-account-email>
password: <your-mailly-api-key>

465 使用 TLS,587 使用 STARTTLS。SMTP 负责发件;来信通过收件箱、Webhook、API、CLI 或 MCP 处理。

配置 Mailly 托管 Agent

  1. 在 Agent 页面创建档案,绑定收件地址,选择分析或起草模式。
  2. 写入身份、语气和业务边界,需要特定流程时添加你自己的 Skills。
  3. 来信后检查总结、分析记录与草稿,在原会话中继续讨论。
  4. 编辑最终草稿并明确批准发送。已发邮件也可作为后续跟进的锚点。

托管 Agent 当前不会自动批准或发送自己的草稿。模型计费与托管额度的正式开放状态,见价格页。

打开 Agent 设置

连接联系人、模板与自动化

Campaign 用于向人群批量触达;Workflow 用于按事件、发送和等待步骤持续跟进。资源定义通过 CLI / API 配置,工作台用于查看详情、测试与状态控制。

CLI · inspect email resources
mailly contacts list --json
mailly audiences list --json
mailly templates list --json
mailly workflows list --json
mailly campaigns list --json

非必要邮件发送前需要配置 Marketing Identity,并保留自动附加的退订入口。正式批量发送先预览名单和内容,复用同一个 Campaign key,避免重复投递。

遇到问题?

查看 API 返回的错误和工作台中的实际状态。公开反馈时,请先移除 API Key、邮箱正文和其他私人数据。

联系支持