mcpField
B
Bluesky Social MCP

Bluesky Social MCP

ローカル
gwbischof.notion.siteソーシャルメディア1675 週間前に更新

Bluesky Social MCP について

Bluesky Social MCPは、atprotoクライアントを介してBlueskyを操作するMCPサーバーです。Blueskyの内容を読み取り管理するAIアプリ向けで、プロフィール、フィード、投稿への操作、投稿作成に対応します。

主な機能

  1. 01認証状態の確認
  2. 02プロフィール、フォロワー、フォローの取得
  3. 03タイムライン、ユーザーフィード、スレッドの表示
  4. 04いいね、リポストなどの操作
  5. 05テキスト、画像、動画の投稿

活用シーン

  1. 01Blueskyのプロフィールやフィードの確認
  2. 02投稿の作成・削除と反応の管理
  3. 03投稿スレッドやリポスト状況の確認

MCP 対応

Blueskyの操作をツールとしてMCPクライアントに提供します。atprotoクライアントを使用し、Blueskyの識別子とアプリパスワードで認証を設定します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"bluesky-social": {
"command": "uvx",
"args": [
"git+https://github.com/gwbischof/[email protected]"
],
"env": {
"BLUESKY_IDENTIFIER": "<BLUESKY_IDENTIFIER>",
"BLUESKY_APP_PASSWORD": "<BLUESKY_APP_PASSWORD>"
}
}
}
}
起動コマンドuvx 'git+https://github.com/gwbischof/[email protected]'
設定が必要な環境変数
BLUESKY_IDENTIFIER
BLUESKY_APP_PASSWORDシークレット

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypigit+https://github.com/gwbischof/[email protected]

ツール

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

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

詳細

Bluesky Social MCP

atproto クライアントを使用して、Bluesky ソーシャルネットワークとやり取りする MCP サーバーです。

:wave: この MCP の実行で問題が発生した場合は、イシューを作成してください。すぐに修正を公開できるはずです。

クイックスタート

Bluesky のアプリパスワードをこちらで取得してください:https://bsky.app/settings/app-passwords

以下を MCP 設定ファイルに追加してください(バージョンが固定されていることに注意してください)。

{
  "mcpServers": {
    "bluesky-social": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/gwbischof/[email protected]", "bluesky-social-mcp"],
      "env": {
        "BLUESKY_IDENTIFIER": "your-handle.bsky.social",
        "BLUESKY_APP_PASSWORD": "your-app-password"
      }
    }
  }
}
  • セキュリティ上の理由から、バージョンを固定しておき、バージョンを更新する際は設定を手動で変更するのが最善だと思います。

ツールのステータス

すべてのツールを実装し、テスト済みです ✅

認証とセットアップ
  • ✅ check_auth_status - 現在のセッションが認証済みか確認します
プロフィール操作
  • ✅ get_profile - ユーザーのプロフィールを取得します(クライアントメソッド:get_profile)
  • ✅ get_follows - アカウントがフォローしているユーザーを取得します(クライアントメソッド:get_follows)
  • ✅ get_followers - アカウントをフォローしているユーザーを取得します(クライアントメソッド:get_followers)
  • ✅ follow_user - ユーザーをフォローします(クライアントメソッド:follow)
  • ✅ unfollow_user - ユーザーのフォローを解除します(クライアントメソッド:unfollow)
  • ✅ mute_user - ユーザーをミュートします(クライアントメソッド:mute)
  • ✅ unmute_user - ユーザーのミュートを解除します(クライアントメソッド:unmute)
  • ✅ resolve_handle - ハンドルを DID に解決します(クライアントメソッド:resolve_handle)
フィード操作
  • ✅ get_timeline - ホームタイムラインの投稿を取得します(クライアントメソッド:get_timeline)
  • ✅ get_author_feed - 特定のユーザーの投稿を取得します(クライアントメソッド:get_author_feed)
  • ✅ get_post_thread - 会話スレッド全体を取得します(クライアントメソッド:get_post_thread)
投稿へのリアクション
  • ✅ like_post - 投稿に「いいね」します(クライアントメソッド:like)
  • ✅ unlike_post - 投稿の「いいね」を取り消します(クライアントメソッド:unlike)
  • ✅ get_likes - 投稿の「いいね」を取得します(クライアントメソッド:get_likes)
  • ✅ repost - 投稿をリポストします(クライアントメソッド:repost)
  • ✅ unrepost - リポストを取り消します(クライアントメソッド:unrepost)
  • ✅ get_reposted_by - リポストしたユーザーを取得します(クライアントメソッド:get_reposted_by)
投稿の作成と管理
  • ✅ send_post - 新しいテキスト投稿を作成します(クライアントメソッド:send_post)
  • ✅ send_image - 画像を1枚添えた投稿を送信します(クライアントメソッド:send_image)
  • ✅ send_images - 複数の画像を添えた投稿を送信します(クライアントメソッド:send_images)
  • ✅ send_video - 動画を添えた投稿を送信します(クライアントメソッド:send_video)
  • ✅ delete_post - 投稿を削除します(クライアントメソッド:delete_post)
  • ✅ get_post - 特定の投稿を取得します(クライアントメソッド:get_post)
  • ✅ get_posts - 複数の投稿を取得します(クライアントメソッド:get_posts)
リポジトリのローカルクローンから実行する
{
    "mcpServers": {
        "bluesky-social": {
            "command": "uv",
            "args": [
                "--directory",
                "/ABSOLUTE/PATH/TO/PARENT/FOLDER/bluesky-social-mcp",
                "run",
                "server.py"
            ]
            "env": {
                "BLUESKY_IDENTIFIER": "user-name.bsky.social‬",
                "BLUESKY_APP_PASSWORD": "app-password-here"
            }
        }
    }
}

開発環境のセットアップ

  1. 依存関係をインストールします:

    uv sync
    
  2. サーバーを実行します:

    uv run bluesky-social-mcp
    
MCP Inspector でデバッグする
mcp dev server.py
mcp dev server.py --with-editable .
テストを実行する
  • 実際の Bluesky サーバーに対してテストを実行します。
  • テストでは BLUESKY_IDENTIFIER と BLUESKY_APP_PASSWORD の環境変数を使用します。
uv run pytest

コメント

MCP は初めてですか?

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

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