mcpField
C
chatport

chatport

本地服务
github.com/CloudCorpRecords通信协作01 周前更新

关于 chatport

chatport 是面向命令行用户和 MCP 客户端的 GoWA WhatsApp 消息客户端,可通过自行托管的 GoWA 服务发送文本、联系人、链接和位置。

主要功能

  1. 01发送纯文本消息
  2. 02发送联系人名片
  3. 03发送带可选说明的链接
  4. 04发送位置图钉
  5. 05命令行与 stdio MCP 服务

适用场景

  1. 01通过 GoWA 服务发送消息
  2. 02在 WhatsApp 分享联系人名片
  3. 03发送附带说明的链接
  4. 04以位置图钉分享坐标

MCP 相关

其 stdio MCP 服务提供发送文本、联系人名片、链接和位置的工具,并将请求转发到 WHATSAPP_API_URL 配置的 GoWA 对应接口。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-chatport": {
"command": "npx",
"args": [
"-y",
"@reneturcios/chatport"
]
}
}
}
启动命令npx -y @reneturcios/chatport

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/chatport0.1.0
ocighcr.io/cloudcorprecords/chatport:0.1.0

工具

4

收录的工具列表 · 更新于 1 周前

参数类型必填说明
phonestring是收件人电话号码。
messagestring是要发送的文本消息。

详细介绍

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_textphone、message(均必填)一条纯文本消息。
whatsapp_send_contactphone、contact_name、contact_phone(均必填)指定联系人的名片。
whatsapp_send_linkphone、link(必填),caption(可选)一个链接;如果提供了说明,则一并发送。
whatsapp_send_locationphone、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。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。