recapfy について
recapfyは、YouTube動画について質問したり、全文の字幕を取得したりできる、MCPクライアント向けのローカルサーバーです。各呼び出しはx402を通じてSolana上のUSDCで支払い、料金はツールや出力トークン数に応じて決まります。
主な機能
- 01YouTube動画の内容への質問
- 02タイムスタンプ付き全文字幕の取得
- 03タイトルとチャンネル情報の付加
- 04USDCによる呼び出しごとの自動決済
活用シーン
- 01動画内の情報を確認
- 02後続処理向けに字幕を取得
MCP 対応
Recapfyの有料エンドポイントをMCPツールとしてクライアントに公開します。サーバーはローカルで動作し、利用者のSolanaウォレットを使ってx402経由で各呼び出しをUSDC決済します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y recapfy-mcpSVM_PRIVATE_KEYシークレットBase58-encoded Solana secret key. Pays per call (dynamic USDC price). Keep it funded; use a dedicated low-balance wallet.RECAPFY_API_BASE_URLOverride the API base URL (defaults to https://api.recapfy.ai). For local dev only.RECAPFY_ALLOW_INSECURE_TLSSet to 1 to accept self-signed TLS (localhost dev over https only).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Recapfy MCP
Recapfy の有料エンドポイントをツールとして公開する MCP サーバーです。YouTube 動画について何でも質問したり、動画の全字幕を取得したりできます。Claude Desktop、Cursor、Cline などの MCP 対応エージェントから直接利用できます。 ローカルで実行されます。ホスト型の Recapfy MCP エンドポイントはないため、自分で起動してください。
各呼び出しの料金は Solana 上の USDC で支払います(価格は動的で、maxOutputTokens に応じて変わります)。x402
プロトコルによって自動的に決済されます。ご自身のウォレットを用意してください。支払うのは呼び出した分だけです。
📦 npm: recapfy-mcp
前提条件
- Node.js ≥ 20。
- メインネット上で USDC を保有する Solana ウォレット。 手数料用の SOL は不要です — API のファシリテーターがネットワーク手数料を負担します。
- そのウォレットの base58 エンコードされた秘密鍵(Phantom の
「秘密鍵をエクスポート」で取得できる 64 バイト形式、または
solana-keygenで生成したもの)。
⚠️ この鍵は実際の支払いに署名します。残高の少ない専用ウォレットを使用し、絶対に共有せず、コミットしないでください。
インストール
リポジトリのクローンやビルドは不要です。これを MCP クライアントの設定(Claude Desktop の場合は
claude_desktop_config.json)に追加し、クライアントを再起動してください。
{
"mcpServers": {
"recapfy": {
"command": "npx",
"args": ["-y", "recapfy-mcp@latest"],
"env": {
"SVM_PRIVATE_KEY": "<your base58 Solana secret key>"
}
}
}
}
必ず
recapfy-mcp@latestを使用してください。npx -y recapfy-mcpのみを指定すると、npx はキャッシュ内の内容を再利用し、レジストリを再確認しません。そのため、古いビルドのまま(新しいツールを見逃したまま)になり続ける可能性があります。@latestタグを指定すると、起動のたびに npx が最新の公開バージョンを取得します。
更新
新しいバージョン(新しいツールやエンドポイントを含む)は、独立した 2 つのキャッシュがあるため、次の 2 つの条件が満たされたときに自動的に反映されます。
- npx パッケージキャッシュ — 上記のように
recapfy-mcp@latestを使用すると、npx は起動のたびに最新の公開バージョンを取得します。@latestがない場合、npx はキャッシュされたコピーを使用するため、古いビルドのままになります。 - MCP クライアントのツールリスト — クライアントはサーバーのツールリストを セッションごとに 1 回だけ読み込みます。新しいツールを表示するには、MCP クライアント(Claude Desktop、Cursor、Cline、…)を完全に再起動してサーバーを再起動し、ツールリストを読み込み直す必要があります。
そのため、リリース後は @latest を指定したまま、クライアントを再起動してください。新しいツールが表示されない場合は、キャッシュを使わずに取得してください。
npx clear-npx-cache # or: rm -rf "$(npm config get cache)/_npx"
その後、クライアントをもう一度再起動してください。
設定
| 変数 | 必須 | 説明 |
|---|---|---|
SVM_PRIVATE_KEY | はい | base58 エンコードされた Solana の秘密鍵です。呼び出しごとに支払います。残高を維持してください。 |
RECAPFY_API_BASE_URL | いいえ | API のベース URL を上書きします(デフォルトは https://api.recapfy.ai)。ローカル開発用です。 |
RECAPFY_ALLOW_INSECURE_TLS | いいえ | 1 に設定すると、自己署名 TLS を許可します(https を使ったローカル開発の場合のみ)。 |
ツール:ask
| 入力 | 型 | 必須 | 説明 |
|---|---|---|---|
videoUrl | string | はい | YouTube 動画の絶対 http(s) URL です。 |
prompt | string | はい | 動画について質問する内容です。 |
maxOutputTokens | integer | いいえ | 回答の最大トークン数(デフォルトは 1024)。動的な価格に影響します。 |
エージェントの回答をテキストで返します。回答が返る前に支払いが決済されます。
呼び出しごとの料金は動的です。API は maxOutputTokens に基づいて 402
チャレンジで USDC の金額を提示し、ウォレットは提示された金額を支払います。そのため、
maxOutputTokens は適切な値にしてください。
ツール:get_transcript
| 入力 | 型 | 必須 | 説明 |
|---|---|---|---|
videoUrl | string | はい | YouTube 動画の絶対 http(s) URL です。 |
動画の完全なトランスクリプトをタイムスタンプ付きのセグメントとして返し、title、
channelName、durationSeconds も返します。テキストコンテンツは読みやすいタイムスタンプ付きの
トランスクリプトです。構造化コンテンツには、生の transcript 配列(各
セグメントは { timestampInSeconds, text })が含まれます。1 回の呼び出しあたりの料金は定額の USDC で、
402 チャレンジで提示され、自動的に支払われます。
支払いの仕組み
公式の Coinbase x402 v2 クライアントパッケージ(@x402/fetch、
@x402/svm、@x402/core)と、署名用の @solana/kit を基盤としています。
- このツールは
${RECAPFY_API_BASE_URL}配下の対応するエンドポイント (/api/v1/agents/askまたは/api/v1/agents/get-transcript)に POST します。 - API は
PAYMENT-REQUIREDヘッダー内の要件とともに402を返します (exactSVM スキーム、USDC、動的な金額、ネットワーク料金を負担するファシリテーターのfeePayer)。 - ラップされた fetch はウォレットを使用して、ガス代不要の SPL トークン送金に署名し、
PAYMENT-SIGNATUREヘッダーを付けて再試行します。 - API が検証と決済を行い、回答と
PAYMENT-RESPONSE決済ヘッダーを返します。
動作確認
MCP Inspector を使って、支出なしでツールを確認できます(ツールを実際に呼び出した場合にのみ支払いに署名するため、閲覧だけならどのキーでも問題ありません)。
SVM_PRIVATE_KEY=<key> npx @modelcontextprotocol/inspector npx -y recapfy-mcp@latest
表示された URL を開き、Tools → ask / get_transcript を選択します。資金が入ったウォレットでツールを呼び出すと、実際の有料呼び出しが行われます。Solana エクスプローラーで支出を確認してください。
トラブルシューティング
| 症状 | 原因/対処法 |
|---|---|
Missing required environment variable ... | SVM_PRIVATE_KEY が設定されていません。 |
SVM_PRIVATE_KEY is not valid base58 | 64 バイトの秘密鍵を base58 で指定する必要があります。 |
400 ... maxOutputTokens must be greater than 0 | 正の値の maxOutputTokens を渡してください(ツールのデフォルトは 1024 です)。 |
400 ... prompt | prompt は必須で、空でない値を指定する必要があります。 |
| 更新後に新しいツール/エンドポイントが見つからない | recapfy-mcp@latest を固定し、クライアントを再起動してから、npx キャッシュをクリアしてください(更新を参照)。 |
| 402 ループ/"Failed to create payment payload" | ウォレットにメインネット上の USDC がないか、ネットワークが正しくありません。資金を入れてください。 |
| https 経由のローカル API で TLS エラー | RECAPFY_ALLOW_INSECURE_TLS=1 を設定してください(localhost での開発時のみ)。 |
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。