关于 chatport
chatport 是面向命令行用户和 MCP 客户端的 GoWA WhatsApp 消息客户端,可通过自行托管的 GoWA 服务发送文本、联系人、链接和位置。
主要功能
- 01发送纯文本消息
- 02发送联系人名片
- 03发送带可选说明的链接
- 04发送位置图钉
- 05命令行与 stdio MCP 服务
适用场景
- 01通过 GoWA 服务发送消息
- 02在 WhatsApp 分享联系人名片
- 03发送附带说明的链接
- 04以位置图钉分享坐标
MCP 相关
其 stdio MCP 服务提供发送文本、联系人名片、链接和位置的工具,并将请求转发到 WHATSAPP_API_URL 配置的 GoWA 对应接口。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
4收录的工具列表 · 更新于 1 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| phone | string | 是 | 收件人电话号码。 |
| message | string | 是 | 要发送的文本消息。 |
详细介绍
chatport
chatport 通过由你自行托管的 GoWA (go-whatsapp-web-multidevice) 服务发送 WhatsApp 消息:纯文本消息、联系人名片、带可选说明的链接,以及位置图钉。一个二进制文件同时提供命令行界面和 stdio MCP 服务,两种用法都通过同一个 GoWA REST API 通信。
chatport 是客户端,不是 WhatsApp 账号。它需要一个正在运行的 GoWA 服务,并且该服务已与要用于发送消息的 WhatsApp 账号配对。通过 WHATSAPP_API_URL
环境变量指定该服务,例如 http://localhost:3000。该变量没有默认值:如果未设置,每次发送都会在发出任何请求前失败并显示清晰的错误,因此配置错误的客户端不会悄悄连接到错误的主机。
安装
npx @reneturcios/chatport send-text 15551234567 "hello"
或者运行容器镜像:
docker run -i -e WHATSAPP_API_URL=http://host.docker.internal:3000 ghcr.io/cloudcorprecords/chatport
容器默认启动 MCP 服务(见下文)。传入 CLI 参数即可将其用作 CLI。
CLI
export WHATSAPP_API_URL=http://localhost:3000
chatport send-text 15551234567 "hello there"
chatport send-contact 15551234567 "Ada Lovelace" 15559876543
chatport send-link 15551234567 https://example.test/page "worth a look"
chatport send-location 15551234567 37.7749 -122.4194
chatport --version
发送成功时会打印 GoWA 服务的 JSON 响应。退出码:成功时为 0,发送失败时为 1(包括上游 API 错误或未设置 WHATSAPP_API_URL),用法错误时为 2。
电话号码会完全按给定内容传递;请使用 GoWA 服务要求的格式(通常为国际格式,仅含数字)。纬度必须介于 -90 和 90 之间,经度必须介于 -180 和 180 之间;超出范围的值会在发送请求前被拒绝。
MCP 服务
一个二进制文件提供两种用法。mcp 子命令会启动 stdio MCP
服务:
npx -y @reneturcios/chatport mcp
MCP 客户端配置:
{
"mcpServers": {
"chatport": {
"command": "npx",
"args": ["-y", "@reneturcios/chatport", "mcp"],
"env": { "WHATSAPP_API_URL": "http://localhost:3000" }
}
}
}
工具
| 工具 | 输入 | 发送内容 |
|---|---|---|
whatsapp_send_text | phone、message(均必填) | 一条纯文本消息。 |
whatsapp_send_contact | phone、contact_name、contact_phone(均必填) | 指定联系人的名片。 |
whatsapp_send_link | phone、link(必填),caption(可选) | 一个链接;如果提供了说明,则一并发送。 |
whatsapp_send_location | phone、latitude、longitude(均必填) | 指定坐标的位置图钉。 |
每个工具都会将参数作为 JSON 请求体,发送到 WHATSAPP_API_URL 下对应的 GoWA 发送端点
(/send/message、/send/contact、/send/link、
/send/location)。
开发
npm install
npm run build # tsc -> dist/
npm test # node test runner over test/*.test.ts, no network (fake fetch fixtures)
npm run dev # run the CLI from source via tsx
许可证
MIT — 参见 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。