three.ws Knock について
Knock は three.ws の MCP サーバーで、エージェントが連絡可能なユーザーを探し、1 件のメッセージの料金を確認して送信し、返信を読み取れるようにします。有料メッセージは受信者へ直接決済され、本サーバーはウォレットを保持しません。
主な機能
- 01ユーザーごとの 1 通あたりの料金とチェーンの確認
- 02連絡可能なユーザーの一覧を料金の安い順に表示
- 03無料の窓口へのメッセージ即時送信
- 04有料の窓口は人による承認用に見積もりを返却
- 05送信済みメッセージの状態と返信の確認
- 06オーナー向けの受信箱の閲覧・返信・非表示・ブロック
活用シーン
- 01エージェントから研究者へ具体的な質問を送り、回答を読み取る
- 02有料メッセージの送信前に人による承認を必要とする
- 03送信済みメッセージの処理状況を追跡する
MCP 対応
本サーバーは knock_quote、knock_directory、knock_send、knock_receipt、knock_inbox、knock_act を MCP ツールとして提供します。受信箱関連のツールには THREE_WS_API_KEY が必要で、アカウント自身の窓口のみを操作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @three-ws/knock-mcpTHREE_WS_API_KEYシークレットA three.ws API key (sk_live_… / sk_test_…) or OAuth access token. Optional: needed only for knock_inbox and knock_act, which manage your own door. Quoting, browsing, knocking and reading a receipt all work without it. Treat like a password.THREE_WS_BASEBase URL of the three.ws API. Override only when self-hosting or targeting a preview deployment.THREE_WS_TIMEOUT_MSPer-request timeout in milliseconds.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
6掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| handle | string | はい | 受信者の three.ws ユーザー名。@ の有無は問いません。 |
詳細
@three-ws/knock-mcp
エージェントが実在する人に連絡できます。
Knockは、人に連絡するための有料の窓口です。three.wsの各アカウントは、three.ws/knock/<handle>で窓口を1つ公開でき、アカウント所有者は、見知らぬ人からのメッセージ1件に設定する料金を決めます。その料金を支払うと、メッセージを1件だけ送れます。メッセージは相手の受信箱に届き、相手の3Dコンパニオンがサイト上のどこにいても画面に現れて、送り主と金額を伝えながらメッセージを読み上げます。USDCは受取人に直接決済されます。
このMCP サーバーは、あらゆるエージェントのクライアント(Claude Code、Claude Desktop、Cursor、Windsurf、または独自のクライアント)に、人とつながれる場所を探し、ノックを送り、返事を読むためのツールを提供します。
このサーバーはウォレットを保持しません
無料の窓口では、何も移動しないため、knock_sendはすぐにメッセージを送信します。
有料の窓口では、knock_sendは支払いを行わず、支払いを行うこともできません。受取人、金額、トークン、チェーン、エンドポイントを返して処理を停止します。人が支出を承認し、@three-ws/knockまたは他のx402クライアントを使って、自分が管理しているウォレットから支払います。
これは意図的な設計です。環境変数にキーを持つMCP サーバーが、本人の意思によらずお金を動かせるべきではありません。
インストール
Claude Code:
claude mcp add knock -- npx -y @three-ws/knock-mcp
設定で任意のMCPクライアントを使う場合:
{
"mcpServers": {
"knock": {
"command": "npx",
"args": ["-y", "@three-ws/knock-mcp"]
}
}
}
所有者側の2つのツールも使う場合に限り、THREE_WS_API_KEYを追加してください。
{
"mcpServers": {
"knock": {
"command": "npx",
"args": ["-y", "@three-ws/knock-mcp"],
"env": { "THREE_WS_API_KEY": "sk_live_…" }
}
}
}
Node 20+。
ツール
| ツール | 認証情報 | 機能 |
|---|---|---|
knock_quote | なし | 1人にメッセージを1件送る料金、対応するチェーン、文字数制限、エンドポイントを確認します。 |
knock_directory | なし | 現在連絡可能な人を、料金の安い順に一覧表示します。 |
knock_send | なし | メッセージを1件送ります。無料の窓口には送信し、有料の窓口では人が承認するための見積もりを提示します。 |
knock_receipt | なし | 送信したノックの状況(保留中、既読、返信あり(返信内容を含む)、または却下)を確認します。 |
knock_inbox | THREE_WS_API_KEY | あなたの窓口に届いたノックと、送信者が支払った金額、および合計を表示します。 |
knock_act | THREE_WS_API_KEY | ノックへの返信、既読への変更、却下、または送信者のブロックを行います。 |
所有者向けのツールは、サーバー側でアカウントごとにアクセスが制限されています。他のアカウントを読み取ったり変更したりすることはできません。
セッションの例
あなた: three.wsでx402について質問を受け付けている人を探して、Solanaのファシリテーターが手数料支払者をどう扱うか尋ねてください。
エージェントはknock_directoryを呼び出して窓口を選び、knock_quoteを呼び出して現在の料金を取得し、次の内容を提示します。
nirholas (@nirholas) charges $0.05 USDC on solana.
Endpoint: https://three.ws/api/x402/knock?to=nirholas
The payment settles directly to the recipient.
Approve?
自分のウォレットから承認して支払います。
npx @three-ws/knock send nirholas \
"How does your Solana facilitator handle the fee payer?" \
--from "Ada (research agent)" --subject "x402 fee payer" --payer ./payer.mjs
相手のコンパニオンが画面に現れて、「Adaがあなたに連絡するために$0.05を支払いました:x402の手数料支払者」と読み上げます。相手が返信すると、エージェントは領収書URLに対してknock_receiptを使い、返信を読み上げます。窓口の所有者以外は、どちらの側にもアカウントは必要ありません。
環境変数
| 変数 | 必須 | デフォルト | 用途 |
|---|---|---|---|
THREE_WS_API_KEY | knock_inbox / knock_actでのみ必要 | なし | 管理する窓口のアカウント用APIキーまたはOAuthトークンです。別名:THREE_WS_TOKEN、THREE_WS_BEARER。 |
THREE_WS_BASE | いいえ | https://three.ws | セルフホストする場合にのみ上書きします。 |
THREE_WS_TIMEOUT_MS | いいえ | 20000 | リクエストごとのタイムアウトです。 |
実行と確認
node src/index.js # stdio
npm run inspect # MCP Inspector
npm test # the tool surface and the no-wallet rule
関連項目
- **@three-ws/knock**は、実際の支払いに使うSDKとCLIです。
- 自分の窓口を開設するには、**three.ws/knock**をご覧ください。
- プロトコルとワイヤーフォーマットについては、**Knock docs**をご覧ください。
ライセンス
Apache-2.0
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。