蓝天日报
MCP服务器每天都会帮助您展示Bluesky中最有趣的主题。
有关如何使用的示例,请访问 “构建MCP服务器以探索我的Bluesky Feed”.
特性
- 一个工具,用于从您的关注者中检索特定日期的所有帖子
- 分析帖子的示例提示
- 缓存某一天的帖子
关注和帖子通过以下方式检索 bsky-tldr npm包,它(a)将信息简化为仅关键字段,(b)确保仅在请求的当天高效检索帖子。
在这个MCP服务器中,我们添加了更多描述性的字段名,并将作者和帖子信息组合在一起,以便LLM使用:
type StandalonePost = {
urlToOriginalPost: string;
authorIdentifier: string;
authorNameOrHandle: string;
content: string;
links: string[];
isRepost: boolean;
};局限性
- 这将从您的关注者中检索给定日期的所有帖子。这将变得很大,随后您将丢失被MCP客户端或LLM上下文窗口截断的帖子。将需要额外的策略来处理这个问题。
- 如果你试图从历史日期(例如几周或几个月前)检索帖子,你会遇到Bluesky API费率限制和/或超时。
bsky-tldr该软件包足够智能,可以停止检索比请求日期更早的帖子,但确实需要检索到历史日期之前的所有较新帖子。
安装
将此MCP服务器与您的MCP客户端(如Claude Desktop)一起安装。
以下是步骤:
👉 1. 配置。 对于Claude Desktop,您可以通过将以下内容添加到您的 ~/Library/Application\ Support/Claude/claude_desktop_config.json (在MacOS上):
选项A:从NPM包运行
注: PATH 指向指向的绝对路径 /bin 文件夹,其中 npx 仅当您使用时才需要运行 NVM 管理你的Node.js版本。否则,您可能会看到一个神秘的“Header not set”错误。通过查找路径 which npx 命令。
{
"mcpServers": [
"bluesky-daily-mcp": {
"command": "npx",
"args": ["-y", "bluesky-daily-mcp"],
"env": {
"PATH": "/absolute/path/to/npx/bin:/usr/bin:/bin",
"BLUESKY_HANDLE": "",
"BLUESKY_APP_PASSWORD": "",
"TIMEZONE_OFFSET": "-8",
"REQUEST_TIMEOUT_MS": "120000"
}
}
]
}选项B:克隆仓库并从源代码运行它
首先在克隆的仓库中构建MCP服务器:
npm install
npm run build注: /absolute/path 需要 node 如果你使用 NVM 管理你的Node.js版本。否则,您可能会看到一个神秘的“Header not set”错误。通过查找路径 which node 命令。
{
"mcpServers": [
"bluesky-daily-mcp": {
"command": "/absolute/path/to/node",
"args": ["/absolute/path/to/this/dist/index.js"],
"env": {
"BLUESKY_HANDLE": "",
"BLUESKY_APP_PASSWORD": "",
"TIMEZONE_OFFSET": "-8",
"REQUEST_TIMEOUT_MS": "120000"
}
}
]
}这些环境变量是什么?
BLUESKY_HANDLE你的Bluesky句柄没有@符号,例如。your_handle.bsky.social或customdomain.com.BLUESKY_APP_PASSWORD是Bluesky应用程序密码,您可以从 Bluesky应用程序密码设置页面.TIMEZONE_OFFSET是UTC的时区偏移,单位为小时。例如,-8对于PST,+8CST。这有助于定义“一天”对你来说是什么,所以它不是硬编码为UTC的。REQUEST_TIMEOUT_MS是检索帖子的请求运行的最大超时时间。如果没有这个,默认值为~60秒(60000毫秒)。建议将其设置为2分钟(120000毫秒)。
👉 2. 重新启动Claude Desktop以加载新的MCP服务器。
试试看
- 启动Claude Desktop并开始新的对话
- 键入“检索昨天的Bluesky帖子”或“检索4月2日的Bluesky文章”(或您想要的任何日期)
对贡献者的帮助
在当地发展
设置您的本地 .env 文件包含:
BLUESKY_HANDLE=
BLUESKY_APP_PASSWORD=
TIMEZONE_OFFSET=使用MCP检查器进行调试:
npm install
npm run build && npx @modelcontextprotocol/inspector -e BLUESKY_HANDLE=XXX -e BLUESKY_APP_PASSWORD=XXX -e TIMEZONE_OFFSET=XXX node dist/index.jsDebug by viewing logs
tail -n 20 -F ~/Library/Logs/Claude/mcp-server-bluesky-daily-mcp.log运行测试或覆盖率报告
npm test
npm run coverage手动检索帖子
如果你想确保检索后的代码在.env中运行正常,请运行:
npm run retrieve-posts向NPM发布包的步骤
将最新代码合并到主分支后:
- 在当地,
git checkout main && git pull npm version patch#或小,或大git push --follow-tags- GitHub版本会自动编写和发布
