mcpField
S
Social MCP: Multi-Agent Social Media Automation

Social MCP: Multi-Agent Social Media Automation

ローカル
github.com/kitadmin01AI・エージェント064 週間前に更新

Social MCP: Multi-Agent Social Media Automation について

Social MCPは、コンテンツの抽出、投稿文の生成、投稿、エンゲージメントを自動化するマルチエージェントシステムです。MCPサーバーとクライアントが、LLMによる生成、ブラウザー自動化、プラットフォームAPIを連携させます。

主な機能

  1. 01ソーシャルコンテンツの抽出
  2. 02LLMによる投稿文の生成
  3. 03投稿とスケジュール設定
  4. 04投稿の検索とエンゲージメント
  5. 05ブラウザーセッションの保持
  6. 06リトライとセッション復旧

活用シーン

  1. 01ソーシャル投稿の生成と公開
  2. 02ハッシュタグ検索によるコンテンツ発見
  3. 03エンゲージメントワークフローでの投稿へのいいね

MCP 対応

MCPサーバーは、コンテンツ抽出、投稿文生成、ブラウザー自動化、エンゲージメント、スケジュール設定のツールを公開します。クライアントはエージェント、LLM、ツール呼び出しを調整します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Social MCP:マルチエージェントによるソーシャルメディア自動化

概要

Social MCP は、Twitter や Bluesky などのプラットフォームで、コンテンツの抽出、ツイートの生成、投稿、エンゲージメントを自動化するマルチエージェントシステムです。コンテンツ生成には LLM、ブラウザー自動化には Playwright、プラットフォーム連携には API を使用します。

アーキテクチャ

  • MCP サーバー:次のツールエンドポイントを提供します:
    • コンテンツの抽出
    • LLM を使用したツイート生成
    • Twitter のブラウザー自動化(Playwright を使用)
    • ソーシャルメディアのエンゲージメント
    • コンテンツのスケジュール設定
  • MCP クライアント:ワークフローを統括し、エージェントを実行し、LLM を管理して、ツール呼び出しを調整します
  • 共通機能:Google Sheets 連携、再試行ロジック、シークレット管理のための共有ユーティリティ

主な機能

  1. Twitter 自動化

    • セッションの永続的な管理
    • 堅牢なログイン検出
    • 再試行ロジックを用いたツイート投稿
    • 検索とエンゲージメントの自動化
    • ハッシュタグを利用したコンテンツの発見
  2. コンテンツ生成

    • LLM によるツイート生成
    • コンテンツのスケジュール設定
    • マルチプラットフォーム対応
  3. ブラウザー自動化

    • セッションの永続的な処理
    • 堅牢なページ状態の検証
    • ナビゲーションの問題からの自動復旧
    • URL エンコードと適切なページ読み込み

ディレクトリ構成

social_mcp/
├── mcp_server/
│   ├── tools/
│   │   ├── post_tweets.py      # Twitter automation
│   │   ├── generate_tweets.py  # LLM tweet generation
│   │   └── engage_posts.py     # Social engagement
│   ├── server.py
│   └── config.py
├── mcp_client/
│   ├── agents/
│   ├── llm_orchestrator.py
│   ├── workflow_graph.py
│   └── client.py
├── common/
│   ├── google_sheets.py
│   ├── retry_utils.py
│   └── secrets.py
├── .env
├── requirements.txt
├── README.md
└── setup.sh

実装の詳細

Twitter 自動化(post_tweets.py)
  • セッション管理

    • ブラウザーセッションの永続化
    • 自動ログイン検出
    • セッションの復旧
  • 堅牢なページ処理

    • 検索語の URL エンコード
    • ページ状態の継続的な検証
    • 自動ナビゲーション復旧
    • 操作失敗時の再試行ロジック
  • エンゲージメント機能

    • ハッシュタグ検索
    • ツイートへの「いいね」の自動化
    • コンテンツの発見
ブラウザー自動化のベストプラクティス
  1. ページの読み込み

    • 初回読み込みには domcontentloaded を使用します
    • 特定の要素が表示されるまで待機します
    • ページ状態を検証します
  2. エラー処理

    • 操作失敗時の再試行ロジック
    • エラーからの適切な復旧
    • 詳細なログ記録
  3. セッション管理

    • コンテキストの永続化
    • ログイン状態の検証
    • セッションの自動復旧

セットアップ

  1. リポジトリをクローンして、ディレクトリに移動します:

    git clone <repository-url>
    cd social_mcp
    
  2. 仮想環境を作成し、依存関係をインストールします:

    python3 -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
    playwright install
    
  3. .env ファイルを次の内容で設定します:

    TWITTER_USERNAME=your_username
    TWITTER_PASSWORD=your_password
    PLAYWRIGHT_SESSION_DIR=./playwright_session
    HEADLESS=false  # Set to true for headless operation
    
  4. Google Sheets API と OAuth 認証情報を設定します

使用方法

  1. /social_mcp から MCP サーバーを起動します:

    python mcp_server/server.py
    
  2. /social_mcp から MCP クライアントを実行します:

    python mcp_client/client.py
    

新機能の追加

  • 新しいツール:mcp_server/tools/ に追加し、server.py に登録します
  • 新しいエージェント:mcp_client/agents/ に追加し、workflow_graph.py を更新します
  • ブラウザー自動化:堅牢に実装するため、post_tweets.py のパターンに従います

セキュリティ

  • すべてのシークレットを .env に保存します
  • Google Sheets と Bluesky には OAuth スコープを使用します
  • Playwright スクリプトは MFA/CAPTCHA を適切に処理します
  • セッションデータは playwright_session ディレクトリに安全に保存されます

ベストプラクティス

  1. ブラウザー自動化

    • 常にページ状態を検証します
    • 適切な URL エンコードを使用します
    • 再試行ロジックを実装します
    • ナビゲーションの問題に対処します
  2. エラー処理

    • すべての操作をログに記録します
    • 適切な復旧処理を実装します
    • 適切なタイムアウトを使用します
  3. セッション管理

    • ログイン状態を検証します
    • セッションの復旧に対応します
    • リソースを適切にクリーンアップします

** やること

  1. ツイートと bsky からコンテンツを取得し、LLM を使って返信を生成して投稿する
  2. 投稿と「いいね」に使用する 2 つ目の Twitter アカウントを組み込む
  3. 検索とエンゲージメントに「web3」、「nft」、「crypto」の検索を含める
  4. ワークフローの開始時刻と実行時間を .env からランダムに設定する
  5. Reddit への投稿を実装する

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。