Farcaster Mcp について
Farcaster MCP Server は、MCP クライアントから Farcaster ユーザーの cast を取得し、新しい cast を投稿できます。投稿には Bearer token が必要ですが、読み取りには不要です。
主な機能
- 01FID による cast の取得
- 02ユーザー名による cast の取得
- 03任意の URL 埋め込み付き cast の投稿
活用シーン
- 01Farcaster ユーザーの最近の投稿を確認
- 02MCP クライアントから cast を投稿
MCP 対応
ユーザーの cast 取得と投稿のツールを MCP クライアントに提供し、stdio で通信します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Farcaster MCP サーバー
Farcaster とやり取りするための Model Context Protocol(MCP)サーバーです。ネットワークからキャストを取得したり、新しいキャストを投稿したりできます。
機能
- FID によるキャストの取得:Farcaster ユーザーの FID を使って、そのユーザーのキャストを取得します
- ユーザー名によるキャストの取得:Farcaster ユーザーのユーザー名を使って、そのユーザーのキャストを取得します
- キャストの投稿:Farcaster に新しいキャストを作成して投稿します(認証が必要です)
環境変数
キャストの投稿に必要
FARCASTER_BEARER_TOKEN:Farcaster API の Bearer トークン- 投稿機能を使う場合にのみ必要です
- このトークンがなくても、サーバーは読み取り専用の操作に利用できます
- このトークンは Farcaster Client API から取得できます
例
export FARCASTER_BEARER_TOKEN="your_bearer_token_here"
または、.env ファイルを作成します。
FARCASTER_BEARER_TOKEN=your_bearer_token_here
利用可能なツール
get-user-casts
FID を指定して、特定の Farcaster ユーザーのキャストを取得します。
パラメーター:
fid(number):Farcaster ユーザー ID(FID)limit(number、任意):返すキャストの最大数(デフォルト:10)
get-username-casts
特定の Farcaster ユーザー名のキャストを取得します。
パラメーター:
username(string):Farcaster ユーザー名limit(number、任意):返すキャストの最大数(デフォルト:10)
post-cast
Farcaster に新しいキャストを投稿します。
パラメーター:
cast(string):投稿するキャストのテキスト内容embeds(string[]、任意):キャストに埋め込む URL の任意の配列
注意: FARCASTER_BEARER_TOKEN 環境変数を設定する必要があります。
インストール
- リポジトリをクローンします
- 依存関係をインストールします:
npm install - プロジェクトをビルドします:
npm run build - 環境変数を設定します(投稿機能を使う場合)
使い方
サーバーの実行
npm start
サーバーが起動し、stdio で MCP 接続を待ち受けます。
MCP クライアントとの連携
このサーバーは Model Context Protocol の仕様に準拠しており、MCP 対応クライアントであればどれでも使用できます。
使用する API エンドポイント
このサーバーは Farcaster Client API とやり取りします。
- ベース URL:
https://client.farcaster.xyz - ユーザー検索:
/v2/user-by-username - キャストの取得:
/v2/casts - キャストの投稿:
/v2/casts
エラー処理
- デバッグ用の詳細なエラーメッセージを提供します
- レート制限と API エラーを適切に処理します
- 環境変数が不足している場合は明確に報告します
セキュリティ
- Bearer トークンは環境変数を通じて安全に取り扱います
- 機密情報を記録または公開しません
- API 呼び出しには HTTPS を使用します
コントリビューション
このプロジェクトへのコントリビューションでは、DRY、SOLID、KISS の原則に従ってください。
ライセンス
[ライセンス情報をここに追加してください]
Smithery の設定
このリポジトリには、Smithery に必要な設定ファイルが含まれています。
smithery.yaml:Smithery デプロイ用の YAML 設定smithery.json:Smithery の機能用 JSON 設定Dockerfile:Smithery デプロイ用のコンテナー設定
API の詳細
この実装では、データの取得に Farcaster Hubble API を使用します。
開発
# Run in development mode
npm run dev
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。