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. 01查询 Bluesky 用户资料和动态
  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 时遇到任何问题,请提交 issue。我应该可以很快推出修复。

快速开始

在此获取 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 - 将 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 - 发布带有单张图片的帖子(客户端方法: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

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。