关于 JetAPI
JetAPI 是 JetAPI 的官方 MCP 服务,让 AI Agent 通过多种消息渠道发送文本、文件和群发消息。它也提供投递状态、账户信息与 Webhook 管理工具。
主要功能
- 01通过多种渠道发送文本消息
- 02发送文件和批量消息
- 03安排发送时间并设置渠道级联
- 04查询投递状态和账户信息
- 05创建和管理 Webhook
适用场景
- 01向客户发送订单或预约通知
- 02向多个号码群发消息
- 03检查消息是否送达并管理接收事件
MCP 相关
该 MCP 服务向客户端提供 JetAPI 账户、消息发送、投递查询和 Webhook 管理工具,并通过 API token 认证。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
14收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
JetAPI MCP 服务
JetAPI 官方 MCP 服务,可通过 Claude、Cursor 和 VS Code 等 AI Agent 发送 WhatsApp、Telegram、SMS 和 MAX 消息、文件及批量邮件。
工具
| 工具 | 说明 |
|---|---|
get_account | 完整账户信息:余额、发送路由、发送方名称、订阅信息、WhatsApp/Telegram 会话状态(令牌已屏蔽) |
get_balance | 余额、客户 ID、发送路由渠道和已注册的发送方名称 |
get_utm_tags | 列出用于跟踪发送情况的 UTM 标签 |
send_message | 通过 WhatsApp、Telegram(tdlib)、Telegram Bot、SMS、VK/OK 或 MAX 发送文本,支持级联发送、定时发送、优先级、回复目标和回调 |
send_bulk | 一次向多个电话号码发送同一条消息 |
get_delivery_status | 查询发送状态和详情,并以通俗易懂的语言说明状态 |
delete_delivery | 从所有收件人设备中删除已发送的 WhatsApp/Telegram 消息 |
get_phone_info | 查询电话号码的国家、运营商和标准化格式 |
send_file | 从本地路径、URL 或 base64 发送文档、图像、音频或视频(最大 100 MB) |
create_webhook | 为事件订阅 URL:收到消息、WhatsApp 状态、登录/注销 |
get_webhook | 查看一个 webhook 的详情 |
list_webhooks | 列出所有已注册的 webhook |
delete_webhook | 删除 webhook |
update_webhook | 更改 webhook 的 URL 和/或事件类型 |
获取令牌
在 jetapi.io 注册,并从控制面板复制 API 令牌。若要通过 WhatsApp 或 Telegram 发送消息,请先在控制面板中连接相应的即时通讯工具。
安装
Claude Desktop — 一键安装
- 从最新版本下载
jetapi-mcp-server.mcpb。 - 双击文件(或将其拖入 Claude Desktop → Settings → Extensions)。
- 根据提示粘贴 JetAPI 令牌。Claude Desktop 会安全地保存该令牌。
Claude Desktop — 配置文件
需要 Node.js 18.17 或更高版本。打开 Settings → Developer → Edit Config(claude_desktop_config.json)并添加:
{
"mcpServers": {
"jetapi": {
"command": "npx",
"args": ["-y", "jetapi-mcp-server"],
"env": { "JETAPI_TOKEN": "your_token_here" }
}
}
}
重启 Claude Desktop。
Claude Code
claude mcp add jetapi -- npx -y jetapi-mcp-server
该服务需要 JETAPI_TOKEN,因此添加时请传入该令牌:
claude mcp add jetapi --env JETAPI_TOKEN=your_token_here -- npx -y jetapi-mcp-server
Cursor
添加到 ~/.cursor/mcp.json(或项目中的 .cursor/mcp.json):
{
"mcpServers": {
"jetapi": {
"command": "npx",
"args": ["-y", "jetapi-mcp-server"],
"env": { "JETAPI_TOKEN": "your_token_here" }
}
}
}
VS Code
添加到 .vscode/mcp.json — VS Code 会提示输入令牌,并确保令牌不会写入文件:
{
"inputs": [
{ "type": "promptString", "id": "jetapi_token", "description": "JetAPI token", "password": true }
],
"servers": {
"jetapi": {
"type": "stdio",
"command": "npx",
"args": ["-y", "jetapi-mcp-server"],
"env": { "JETAPI_TOKEN": "${input:jetapi_token}" }
}
}
}
MCP Registry
该服务已列入官方 MCP Registry,名称为 io.github.jetapi/jetapi-mcp-server,因此能够读取该注册表的客户端和目录可以直接安装它。
其他 MCP 客户端
任何支持 stdio 服务的客户端:
{
"command": "npx",
"args": ["-y", "jetapi-mcp-server"],
"env": { "JETAPI_TOKEN": "your_token_here" }
}
配置
| 变量 | 必需 | 默认值 | 说明 |
|---|---|---|---|
JETAPI_TOKEN | 是 | — | JetAPI 控制面板中的 Bearer 令牌 |
JETAPI_BASE_URL | 否 | https://api.jetapi.io | API 主机 |
JETAPI_DEBUG | 否 | 0 | 设为 1 时,将每个请求记录到 stderr |
渠道
dispatch_routing 是按顺序排列的渠道列表。JetAPI 会依次尝试这些渠道,只有通过前一个渠道发送失败时才会切换到下一个渠道。如果不设置此项,则使用 JetAPI 控制面板中的默认路由。
| 值 | 渠道 | 接收方 |
|---|---|---|
whatsapp | phone 或 whatsapp_lid | |
tdlib | 个人 Telegram 账号 | phone、username 或 tdlib_user_id(负 ID = 群聊) |
telegram | Telegram Bot | phone |
sms | SMS | phone |
notify | VK / OK 通知 | phone |
max | MAX messenger | phone |
使用示例
用日常语言向 Claude 提问:
| 说法 | 工具 |
|---|---|
| “显示我的 JetAPI 账号 — WhatsApp 已连接吗?” | get_account |
| “JetAPI 还剩多少钱?” | get_balance |
| “我有哪些 UTM 标签?” | get_utm_tags |
| “给 +7 999 123-45-67 发送一条 WhatsApp 消息:您的订单已发货。” | send_message |
| “在 Telegram 上告诉 @john_doe,会议改到下午 3 点。” | send_message(tdlib) |
| “先尝试 WhatsApp,再尝试 SMS:您的验证码是 4821。” | send_message(级联) |
| “明天 09:00 UTC 提醒 79991234567 预约事宜。” | send_message(定时) |
| “向 79991234567、79997654321 和 995598464533 发送‘促销今天开始!’” | send_bulk |
| “消息 94396942 已送达吗?” | get_delivery_status |
| “删除消息 94396942。” | delete_delivery |
| “+995 598 464 533 属于哪家运营商?” | get_phone_info |
| “在 WhatsApp 上向 79991234567 发送 ~/Documents/invoice.pdf。” | send_file |
| “将收到的 WhatsApp 消息发送到 https://example.com/hook。” | create_webhook |
| “显示 Webhook 57。” | get_webhook |
| “列出我的 Webhook。” | list_webhooks |
| “删除 Webhook 57。” | delete_webhook |
| “将 Webhook 57 指向 https://example.com/new-hook。” | update_webhook |
行为
- 参数会作为 URL 查询参数发送,符合 JetAPI API 的要求;
send_file会以multipart/form-data格式上传文件。 - 不兼容的参数(例如未使用
tdlib渠道时提供 Telegramusername,或scheduled_at设置为过去的时间)会在发送请求前被拒绝。 - HTTP 429 最多重试 3 次,采用指数退避,并遵循
Retry-After。 - 5xx 响应会在 1 秒后重试 2 次 — 但发送消息或创建 Webhook 的请求除外(
send_message、send_bulk、send_file、create_webhook),以免重复发送。 - 请求在 30 秒后超时。
- 错误会以易读的工具错误形式返回,例如
Invalid JetAPI token. Check your JETAPI_TOKEN.或Validation error: text: the text cannot be empty。 - 所有日志都输出到 stderr;stdout 专用于 MCP 协议。
开发
git clone https://github.com/jetapi/jetapi-mcp-server.git
cd jetapi-mcp-server
npm install
cp .env.example .env # put your token in .env
npm run build
npm start
| 脚本 | 功能 |
|---|---|
npm run dev | 直接运行 TypeScript 源码 |
npm run inspector | 打开包含所有工具的 MCP Inspector |
npm run check | 检查 package.json / server.json / manifest.json 中的版本,并确认服务公开了全部 14 个工具 |
npm run build:mcpb | 将 Claude Desktop 扩展构建到 build/jetapi-mcp-server.mcpb |
发布
- 更新
package.json、server.json(两个version字段)和manifest.json中的版本,并在CHANGELOG.md中添加条目。 - 合并到
main,然后推送标签:git tag v1.2.3 && git push origin v1.2.3。 - Release 工作流 会发布到 npm(使用来源证明的可信发布),创建包含
.mcpb捆绑包的 GitHub 发布,并更新 MCP Registry。
隐私政策
此扩展在本地运行,不收集分析数据或遥测数据,并且只会向 JetAPI API 发送数据,以执行你请求的操作。你的 API 令牌由 MCP 客户端存储(Claude Desktop 会将其保存在安全存储中)。
- JetAPI MCP 服务隐私政策 — 扩展会处理、存储和共享哪些内容
- JETAPI LLC 隐私政策 — JetAPI 服务如何处理个人数据
有疑问?请联系:[email protected]
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。