使用说明
项目简介
Bluesky MCP Server 是一个基于 Model Context Protocol (MCP) 构建的后端服务,专为 Bluesky 社交网络设计。它通过 AT Protocol 协议,为 AI 应用提供结构化的上下文信息和功能,从而实现 Bluesky 社交网络的智能化特性。该服务旨在简化 AI 模型与 Bluesky 生态系统的集成,使开发者能够轻松利用 AI 能力,无需直接与大型语言模型或其他复杂 AI 系统交互。
主要功能点
- Feed 分析 (Feed Analysis): 分析 Bluesky 用户的信息流 (feed),支持情感分析,并提供帖子长度、字数等指标。可以根据话题标签 (hashtag) 检索全网帖子。
- 帖子辅助 (Post Assist): 根据用户指定的心情 (mood) 和主题 (topic),生成多样化且引人入胜的 Bluesky 帖子内容建议。
- 社区管理 (Community Management): 跟踪用户活动,监控用户最近的帖子,帮助进行社区管理和用户行为分析。
- 安全性: 实施多项安全措施,包括输入验证、TLS 加密、防止 XSS 和注入攻击等,保障服务安全可靠。
- 高可用性: 具备内置的冗余特性,提高服务的稳定性和可用性。
安装步骤
- 安装 Go 环境: 确保你的开发环境已安装 Go 1.21 或更高版本。
- 克隆仓库: 使用 'git clone https://github.com/littleironwaltz/bluesky-mcp.git' 命令克隆仓库到本地。
- 进入目录: 使用 'cd bluesky-mcp' 命令进入项目目录。
- 下载依赖: 运行 'go mod download' 命令下载项目依赖。
- 构建项目: 运行 'make build' 命令编译项目。
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令和参数,以便建立连接。以下是 'server_config.json' 示例,请根据实际情况修改:
{ "serverName": "bluesky-mcp", "command": "./bin/bluesky-mcp", "args": [], "description": "Bluesky MCP 服务器", "config": { "BskyID": "你的Bluesky账号或邮箱", "BskyPassword": "你的Bluesky密码", "BskyHost": "https://bsky.social" // Bluesky API Host,通常为 https://bsky.social // "BskyConfigFile": "/path/to/config.json" // 可选:使用配置文件,优先级高于环境变量 // "BskyBackupID": "备用Bluesky账号或邮箱", // 可选:备用账号,用于提高可靠性 // "BskyBackupPassword": "备用Bluesky密码" // 可选:备用账号密码 } }
参数注释:
- 'serverName': MCP 服务器的名称,客户端用于识别。
- 'command': 启动 MCP 服务器的可执行文件路径,这里假设编译后的二进制文件位于 './bin/bluesky-mcp'。
- 'args': 启动命令的参数,本例中无需额外参数,为空数组 '[]'。
- 'description': 服务器描述信息,方便客户端用户了解服务器用途。
- 'config': 服务器配置信息,以 JSON 格式提供,客户端无需关心具体配置项,服务器内部使用。
- 'BskyID': 你的 Bluesky 账号或邮箱,用于 API 认证。
- 'BskyPassword': 你的 Bluesky 密码,用于 API 认证。
- 'BskyHost': Bluesky API 主机地址,默认为 'https://bsky.social',通常无需修改。
- 'BskyConfigFile': 可选,指定 JSON 配置文件路径,配置信息将从文件中读取,优先级高于环境变量。
- 'BskyBackupID', 'BskyBackupPassword': 可选,备用 Bluesky 账号和密码,用于在主账号认证失败时提供备用方案,提高服务的可靠性。
配置方式:
你可以在 'server_config.json' 文件中直接填写配置信息,或者选择使用环境变量进行配置 (推荐)。
环境变量配置示例:
export BSKY_ID="你的Bluesky账号或邮箱" export BSKY_PASSWORD="你的Bluesky密码" export BSKY_HOST="https://bsky.social" # export BSKY_CONFIG_FILE="/path/to/config.json" # 如果使用配置文件 # export BSKY_BACKUP_ID="备用Bluesky账号或邮箱" # export BSKY_BACKUP_PASSWORD="备用Bluesky密码"
基本使用方法
-
启动服务器: 配置完成后,运行 'make run' 或直接运行编译后的二进制文件 './bin/bluesky-mcp' 启动服务器。默认情况下,服务器将在 '3000' 端口监听 HTTP 请求,健康检查服务在 '3001' 端口。
-
发送 JSON-RPC 请求: 使用 MCP 客户端或通过 'curl' 等工具,向服务器的 '/mcp/:method' 端点发送符合 JSON-RPC 2.0 规范的请求。':method' 需要替换为具体的方法名,例如 'feed-analysis', 'post-assist', 'community-manage'。
请求示例 (使用 curl):
Feed 分析请求:
curl -X POST "http://localhost:3000/mcp/feed-analysis" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "method": "feed-analysis", "params": { "hashtag": "golang", "limit": 10 }, "id": 1 }'
Post 辅助请求:
curl -X POST "http://localhost:3000/mcp/post-assist" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "method": "post-assist", "params": { "mood": "excited", "topic": "artificial intelligence" }, "id": 1 }'
社区管理请求:
curl -X POST "http://localhost:3000/mcp/community-manage" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "method": "community-manage", "params": { "userHandle": "user.bsky.social", "limit": 5 }, "id": 1 }'
健康检查: 可以访问 'http://localhost:3001/health' 或 'http://localhost:3001/healthz' 检查服务器运行状态。
请参考仓库 README.md 文件和代码注释获取更详细的信息。
信息
分类
通信与社交