Recall Data Omnifeeds について
Recall Data Omnifeedsは、Twitter、Substack、CoinGeckoのデータを統一インターフェースで扱うMCPサーバーです。これらの情報を検索、取得、分析するAIモデルやエージェント向けで、Twitterの一部操作にも対応します。
主な機能
- 01Twitterのプロフィール、投稿、トレンド取得
- 02Twitter検索と投稿操作
- 03Substackの出版物、記事、コメント取得
- 04CoinGeckoの価格、コントラクト、トークン検索
- 05トレンドトークンの確認
活用シーン
- 01Twitterの投稿やトレンドの検索
- 02Substackの出版物やコメントの取得
- 03トークン価格とコントラクトチェーンの確認
- 04Twitterでの投稿やリアクション
MCP 対応
Twitter、Substack、CoinGeckoのツールを統合MCPサーバー経由で提供し、MCP対応クライアントから利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Recall Data Omnifeeds
Twitter、Substack、CoinGeckoなど、さまざまなデータフィードへのアクセスを提供するModel Context Protocol(MCP)サーバーです。このサーバーにより、AIモデルは統一されたインターフェースを通じて複数のソースのデータを操作・分析できます。
機能
-
Twitter連携
- ユーザープロフィールとツイートを取得
- ツイートとプロフィールを検索
- トレンドトピックにアクセス
- 書き込みの完全なアクセス(ツイート、いいね、リツイート、フォロー)
- ダイレクトメッセージに対応
- Grokチャット連携
-
Substack連携
- パブリケーション情報を取得
- 最近の投稿を取得
- 投稿のコメントにアクセス
- 投稿を検索
- カスタムドメインとサブドメインの両方に対応
-
CoinGecko連携
- トークンの現在価格を取得
- コントラクトアドレスとチェーンを取得
- トークンを検索
- トレンドのトークンを取得
- 無料APIアクセスとPro APIアクセスの両方に対応
Claudeとの連携
-
サーバーをインストールしてビルドします:
npm install npm run build -
Claudeで、Settings -> Developer -> Add MCP endpointに移動します
-
次の設定を追加します:
{ "mcpServers": { "recall-data-omnifeeds": { "command": "node", "args": ["path to omnifeeds build they just created"], "env": { "PORT": "3008", "TWITTER_USERNAME": "xx", "TWITTER_PASSWORD": "xxx", "TWITTER_EMAIL": "xxx", "COINGECKO_API_KEY": "xxx" (optional) } } } -
Claudeを再起動します
-
連携を確認します:
- プロンプト入力欄の右下にあるハンマーアイコンの横に数字が表示されていることを確認します
- 次のように質問して連携をテストします:
最近このリストで話題になった面白いコインはありますか? https://x.com/i/lists/1879866762147303588?
インストール
-
リポジトリをクローンします:
git clone https://github.com/yourusername/recall-data-omnifeeds.git cd recall-data-omnifeeds -
依存関係をインストールします:
npm install -
API認証情報を記載した
.envファイルを作成します:# Twitter credentials (if needed) TWITTER_USERNAME=your_twitter_username TWITTER_PASSWORD=your_twitter_password TWITTER_EMAIL=your_twitter_email # CoinGecko credentials (optional) COINGECKO_API_KEY=your_api_key # Optional: enables Pro API features -
プロジェクトをビルドします:
npm run build -
サーバーを起動します:
npm start
使用方法
このサーバーはModel Context Protocol(MCP)を実装しており、MCP互換のクライアントであればどれでも使用できます。呼び出し例を以下に示します。
Twitterの例
// Get a user's profile
const result = await server.invoke("twitter-get-profile", {
username: "example_user"
});
// Get recent tweets
const result = await server.invoke("twitter-get-tweets", {
username: "example_user",
count: 10
});
// Search tweets
const result = await server.invoke("twitter-search-tweets", {
query: "example search",
count: 20
});
Substackの例
// Get publication info
const result = await server.invoke("substack-get-publication-info", {
substackId: "example.substack.com"
});
// Get recent posts
const result = await server.invoke("substack-get-recent-posts", {
substackId: "example.substack.com",
limit: 10
});
// Search posts
const result = await server.invoke("substack-search-posts", {
substackId: "example.substack.com",
searchTerm: "example search",
limit: 10
});
CoinGeckoの例
// Get token price
const result = await server.invoke("coingecko-get-price", {
tokenId: "bitcoin",
currency: "usd"
});
// Get contract addresses
const result = await server.invoke("coingecko-get-contracts", {
tokenId: "usd-coin"
});
// Search tokens
const result = await server.invoke("coingecko-search", {
query: "ethereum",
limit: 5
});
// Get trending tokens
const result = await server.invoke("coingecko-trending", {
limit: 5
});
APIリファレンス
Twitterツール
| ツール名 | 説明 | パラメーター |
|---|---|---|
twitter-get-profile | ユーザーのプロフィール情報を取得 | username(必須) |
twitter-get-tweets | ユーザーの最近のツイートを取得 | username(必須)、count(省略可、デフォルト:10) |
twitter-search-tweets | ツイートを検索 | query(必須)、count(省略可、デフォルト:20) |
twitter-get-trends | トレンドトピックを取得 | なし |
twitter-send-tweet | ツイートを送信 | text(必須) |
twitter-like-tweet | ツイートにいいねする | tweetId(必須) |
twitter-retweet | ツイートをリツイート | tweetId(必須) |
twitter-follow-user | ユーザーをフォロー | username(必須) |
Substackツール
| ツール名 | 説明 | パラメーター |
|---|---|---|
substack-get-publication-info | パブリケーション情報を取得 | substackId(必須) |
substack-get-recent-posts | 最近の投稿を取得 | substackId(必須)、limit(省略可、デフォルト:10) |
substack-search-posts | 投稿を検索 | substackId(必須)、searchTerm(必須)、limit(省略可、デフォルト:10) |
substack-get-comments | 投稿のコメントを取得 | substackId(必須)、postId(必須) |
CoinGeckoツール
| ツール名 | 説明 | パラメーター |
|---|---|---|
coingecko-get-features | 利用可能なCoinGecko API機能を取得 | なし |
coingecko-get-price | トークンの現在価格を取得 | tokenId(必須)、currency(省略可、デフォルト:"usd") |
coingecko-get-contracts | トークンのコントラクトアドレスとチェーンを取得 | tokenId(必須) |
coingecko-search | クエリでトークンを検索 | query(必須)、limit(省略可、デフォルト:10) |
coingecko-trending | トレンドのトークンを取得 | limit(省略可、デフォルト:10) |
開発
プロジェクト構成
recall-data-omnifeeds/
├── src/
│ ├── index.ts # Main server entry point
│ ├── twitter-client.ts # Twitter API client
│ ├── substack-client.ts # Substack API client
│ ├── coingecko-client.ts # CoinGecko API client
│ └── tools/ # MCP tool implementations
├── dist/ # Compiled JavaScript files
├── package.json # Project configuration
└── tsconfig.json # TypeScript configuration
ビルド
npm run build
テストの実行
npm test
ライセンス
ISC
貢献
- リポジトリをフォークします
- フィーチャーブランチを作成します(
git checkout -b feature/amazing-feature) - 変更をコミットします(
git commit -m 'Add some amazing feature') - ブランチにプッシュします(
git push origin feature/amazing-feature) - プルリクエストを作成します
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。