使用说明
mailmodo mcp
这是一个TypeScript项目,它实现了一个消息控制协议(MCP)服务器,用于Mailmodo与Claude Desktop和其他支持MCP的客户端的集成。
先决条件
- Node.js(建议使用v20或更高版本)
- npm(附带Node.js)
安装
通过Smithery安装
通过以下方式自动安装克劳德桌面版Mailmodo Integration Server 史密瑟里:
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桌面配置
本地代码运行
要使用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类型:应用程序/json
-
Mailmodo活动 (
mailmodo://campaigns)- 以JSON格式返回所有活动的列表
- MIME类型:应用程序/json
-
Mailmodo联系人列表 (
mailmodo://contact-lists)- 以JSON格式返回所有联系人列表
- MIME类型:应用程序/json
工具
-
用户详细信息
- 姓名:
userDetails - 描述:获取联系人的所有详细信息
- 参数:
email(string):联系人的电子邮件地址
- 姓名:
-
活动报告工具
- 姓名:
MailmodoCampainReportTool - 描述:获取活动报告,包括打开次数、点击次数和提交次数
- 参数:
campaignId(UUID):活动的IDfromDate(YYYY-MM-DD):报告的开始日期toDate(YYYY-MM-DD):报告的结束日期
- 姓名:
-
当前日期时间
- 姓名:
currentDateTime - 描述:获取当前日期和时间
- 参数:无
- 姓名:
-
发送事件
- 姓名:
sendEvent - 描述:使用电子邮件和事件属性发送自定义事件
- 参数:
email(string):联系人的电子邮件地址event_name(string):事件名称ts(数字,可选):时间戳event_properties(对象,可选):其他事件属性
- 姓名:
-
联系人列表管理
-
将联系人添加到列表
- 姓名:
addContactToList - 描述:将单个联系人添加到列表中
- 参数:
email(string):联系人的电子邮件listName(string):列表名称data(对象,可选):联系人属性- 联系人元数据的各种可选字段
- 姓名:
-
批量添加联系人
- 姓名:
addBulkContactToList - 说明:在一次操作中将多个联系人添加到列表中
- 参数:
listName(string):列表名称values(array):接触对象数组
- 姓名:
-
从列表中删除联系人
- 姓名:
removeContactFromList - 描述:从特定列表中删除联系人
- 参数:
email(string):联系人的电子邮件listName(string):列表名称
- 姓名:
-
-
联系人状态管理
-
取消订阅联系人
- 姓名:
unsubscribeContact - 描述:取消订阅或隐藏联系人
- 参数:
email(string):联系人的电子邮件
- 姓名:
-
重新订阅联系人
- 姓名:
resubscribeContact - 描述:重新订阅以前未订阅的联系人
- 参数:
email(string):联系人的电子邮件
- 姓名:
-
存档联系人
- 姓名:
archiveContact - 描述:永久存档联系人
- 参数:
email(string):联系人的电子邮件
- 姓名:
-
-
活动管理
-
发送电子邮件活动
- 姓名:
sendEmailToCampaign - 描述:触发具有个性化的电子邮件活动
- 参数:
campaignId(字符串):活动IDemail(string):收件人的电子邮件- 可定制的各种可选参数
- 姓名:
-
广播活动
- 姓名:
broadcastCampaignToList - 描述:触发整个联系人列表的活动
- 参数:
campaignId(字符串):活动IDlistId(string):目标列表ID- 活动定制的可选参数
- 姓名:
-
