Bluesky 發文
使用 Publora MCP 伺服器在 Bluesky 上建立與排程貼文。支援文字貼文,並可自動偵測標籤和網址,以及圖片與影片。
先決條件
方案: 可在免費的 Starter 方案中使用。目前限制與定價請見:publora.com/pricing
開始使用
- 在 publora.com/register 建立帳號(免費)
- 在 Bluesky 的「設定」>「應用程式密碼」中產生應用程式密碼(非你的主密碼)
- 在 Publora Dashboard 中,使用你的帳號名稱和應用程式密碼連結 Bluesky
- 在 app.publora.com/dashboard/api 取得 API 金鑰
- 使用
Authorization: Bearer sk_YOUR_API_KEY驗證,將你的代理連接到位於https://mcp.publora.com的 MCP 伺服器。在 Claude Code 中:
claude mcp add publora --transport http https://mcp.publora.com \
--header "Authorization: Bearer sk_YOUR_API_KEY"
Claude Desktop、Cursor、Codex、OpenClaw 和 claude.ai 連接器各自需要不同的設定檔或流程:請參閱客戶端設定以取得確切路徑和程式碼片段。
REST API 備用方案
如果 MCP 伺服器無法使用或回傳錯誤,請直接使用 REST API:
基礎 URL: https://api.publora.com/api/v1
驗證方式: 使用 x-publora-key 標頭(非 Authorization: Bearer):
# 取得已連結的平台
curl -X GET "https://api.publora.com/api/v1/platform-connections" \
-H "x-publora-key: sk_your_api_key"
# 建立一則貼文
curl -X POST "https://api.publora.com/api/v1/create-post" \
-H "x-publora-key: sk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"platforms": ["bluesky-did:plc:abc123xyz"],
"content": "你的貼文內容在此",
"scheduledTime": "2026-03-25T10:00:00Z"
}'
平台 ID 格式: bluesky-{did},其中的 {did} 來自 /platform-connections 回應。
範例 ID:bluesky-did:plc:abc123xyz、bluesky-did:plc:def456uvw
📖 完整 API 文件: docs.publora.com
平台限制
| 功能 | 限制 |
|---|---|
| 字元數 | 300 |
| 圖片 | 每則貼文最多 4 張 |
| 圖片大小 | 精確 2,000,000 位元組(十進位,非 2 MiB) |
| 影片長度 | 3 分鐘 |
| 影片大小 | 50-100 MB(依長度而定) |
| 每日影片數量 | 25 |
| 替代文字 | Bluesky 本身可達 2,000 字元,但無法透過此 API 設定(見下方說明) |
影片大小分級
| 長度 | 最大大小 |
|---|---|
| 60 秒以下 | 50 MB |
| 60 秒 - 3 分鐘 | 100 MB |
豐富文字 Facet
Bluesky 使用獨特的豐富文字系統。Publora 會自動處理其複雜性:
- 標籤:
#hashtag會自動偵測並變成可點擊 - URL: 任何 URL 會自動偵測並變成可點擊
- 位元組偏移: 能正確計算多位元組字元(表情符號、中日韓文字)
不需要特殊格式——只要自然地書寫即可。
可用工具
create_post
建立一則新的 Bluesky 貼文。
參數:
platforms:包含你的 Bluesky 連線 ID 的陣列(例如["bluesky-did:plc:abc123xyz"])content:貼文文字(最多 300 個字元)scheduledTime:ISO 8601 UTC 日期時間。可選:省略此參數則貼文會建立為草稿。傳送未來的時間則會排程。若傳送的時間在五分鐘(含)之前,則會被拒絕並回傳SCHEDULED_TIME_IN_PAST,因此若要立即發文,請使用目前時間再加一分鐘。mediaUrls:最多 10 個公開的 https 圖片或影片 URL。Publora 會在伺服器端下載這些檔案,並在驗證之前附加它們,因此媒體和排程可以在一次呼叫中完成。這是取代「先建立草稿,再呼叫get_upload_url,最後呼叫complete_media」流程的一次性替代方案。內容擷取有每小時 60 個 URL 的速率限制。
get_upload_url
取得用於媒體上傳的預先簽署 URL。
參數:
postGroupId:要附加媒體的貼文 IDfileName:檔案名稱(例如 "photo.jpg")contentType:image/jpeg、image/png、video/mp4type:"image"或"video"
complete_media
在預先簽署的 PUT 成功後,完成透過 get_upload_url 上傳的檔案。這是可選的,因為排程也會完成待處理的媒體,但提前呼叫它可以在發佈前就呈現格式和探測錯誤。對於使用 mediaUrls 附加的媒體則不需要。
參數:
mediaId:由get_upload_url傳回的 ID
list_connections
列出你已連結的帳號及其平台 ID。請先呼叫此工具並逐字複製這些 ID;它們永遠無法被猜測。
post_stats
已發佈 Bluesky 貼文的互動計數器:反應、留言、轉發、引用和書籤。在請求時即時取得,並快取約兩小時。
參數:
platform:blueskyplatformId:你的 Bluesky 連線 IDpostedIds:要查詢的已發佈貼文 ID
profile_stats
已連線帳號的跟隨者、追蹤中和貼文數量。
參數:
platform:blueskyplatformId:你的 Bluesky 連線 ID
list_posts / get_post / update_post / delete_post
管理已排程和草稿貼文。update_post 也可以修補草稿或排程貼文中的 content 和 platforms,因此修正錯字或重新設定目標平台不再需要刪除和重新建立。delete_media 和 prune_media_reference 可以用來清理已上傳的檔案。
範例
包含標籤的簡單貼文
將此貼文發佈到 Bluesky:
"我們的 API 文件剛剛上線!請至 https://docs.example.com 查閱 #開發工具 #API"
標籤和 URL 會自動變成可點擊。
包含圖片的貼文
將此貼文與儀表板截圖一起發佈到 Bluesky:
"我們新的分析檢視已經上線! #BuildInPublic"
多張圖片
建立一則 Bluesky 貼文,並附上前後對比的圖片:
"辦公室翻新完成了!真是脫胎換骨。"
注意:每則貼文最多允許 4 張圖片。
影片貼文
將這段 60 秒的展示影片發佈到 Bluesky:
"我們新手機應用程式功能的快速導覽"
排程貼文
在明天上午 10 點排程此貼文:
"早安!這是今天的生產力小技巧..."
重要限制
-
無法透過 API 設定替代文字。 Bluesky 發佈器會讀取媒體上的
alt屬性,但沒有任何方式可以保留它:無論是預先簽署的上傳流程還是mediaUrls都不會儲存它,而傳送給create-post的altTexts值也會被靜默忽略。platformSettings也無濟於事,因為 Bluesky 在那裡會被以400 PLATFORM_SETTING_UNKNOWN拒絕。先張貼圖片,然後在 Bluesky 應用程式中新增替代文字。請不要告訴使用者他們的替代文字已成功發佈。 -
需要應用程式密碼:你必須使用 Bluesky 應用程式密碼,而不是你的主要帳號密碼。請在「設定」>「應用程式密碼」中產生。
-
所有圖片會轉換為 JPEG:無論輸入格式為何(PNG、WebP、GIF),所有圖片在上傳前都會轉換為 JPEG。
-
嚴格的 2,000,000 位元組圖片限制:AT Protocol 強制執行精確的十進位位元組上限,而非四捨五入的 2 MiB。請壓縮至 80-85% JPEG 品質,並檢查位元組數。
-
基於 DID 的平台 ID:與使用數字 ID 的其他平台不同,Bluesky 使用
did:plc:xxx格式。 -
影片需要電子郵件驗證:在上傳影片之前,你必須在 Bluesky 中驗證你的電子郵件。
-
每日 25 則影片限制:每天最多 25 部影片或 10 GB。
最佳實務
內容
- 精簡貼文:300 個字元比 Twitter 還短——請保持簡潔有力
- 自然的標籤:1-2 個相關的標籤效果很好
- 替代文字:值得加入,但你必須在發文後於 Bluesky 應用程式中手動新增;API 無法攜帶它
- URL 有效:連結是可點擊的(與某些平台不同)
時機
- 成長中的平台:比 X 擁擠度低,更容易獲得關注
- 技術導向的受眾:開發者和早期使用者佔多數
- 發文頻率:每天 1-3 則
互動
- Bluesky 偏好像真的對話
- 回覆留言以建立社群
- 追蹤相關使用者以拓展網路
疑難排解
| 錯誤 | 原因 | 解決方案 |
|---|---|---|
| "Invalid credentials" | 密碼類型錯誤 | 使用應用程式密碼,而非主密碼 |
| "Image too large" | 超過 2,000,000 位元組 | 壓縮至 80-85% JPEG 品質 |
| "Content too long" | 超過 300 字元 | 縮短內容(無法自動推文串) |
| "Video daily limit" | 已達 25 部影片上限 | 等待 24 小時 |
| "Email not verified" | 嘗試上傳影片 | 在 Bluesky 設定中驗證電子郵件 |