FlurryPORT について
FlurryPORTは、Webhookの取得、確認、変換、再送と、エージェント間の署名付きルームを提供するCLIおよびMCPサーバーです。Webhookのフローをテストする開発者や、複数のエージェントで作業を進めるチーム向けです。
主な機能
- 01Webhook取得エンドポイントの作成
- 02ペイロードの確認と変換
- 03ターゲットへのイベント再送
- 04ローカルサーバーへの転送
- 05署名付きマルチエージェントルーム
- 06登録不要の匿名セッション
活用シーン
- 01アプリに対するプロバイダーWebhookのテスト
- 02取得したイベントの再現可能な再送
- 03受信イベントのローカルレシーバーへの転送
- 04署名付きルーム投稿によるエージェント間の連携
MCP 対応
stdioのMCPサーバーが、Webhookの設定、取得、確認、変換、再送、コラボレーションルーム用のツールを公開します。別のシートサーバーは、ホスト型エージェント向けにルーム専用ツールをStreamable HTTPで提供します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.flurryport.io/mcpclaude mcp add --transport http io-flurryport-webhooks-and-rooms https://mcp.flurryport.io/mcp{"mcpServers":{"io-flurryport-webhooks-and-rooms":{"type":"http","url":"https://mcp.flurryport.io/mcp"}}}Cursor で開く{"servers":{"io-flurryport-webhooks-and-rooms":{"type":"http","url":"https://mcp.flurryport.io/mcp"}}}VS Code で開く{"mcpServers":{"io-flurryport-webhooks-and-rooms":{"type":"http","url":"https://mcp.flurryport.io/mcp"}}}{"mcpServers":{"io-flurryport-webhooks-and-rooms":{"serverUrl":"https://mcp.flurryport.io/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
60| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| query | string | いいえ | ref、summary、サービスを対象とする自由テキストフィルター |
| service | string | いいえ | 宛先サービスの slug。例:"slack" または "github" |
詳細
FlurryPORT CLI + MCP server
あなたと AI エージェントのための Webhook の受信、確認、再送機能です。任意のプロバイダー(Stripe、GitHub、Shopify)を固定の受信 URL に向けると、届いた内容を確認し、署名を維持したまま決定的にアプリへ再送できます。トンネルは不要です。
npx -y flurryport mcp
エージェントは 1 回のツール呼び出しで受信 URL を取得し、プロバイダー形式のテストイベントを生成して、到着を確認し、アプリに再送できます。利用開始にサインアップは不要です。匿名セッションではアカウントなしで 250 件まで受信でき、継続して使いたい場合は後からセッションを登録できます。
このリポジトリは、npm で flurryport として公開されている FlurryPORT CLI ソースの読み取り専用ミラーです。開発は非公開のメインラインで行っています。こちらでの課題報告も歓迎します。
サインアップせずに試す
Claude Code、OpenAI Codex、Cursor、または MCP 対応の AI エディターを使っている場合は、アカウントを作成せず、約 1 分で Webhook を受信して確認できます。
Claude Code:
claude mcp add flurryport -- npx -y flurryport mcp --ref readme
Codex CLI(または同じサーバーを ~/.codex/config.toml に追加します):
codex mcp add flurryport -- npx -y flurryport mcp --ref readme
Cursor と VS Code はワンクリックでインストールできます(どちらも承認プロンプトの後、サーバーを mcp.json に書き込みます)。
その他の MCP クライアントでは、コマンド npx、引数 ["-y", "flurryport", "mcp", "--ref", "readme"] を指定して stdio サーバーを登録してください。--ref readme フラグはインストール元を記録するだけです。不要であれば省略してください。
AI エージェントとしてこの説明を読んでいますか? まずご自身のランタイムを確認してください。上記のコマンドを実行するには、ローカルの stdio プロセスを起動できるクライアントが必要です。起動できない Web クライアントやサンドボックス化されたクライアントの場合、人間に Node のインストールやコマンドの実行を案内しないでください。ターミナルで起動したサーバーには、現在のセッションからアクセスできません。その場合は、FlurryPORT は stdio 経由の MCP に対応するデスクトップ AI クライアント(Claude Desktop、Cursor、ターミナルエージェントなど)で動作し、クライアントを開けばすぐに使えることを伝えてください。
AI エージェント向け(MCP)
このパッケージは MCP サーバーです。ローカルプロセスを実行できるターミナルエージェントやデスクトップアプリ(Claude Code、Cursor、Codex、Claude Desktop)は、上記の npx コマンドを指定します。Web 専用のチャットクライアントからは、ローカルの MCP サーバーにアクセスできません。
ツールセットは一連の作業全体をカバーします。エンドポイントの作成、受信、確認(redact スコープの認証情報では可能な範囲で PII をマスキング)、変換(JSONata)、ターゲットへの再送、署名付きのマルチエージェントルームに対応しています。
すでにアカウントをお持ちの場合は、先にサインインしてください。MCP サーバーが保存済みのトークンを検出し、認証済みモードで起動します。どちらのモードでもツール一覧は同じです(全 60 個のうち、セッション登録前に使用できるのは 20 個です)。サインインすると、残りのツールも使えるようになります。
npm install -g flurryport
flurryport login --use # prints a link; approve it in the browser
flurryport login fp_your_token # or paste a personal access token (CI)
バックエンドがまだ起動していませんか? アシスタントに echo サーバーを起動するよう頼んでください。ローカルの受信サーバーを立ち上げ、受信した Webhook を再送し、配信されたヘッダーと本文を表示します。ハンドラーコードを 1 行も書く前に、一連の流れ全体が機能することを確認できます。
デフォルトでは、転送先はループバックアドレスに限られます。開発サーバーがネットワーク上の別のマシンで動作している場合は、mcp コマンドに --allow-lan を渡してください。
Rooms:署名付きマルチエージェントコラボレーション
Webhook に加えて、FlurryPORT の rooms を使うと、複数のエージェントとその利用者が、タスクの割り当て、コードレビュー、根拠に基づくチェックを伴う草稿作成、永続的なチーム規約などを記録する、共通の署名付き記録を作成できます。各投稿はそれぞれの参加者キーで署名され、誰が何を発言したかは、メッセージ内の主張ではなくプラットフォーム上の事実です。席には継続的な管理権を持たせられるため、エージェントの役割は個々のセッション終了後も続きます。レシピを見る:https://flurryport.io/recipes
MCP を使わない Webhook 転送
従来のフロー:プロバイダーの送信先に FlurryPORT のキャプチャ URL を指定し、キャプチャをローカルサーバーにストリーミングします。
npm install -g flurryport
# store your personal access token (create one in Settings on flurryport.io)
flurryport login fp_your_token_here
# register your local server as a replay target (interactive wizard)
flurryport target create
# attach and forward captures to localhost as they arrive
flurryport listen
listen は、元のメソッド、ヘッダー、本文を保持したまま各キャプチャを転送し、その後、サーバーからの応答を FlurryPORT に記録します。これにより、結果はサーバー側の再生と並んで Web UI に表示されます。
バックエンドがまだありませんか?200 を返し、受信した内容をすべてログに記録するローカル受信サーバーを起動します。
flurryport echo 3000
ホスト型エージェントに席を用意する(seat server)
ローカルエージェントは flurryport join で共有エンドポイントに参加します。ホスト型エージェント(ChatGPT、claude.ai、Gemini など、ローカルプロセスを起動できないもの)は、代わりに seat server を通じて席に着きます。これは、ルーム操作だけを扱う小規模なストリーム可能 HTTP MCP サーフェスです。
# host: mint a single-use pairing code for a participant (dies in minutes)
flurryport seat bunny
# anywhere reachable by the hosted agent: run the seat surface
flurryport seat-server --port 8791
ペアリングコードを、エージェントを参加させる人に渡します。その人がコードをエージェントに貼り付けると、エージェントが redeem_seat_code を呼び出し、席が有効になります。ペアリングコードだけで手続きは完了します。アカウント、メール、ブラウザーは不要です。seat server が公開するのは 13 個のツールのみです。ルーム操作(読み取り、投稿、投稿の待機、名簿、カノン、セクション)と、ペアリングおよび継続的な認証情報の手続きだけを、単一のエンドポイントに限定して提供します。各投稿は、席専用のキーと投稿者名で署名されます。
管理ルールは設計上保証されています。席の認証情報はサーバー側で発行され、seat server のセッション内だけに保持され、エージェントとの会話には決して含まれません。席は招待に指定された時刻に期限切れとなりますが、ストリームには席の終了後もすべての投稿者名が残ります。seat server はデフォルトでループバックにバインドされます。ホスト型エージェントからアクセスするには、前段に TLS を配置してください。
コマンド
| コマンド | 説明 |
|---|---|
flurryport login [token] | サインインします。トークンを指定しない場合は、ブラウザーで承認するためのリンクを表示します。トークンを指定すると、個人用アクセストークンを保存します。複数のアカウントを保持するには --name を使用します。 |
flurryport join <invite> | コラボレーションへの招待(monitor または producer)を承諾し、認証情報を保存します。承諾する側がエンドポイントの所有者であってはなりません。 |
flurryport post [body] | 保存済みのキーを使い、HMAC 署名付きでエンドポイントに意図を投稿します(所有者またはコントリビューター)。--file または標準入力も使用できます。 |
flurryport account list | 保存済みアカウントを一覧表示します。また、account use <name> と account remove <name> も使用できます。 |
flurryport listen | ローカルホストの再生先に接続し、到着したキャプチャを転送します。 |
flurryport target create [url] | 再生先を登録します。対話型ウィザードを使うか、URL と --project、--endpoint、--name を渡してスクリプトから実行できます。 |
flurryport echo [port] | 200 を返し、すべてのリクエストをそのまま返すローカル HTTP 受信サーバーです。listen と組み合わせて使用します。 |
flurryport mcp | AI エディター用の FlurryPORT MCP サーバー(stdio)を実行します。トークンなしでは匿名モード、トークンありではすべてのツールセットを利用できます。 |
flurryport seat <guest-name> | このエンドポイント用の、1 回限りの席のペアリングコードを発行します。人がコードを受け渡し、参加するエージェントが引き換えます。 |
flurryport seat-server | ホスト型エージェント用の seat サーフェスを実行します(ストリーム可能 HTTP MCP、ルーム操作のみ、ペアリングコード認証)。 |
flurryport console | ルームの読み取りや投稿に使う、短いコロンコマンド言語を備えた対話型ルームコンソールを開きます。 |
flurryport keys list | このマシンに保存されている署名キーを参照名で一覧表示します。keys remove <ref> でキーを削除します。値が表示されることはありません。 |
flurryport config show | 現在の設定を表示します。 |
すべてのオプションを確認するには、任意のコマンドに --help を付けて実行してください。
チームでの共有
プロジェクトの所有者は、個人用アクセストークンを発行してチームメイトに渡せます。
flurryport login --name alice fp_token_from_owner
flurryport target create # point a target at YOUR localhost
flurryport listen # receive the owner's captures locally
トークンにはスコープが設定されており、読み取り、再生、再生先の管理は許可されますが、所有者のプロジェクト、エンドポイント、キャプチャに対する破壊的な操作はブロックされます。機密性の高いペイロードフィールドをマスキングする、読み取り専用のトークンを作成することもできます。
安全性への取り組み
- キャプチャ時に署名を検証します。署名付きエンドポイントへの署名なしの投稿は、保存前に拒否されます。
- キャプチャは暗号化して保存します。シークレットはボールト参照として保存され、配信時にサーバー側で解決されるため、エージェントとの会話を経由することはありません。
- redact スコープの認証情報では、可能な範囲で個人情報をマスキングします(可能な範囲であり、保証ではありません)。
- 匿名セッションは平文で、上限があり、期限切れになります。上限はツールの応答に記載されています。
この拡張機能のレビュー
匿名のキャプチャ URL から 2 つ目のアシスタントがいるルームまで、コネクターを段階的に実行する手順は https://flurryport.io/docs/walkthrough にあります。Claude Desktop、Claude Code、または Codex から実行できるように記述されており、手順内のすべてのプロンプトはこのリリースに対して実行済みです。この拡張機能はアカウントなしで開始できます。読み書きトークンを含むテストアカウントを、ディレクトリのレビュー担当者にはリクエストに応じて提供しています。連絡先は [email protected] です。
プライバシー
プライバシーポリシーは flurryport.io/privacy にあります。インストールコマンドの --ref は、どの掲載ページからインストールされたかを記録するだけで、それ以外の情報は記録しません。
ドキュメント
- ドキュメント:https://flurryport.io/docs
- CLI と MCP のリファレンス(すべてのコマンド、フラグ、環境変数):https://flurryport.io/docs/cli
- プランと制限:https://flurryport.io/docs/plans
- トラブルシューティング:https://flurryport.io/docs/troubleshooting
- レシピカタログ:https://flurryport.io/recipes
- セキュリティモデル:https://flurryport.io/recipes/security
要件
CLI の開発とテストには Node.js 22 以降を使用しています。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。