social-post について
social-postは、Publoraを通じてYouTube、Facebookページ、Mastodonへの投稿を作成・予約・管理するスキルです。複数サービスへの投稿に加え、メディアや下書き、予約投稿を扱います。
主な機能
- 01複数サービスへの投稿作成と予約
- 02YouTube動画の投稿
- 03Facebookページへの投稿
- 04Mastodonへの投稿
- 05下書きと予約投稿の管理
- 06メディアのアップロードと添付
活用シーン
- 01YouTube動画の投稿予約
- 02Facebookページへの告知投稿
- 03Mastodonでのテキストやメディアの共有
- 04下書きや予約投稿の更新・削除
MCP 対応
AgentをPublora MCPサーバー `https://mcp.publora.com/mcp` に接続します。ツールを使って、対応サービスの投稿、アカウント接続、メディアを管理できます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ publora/ skills --skill social-postインストール後、Claude Code で/social-postを入力して読み込まれたか確認します。
詳細
ソーシャル投稿(YouTube、Facebook、Mastodon)
Publora MCP サーバーを使用して、YouTube、Facebook Pages、Mastodonへの投稿を作成し、スケジュールできます。このスキルでは、プラットフォーム固有の複雑な設定がなく、標準的な方法で投稿できるプラットフォームを扱います。
前提条件
プラン: 無料のStarterプランで利用できます。現在の制限と料金については、publora.com/pricingをご覧ください。
はじめに
- アカウントを作成:publora.com/registerで作成します(無料)
- Publora DashboardでOAuthを使ってプラットフォームを接続します:
- YouTube:Google OAuth(YouTubeチャンネルが必要です)
- Facebook:Facebook OAuth(個人プロフィールではなく、Pagesのみ)
- Mastodon:OAuth(mastodon.socialインスタンス)
- エージェントがOAuthでサインインできない場合、または以下のREST APIフォールバックを使用する場合に限り、app.publora.com/dashboard/apiでAPIキーを取得します
https://mcp.publora.com/mcpにあるMCPサーバーにエージェントを接続します:/mcpを含まない手動接続の更新: Claudeでは、https://mcp.publora.comはバンドル版とは別のサーバーとして扱われます。既存の接続先を現在のスコープでhttps://mcp.publora.com/mcpに変更し、認証情報と選択したアカウントはそのまま維持してください。要求された場合は、再度サインインしてください。または、バンドル版の接続先が意図したアカウントを使用していることを確認してから、古い手動エントリーのみを削除してください。2つ目のエントリーを追加したり、認証情報を自動的に削除したりしないでください。- Publoraツールがすでに利用可能な場合(
publora-skillsプラグインまたはClaudeのPubloraコネクター):設定は不要です。ツールの初回実行時に、ClaudeからPubloraへのサインインを求められます。 - OAuthに対応しているエージェント(Claude Code、Cursor、Claudeアプリ、ChatGPTアプリ):サーバーをURLで追加してサインインしてください。APIキーは不要です。Claude Codeでは、サーバーを追加してから
/mcpを実行してサインインします:
claude mcp add --transport http --scope user publora https://mcp.publora.com/mcp
- OAuthに対応していないエージェント: APIキーを
Authorization: Bearer sk_YOUR_API_KEYとして送信します:
claude mcp add --transport http --scope user publora https://mcp.publora.com/mcp \
--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ヘッダー
# Get connected platforms
curl -X GET "https://api.publora.com/api/v1/platform-connections" \
-H "x-publora-key: sk_your_api_key"
# Create a post
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": ["youtube-UCxxx", "facebook-123456", "mastodon-789"],
"content": "Your post content",
"scheduledTime": "2026-03-25T10:00:00Z"
}'
プラットフォームIDの形式:
- YouTube:
youtube-{channel_id}(例:youtube-UCxxx) - Facebook:
facebook-{page_id}(例:facebook-112233445566) - Mastodon:
mastodon-{id}(例:mastodon-456)
📖 ドキュメント: docs.publora.com
YouTube
動画専用プラットフォーム - すべての投稿に動画ファイルが必要です。
プラットフォームの制限
| 機能 | 制限 |
|---|---|
| 動画タイトル | 100文字 |
| 動画の説明 | 5,000文字 |
| 動画の長さ | 12時間 |
| 動画サイズ | 256 GB |
| 動画形式 | MP4、MOV、AVI、WebM |
プラットフォーム設定(REST API経由)
{
"platformSettings": {
"youtube": {
"privacy": "public",
"title": "My Video Title"
}
}
}
| 設定 | 値 | デフォルト |
|---|---|---|
privacy | "public"、"unlisted"、"private" | "public" |
title | 文字列 | コンテンツの先頭70文字から生成 |
注:platformSettingsは、REST経由だけでなく、MCPのcreate_postツールおよびupdate_postツールでも使用できます。スキーマは厳密です。プラットフォーム名やキーに誤りがある場合、黙って無視されるのではなく、検証エラーになります。
YouTubeの例
Upload this tutorial video to YouTube:
"How to Build a REST API in 10 Minutes - Complete guide for beginners"
Upload this as an unlisted video (for internal sharing):
"Internal demo - Q1 dashboard features"
YouTubeの制限事項
- 動画が必須: YouTubeはテキストのみ、または画像の投稿に対応していません
- 動画は1本のみ: 1つの投稿につき動画は1本です
- 処理時間: 動画のアップロード後、処理には数秒から数分かかります
- トークンの更新: YouTubeのトークンは約6か月後に期限切れになります。必要に応じて再接続してください
Pagesのみ - 投稿先はFacebook Pagesであり、個人プロフィールではありません。
プラットフォームの制限
| 機能 | 制限 |
|---|---|
| 投稿テキスト | 2,200 文字(フロントエンド)/63,206 文字(API) |
| 画像 | 1 件の投稿につき最大 10 枚 |
| 画像サイズ | 10 MB |
| 動画の長さ | 45 分 |
| 動画サイズ | 2 GB |
複数ページのサポート
複数の Facebook ページを管理している場合、各ページにはそれぞれ固有のプラットフォーム ID が割り当てられます。
facebook-112233445566(ページ 1)facebook-778899001122(ページ 2)
1 回のリクエストで複数のページに投稿できます。
Facebook の例
Post this announcement to my Facebook Page:
"We're thrilled to announce our new product launch! Visit our website to learn more."
Post this to both my Facebook Pages:
"Holiday notice: Our offices will be closed on Monday."
Share these event photos on Facebook:
"Highlights from our company retreat! Great team, great memories."
Facebook の制限事項
- ページのみ:API 経由で個人プロフィールには投稿できません
- WebP は自動変換:WebP 画像は自動的に JPEG に変換されます
- 59 日間のトークン:トークンは自動更新されますが、更新に失敗した場合は再接続が必要になることがあります
- メディアの混在不可:1 件の投稿には画像または動画のどちらか一方を含めることができ、両方を含めることはできません
Mastodon
Fediverse プラットフォーム — 投稿は分散型ネットワーク全体に連携して配信されます。
プラットフォームの制限
| 機能 | 制限 |
|---|---|
| 投稿テキスト | 500 文字 |
| 画像 | 1 件の投稿につき最大 4 枚 |
| 画像サイズ | 16 MB |
| 動画サイズ | 約 99 MB |
| 画像形式 | JPEG、PNG、GIF、WebP |
| 動画形式 | MP4、WebM、MOV |
Mastodon の例
Post this to Mastodon:
"Hello fediverse! We just shipped a major update to our open-source project. #opensource"
Share this screenshot on Mastodon:
"New feature: dark mode is here! #ui #darkmode"
Mastodon の制限事項
- mastodon.social のみ:現在は mastodon.social インスタンスにのみ接続します
- 公開範囲は公開:すべての投稿はデフォルトで公開されます
- 自動スレッド化なし:X/Twitter や Threads とは異なり、Mastodon は長いコンテンツを分割しません
- 500 文字の厳格な上限:500 文字を超えるコンテンツは拒否されます
利用可能なツール(すべてのプラットフォーム)
create_post
任意のプラットフォームに新しい投稿を作成します。
パラメーター:
platforms:プラットフォーム ID の配列(例:["youtube-UCxxx", "facebook-123", "mastodon-456"])content:投稿テキストscheduledTime:ISO 8601 UTC 日時。省略可能:省略すると、投稿は下書きとして作成されます。未来の日時を指定すると予約投稿になります。5 分以上前の時刻を指定するとSCHEDULED_TIME_IN_PASTで拒否されるため、すぐに投稿する場合は現在時刻に 1 分を加えた時刻を指定してください。mediaUrls:公開されている https の画像または動画 URL を最大 10 件指定できます。Publora は検証前にサーバー側でダウンロードして添付するため、メディアの添付と予約投稿を 1 回の呼び出しで行えます。これは、下書きを作成してからget_upload_url、続いてcomplete_mediaを呼び出す手順に代わる、1 回で完了する方法です。取り込みは 1 時間あたり 60 URL に制限されています。
get_upload_url
メディアのアップロードに使用する署名付き URL を取得します。
パラメーター:
postGroupId:メディアを添付する投稿 IDfileName:ファイル名contentType:MIME タイプtype:"image"または"video"
complete_media
署名付き PUT が成功した後、get_upload_url を通じてアップロードしたファイルを確定します。予約投稿時にも保留中のメディアは確定されるため省略できますが、早めに呼び出すと、公開前に形式やプローブのエラーを確認できます。mediaUrls で添付したメディアには不要です。
パラメーター:
mediaId:get_upload_urlが返す ID
list_connections
接続済みアカウントとそのプラットフォーム ID の一覧を表示します。最初にこれを呼び出し、ID をそのままコピーしてください。ID を推測することはできません。
list_posts / get_post / update_post / delete_post
予約投稿と下書きを管理します。update_post では下書きまたは予約投稿の content と platforms も更新できるため、誤字の修正や投稿先の変更のたびに削除して作り直す必要はありません。delete_media と prune_media_reference では、アップロードしたファイルを整理できます。
クロスプラットフォーム投稿
複数のプラットフォームに同時に投稿できます。
Post this video to YouTube and this text to Facebook and Mastodon:
"Announcing our new feature - watch the demo!"
Publora はプラットフォーム固有の要件を自動的に処理します。
- YouTube にはタイトルと説明を付けて動画を投稿します
- Facebook にはテキストと動画を投稿します
- Mastodon にはテキストを投稿します(500 文字の制限が適用されます)
複数のプラットフォームへの同時投稿や一括予約投稿の前に、account_context を呼び出して、残りの投稿可能数と予約可能な最終日を確認してください。
トラブルシューティング
| プラットフォーム | エラー | 解決方法 |
|---|---|---|
| YouTube | "Video required" | 動画ファイルを添付してください |
| YouTube | "Account disconnected" | ダッシュボードから再接続してください |
| "Page not found" | ページの接続を確認してください | |
| "Token expired" | ダッシュボードでページを再接続してください | |
| Mastodon | "Content too long" | 500 文字未満に短縮してください |
| Mastodon | "Too many images" | 4 枚以下に減らしてください |
| すべて | レート制限エラー | 時間をおいて再試行してください |
以前ここに記載されていた 512 MB という数値は、ダッシュボードの
/media/process-videoマルチパートエンドポイントに適用されるものです。API と MCP によるアップロードは署名付き URL を使用し、上記のプラットフォームごとの上限が適用されます。