chatport について
chatportは、CLI利用者やMCPクライアント向けのGoWA経由のWhatsAppメッセージングクライアントです。自分でホストするGoWAサービスを通じて、テキスト、連絡先、リンク、位置情報を送信できます。
主な機能
- 01テキストメッセージの送信
- 02連絡先カードの送信
- 03任意のキャプション付きリンク送信
- 04位置ピンの送信
- 05CLIとstdio MCPサーバー
活用シーン
- 01GoWAサービス経由でのメッセージ送信
- 02WhatsAppでの連絡先カード共有
- 03キャプション付きリンクの送信
- 04位置ピンでの座標共有
MCP 対応
stdio MCPサーバーは、テキスト、連絡先カード、リンク、位置情報を送るツールを公開します。リクエストはWHATSAPP_API_URLで指定されたGoWAの対応エンドポイントに転送されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
4掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| phone | string | はい | 受信者の電話番号。 |
| message | string | はい | 送信するテキストメッセージ。 |
詳細
chatport
chatport は、自分でホストする GoWA (go-whatsapp-web-multidevice)サービスを通じて、WhatsApp のメッセージを送信します。プレーンテキストメッセージ、連絡先カード、任意のキャプションを付けたリンク、位置情報ピンに対応しています。1 つのバイナリでコマンドラインインターフェースと stdio MCP サーバーを提供し、どちらも同じ GoWA REST API と通信します。
chatport はクライアントであり、WhatsApp アカウントではありません。送信元にする WhatsApp アカウントとペアリングされた、稼働中の GoWA サービスが必要です。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、送信失敗時(上流 API エラーまたは WHATSAPP_API_URL の未設定を含む)は 1、使用方法のエラー時は 2 です。
電話番号は指定されたとおりに渡されます。GoWA サービスが求める形式(通常は数字のみの国際形式)を使用してください。緯度は -90 から 90、経度は -180 から 180 の範囲内である必要があります。範囲外の場合は、リクエストを送信する前に拒否されます。
MCP サーバー
1 つのバイナリで両方のインターフェースを提供します。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)に POST します。
開発
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 サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。