ソーシャル投稿(YouTube、Facebook、Mastodon)
Publora MCPサーバーを使用して、YouTube、Facebookページ、Mastodonへの投稿を作成・スケジュールします。このスキルは、プラットフォーム固有の複雑さがなく、標準的な投稿で動作するプラットフォームをカバーします。
前提条件
プラン: 無料のStarterプランで動作します。現在の制限と料金: publora.com/pricing
はじめに
- アカウントを作成 publora.com/register(無料)
- プラットフォームを接続 PubloraダッシュボードでOAuth経由:
- YouTube: Google OAuth(YouTubeチャンネルが必要)
- Facebook: Facebook OAuth(ページのみ、個人プロフィール不可)
- Mastodon: OAuth(mastodon.socialインスタンス)
- APIキーを取得 app.publora.com/dashboard/api
- エージェントをMCPサーバーに接続
https://mcp.publora.com、認証はAuthorization: Bearer sk_YOUR_API_KEY。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 ヘッダー
# 接続済みプラットフォームの取得
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": ["youtube-UCxxx", "facebook-123456", "mastodon-789"],
"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": "私の動画タイトル"
}
}
}
| 設定 | 値 | デフォルト |
|---|---|---|
privacy | "public", "unlisted", "private" | "public" |
title | 文字列 | コンテンツの最初の70文字から生成 |
注: platformSettings はMCPの create_post および update_post ツール、ならびにREST経由で受け入れられます。スキーマは厳格です。タイプミスのあるプラットフォームやキーは、警告なしに無視されるのではなく、検証エラーで拒否されます。
YouTubeの例
このチュートリアル動画をYouTubeにアップロードしてください:
"How to Build a REST API in 10 Minutes - Complete guide for beginners"
これを限定公開動画としてアップロードしてください(内部共有用):
"Internal demo - Q1 dashboard features"
YouTubeの制限事項
- 動画必須: YouTubeはテキストのみや画像のみの投稿をサポートしていません
- 単一動画のみ: 投稿ごとに動画は1つのみ
- 処理時間: 動画はアップロード後、数秒から数分かかって処理されます
- トークン更新: YouTubeのトークンは約6か月で期限切れになります。必要に応じて再接続してください
ページのみ - 投稿はFacebookページに送信され、個人プロフィールには送信されません。
プラットフォーム制限
| 機能 | 制限 |
|---|---|
| 投稿テキスト | 2,200文字(フロントエンド)/ 63,206(API) |
| 画像 | 投稿あたり最大10枚 |
| 画像サイズ | 10 MB |
| 動画の長さ | 45分 |
| 動画サイズ | 2 GB |
複数ページのサポート
複数のFacebookページを管理している場合、各ページに個別のプラットフォームIDがあります:
facebook-112233445566(ページ1)facebook-778899001122(ページ2)
1回のリクエストで複数のページに投稿できます。
Facebookの例
この告知を私のFacebookページに投稿してください:
"新製品のローンチを発表できることを大変嬉しく思います!詳細はウェブサイトをご覧ください。"
これを両方のFacebookページに投稿してください:
"休日のお知らせ: 月曜日はオフィスを閉鎖いたします。"
これらのイベント写真をFacebookで共有してください:
"会社のリトリートのハイライト!素晴らしいチーム、素晴らしい思い出。"
Facebookの制限事項
- ページのみ: API経由で個人プロフィールに投稿することはできません
- WebPは自動変換: WebP画像は自動的にJPEGになります
- 59日間のトークン: トークンは自動更新されますが、更新に失敗した場合は再接続が必要になる場合があります
- メディアの混在不可: 画像または動画のいずれかのみ。両方は不可
Mastodon
フェディバースプラットフォーム - 投稿は分散型ネットワーク全体に連合します。
プラットフォーム制限
| 機能 | 制限 |
|---|---|
| 投稿テキスト | 500文字 |
| 画像 | 投稿あたり最大4枚 |
| 画像サイズ | 16 MB |
| 動画サイズ | 約99 MB |
| 画像フォーマット | JPEG, PNG, GIF, WebP |
| 動画フォーマット | MP4, WebM, MOV |
Mastodonの例
これをMastodonに投稿してください:
"Hello fediverse! We just shipped a major update to our open-source project. #opensource"
このスクリーンショットをMastodonで共有してください:
"New feature: dark mode is here! #ui #darkmode"
Mastodonの制限事項
- mastodon.socialのみ: 現在はmastodon.socialインスタンスにのみ接続可能です
- 公開表示: すべての投稿はデフォルトで公開されます
- 自動スレッドなし: X/Twitterとは異なり、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: 最大10個の公開https画像または動画URL。Publoraがサーバー側でダウンロードし、検証の前に添付するため、メディアとスケジュールが1回の呼び出しで完了します。これは、ドラフト作成後にget_upload_urlとcomplete_mediaのフローを使用する代わりのワンショット代替手段です。取り込みは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 はアップロードされたファイルをクリーンアップします。
クロスプラットフォーム投稿
複数のプラットフォームに同時に投稿します。
この動画をYouTubeに、このテキストをFacebookとMastodonに投稿してください:
"新機能の発表 - デモをご覧ください!"
Publoraがプラットフォーム固有の要件を自動的に処理します:
- YouTubeにはタイトル/説明付きの動画を投稿
- Facebookにはテキスト + 動画を投稿
- Mastodonにはテキストを投稿(500文字制限が適用されます)
トラブルシューティング
| プラットフォーム | エラー | 解決策 |
|---|---|---|
| YouTube | "動画が必要です" | 動画ファイルを添付する |
| YouTube | "アカウントが切断されました" | ダッシュボードから再接続する |
| "ページが見つかりません" | ページ接続を確認する | |
| "トークンの有効期限が切れました" | ダッシュボードでページを再接続する | |
| Mastodon | "コンテンツが長すぎます" | 500文字未満に短縮する |
| Mastodon | "画像が多すぎます" | 4枚以下に減らす |
| すべて | レート制限エラー | 待機して再試行する |
以前ここに記載されていた512 MBという数値は、ダッシュボードの
/media/process-videoマルチパートエンドポイントに属します。APIおよびMCPのアップロードはプリサインドであり、上記のプラットフォーム上限を使用します。