关于 Mailmodo MCP Server
以 TypeScript 编写的 MCP 服务,可将 Claude Desktop 等 MCP 客户端连接到 Mailmodo API,并提供营销活动、联系人、列表、事件及活动操作相关的资源和工具。
主要功能
- 01读取模板、营销活动和联系人列表
- 02查询联系人详情
- 03获取营销活动报告
- 04管理联系人及列表成员
- 05发送事件并触发营销活动
适用场景
- 01按日期范围查看营销活动表现
- 02在列表中添加或移除联系人
- 03发送事件或触发邮件营销活动
MCP 相关
向 MCP 客户端(包括 Claude Desktop)提供 Mailmodo 资源和工具。可本地运行、通过 Docker 或 npx 启动,也可连接 README 列出的远程服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
12收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| string | 是 |
详细介绍
mailmodo-mcp
这是一个 TypeScript 项目,实现了一个 Message Control Protocol(MCP)服务,用于将 Mailmodo 集成到 Claude Desktop 和其他支持 MCP 的客户端中。
前置条件
- Node.js(推荐 v20 或更高版本)
- npm(随 Node.js 一同安装)
安装
通过 Smithery 安装
通过 Smithery 自动为 Claude Desktop 安装 Mailmodo 集成服务:
npx -y @smithery/cli install @mailmodo/mailmodo-mcp --client claude
手动安装
- 克隆仓库:
git clone https://github.com/mailmodo/mailmodo-mcp.git
cd mailmodo-mcp
- 安装依赖:
npm install
构建项目
要将 TypeScript 代码编译为 JavaScript,请运行:
npm run build
这会创建一个 dist 目录,其中包含编译后的 JavaScript 文件。
运行项目
构建完成后,可以使用以下命令运行项目:
node dist/index.js
也可以使用 npm 脚本:
npm start
Claude Desktop 配置
从代码本地运行
要在 Claude Desktop 中配置此项目,请将以下配置添加到 Claude Desktop 设置中:
{
"mcpServers": {
"mailmodo": {
"command": "node",
"args": [
"/path/to/your/mailmodo-mcp/dist/index.js"
]
}
}
}
从 docker 镜像运行
{
"mcpServers": {
"mailmodo": {
"command": "docker",
"args": [
"run",
"--platform",
"linux/amd64",
"-i",
"--rm",
"-e",
"MAILMODO_API_KEY",
"avneesh001/mailmodo-mcp"
],
"env": {
"MAILMODO_API_KEY": "<GET MAILMODO KEY from https://manage.mailmodo.com/app/settings/apikey and insert here>"
}
}
}
}
从 npx 运行
{
"mcpServers": {
"mailmodo": {
"command": "npx",
"args": [
"-y",
"@mailmodo/mcp"
],
"env": {
"MAILMODO_API_KEY": "<GET MAILMODO KEY from https://manage.mailmodo.com/app/settings/apikey and insert here>"
}
}
}
}
通过远程服务连接
{
"mcpServers": {
"mailmodo": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.app.mailmodo.com/mcp",
"--header",
"mmApiKey:${MAILMODO_API_KEY}"
],
"env": {
"MAILMODO_API_KEY": "<GET MAILMODO KEY from https://manage.mailmodo.com/app/settings/apikey and insert here>"
}
}
}
}
请确保调整 args 数组中的文件路径,使其与本地项目目录一致。
开发
要在开发模式下运行项目并自动重新编译:
- 将
ts-node和nodemon安装为开发依赖:
npm install --save-dev ts-node nodemon
- 在 package.json 中添加开发脚本:
{
"scripts": {
"dev": "nodemon src/index.ts",
"build": "tsc",
"start": "node dist/index.js"
}
}
- 运行开发服务:
npm run dev
项目结构
mailmodo-mcp/
├── src/ # TypeScript source files
├── dist/ # Compiled JavaScript files
├── package.json # Project dependencies and scripts
└── tsconfig.json # TypeScript configuration
工具和资源
Mailmodo MCP 服务提供了多个工具和资源,用于与 Mailmodo 的功能交互。以下是完整列表:
资源
-
Mailmodo 模板(
mailmodo://templates)- 以 JSON 格式返回所有可用电子邮件模板的列表
- MIME 类型:application/json
-
Mailmodo 活动(
mailmodo://campaigns)- 以 JSON 格式返回所有活动的列表
- MIME 类型:application/json
-
Mailmodo 联系人列表(
mailmodo://contact-lists)- 以 JSON 格式返回所有联系人列表
- MIME 类型:application/json
工具
-
用户详情
- 名称:
userDetails - 描述:获取联系人的所有详情
- 参数:
email(string):联系人的电子邮件地址
- 名称:
-
营销活动报告工具
- 名称:
MailmodoCampainReportTool - 描述:获取营销活动报告,包括打开、点击和提交次数
- 参数:
campaignId(UUID):营销活动的 IDfromDate(YYYY-MM-DD):报告的开始日期toDate(YYYY-MM-DD):报告的结束日期
- 名称:
-
当前日期时间
- 名称:
currentDateTime - 描述:获取当前日期和时间
- 参数:无
- 名称:
-
发送事件
- 名称:
sendEvent - 描述:发送包含电子邮件和事件属性的自定义事件
- 参数:
email(string):联系人的电子邮件地址event_name(string):事件名称ts(number,可选):时间戳event_properties(object,可选):其他事件属性
- 名称:
-
联系人列表管理
-
将联系人添加到列表
- 名称:
addContactToList - 描述:将单个联系人添加到列表
- 参数:
email(string):联系人的电子邮件listName(string):列表名称data(object,可选):联系人属性- 联系人元数据的多个可选字段
- 名称:
-
批量添加联系人
- 名称:
addBulkContactToList - 描述:一次操作将多个联系人添加到列表
- 参数:
listName(string):列表名称values(array):联系人对象数组
- 名称:
-
从列表中移除联系人
- 名称:
removeContactFromList - 描述:从指定列表中移除联系人
- 参数:
email(string):联系人的电子邮件listName(string):列表名称
- 名称:
-
-
联系人状态管理
-
取消订阅联系人
- 名称:
unsubscribeContact - 描述:取消联系人的订阅或抑制其联系
- 参数:
email(string):联系人的电子邮件
- 名称:
-
重新订阅联系人
- 名称:
resubscribeContact - 描述:让已取消订阅的联系人重新订阅
- 参数:
email(string):联系人的电子邮件
- 名称:
-
归档联系人
- 名称:
archiveContact - 描述:永久归档联系人
- 参数:
email(string):联系人的电子邮件
- 名称:
-
-
营销活动管理
-
发送电子邮件营销活动
- 名称:
sendEmailToCampaign - 描述:触发个性化电子邮件营销活动
- 参数:
campaignId(string):营销活动 IDemail(string):收件人的电子邮件- 用于自定义的多个可选参数
- 名称:
-
广播营销活动
- 名称:
broadcastCampaignToList - 描述:向整个联系人列表触发营销活动
- 参数:
campaignId(string):营销活动 IDlistId(string):目标列表 ID- 用于自定义营销活动的可选参数
- 名称:
-
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。