Sendcove (1forh/sendcove)

Sendcove MCPサーバーを介して、X、Instagram、TikTok、Threads、Bluesky、YouTube、Facebook Pages、LinkedIn向けのソーシャルメディア投稿の作成、スケジュール、公開、メディアアップロード、エンゲージメント分析、インボックス管理を行います。

sendcove) とは?

**Sendcove** は、複数のソーシャルメディアプラットフォームを一元的に管理するためのスケジューラーです。このMCPサーバーは、投稿の作成・スケジュール・公開、メディアアップロード、エンゲージメント分析、インボックス(返信・メンション・コメント)の管理などを、AIエージェントから直接実行できるようにするツールを提供します。対応プラットフォームはX、Instagram、TikTok、Threads、Bluesky、YouTube、Facebook Pages、LinkedInで、クロスプラットフォーム投稿やプラットフォームごとの個別テキスト設定も可能です。 このスキルは、ユーザーが「投稿を作成して」「スケジュールして」「画像を添付して」「エンゲージメントを確認して」「インボックスに返信して」と依頼した場合に特に有用です。`create_post` でドラフトを作成し、ユーザーの確認を経てから `publish_post` やスケジュール設定を行います。`list_accounts` でアカウント一覧を取得し、`platformContent` や `platformSettings` でプラットフォーム固有の調整を行えます。また、`idempotencyKey` による冪等性保証や、メディアアップロードのための curl コマンド生成機能も備えています。 基本プランではスケジュール・公開・返信が制限されるため、403エラーが発生した場合はドラフトを保存し、Pro/Maxプランへのアップグレードと再接続をユーザーに促します。アナリティクス関連では `get_engagement`、`get_post_analytics`、`get_best_times` を提供し、インボックス管理では `reply_to_inbox_item`(公開返信の前にユーザー確認が必要)と `update_inbox_item`(既読/未読/アーカイブ)が利用できます。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/1forh/sendcove-agent-plugins/tree/HEAD/skills/sendcove

Installed? Explore more 生産性&コラボレーション skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Using Sendcove

Sendcove is a social media scheduler. Its MCP server gives you tools to manage the user's posts, media, analytics and inbox. If no Sendcove tools are available, tell the user to connect Sendcove (setup guides: https://www.sendcove.app/features/mcp).

Start with the accounts

  1. Call list_accounts before creating or changing a post. Pass the returned ids as accountIds; Sendcove works out the platforms from them.
  2. If the user has several accounts and didn't say which to use, ask. Don't post to every account by default.
  3. An account with needsReconnect: true will fail to publish. Tell the user to reconnect it in Sendcove.

Creating posts

  • create_post makes a draft unless you set status. Drafts are the safe default: create one, show the user what you made, and let them schedule or publish it.
  • content is the default text for every platform. Use platformContent to give a platform its own text, e.g. a 280-character version for twitter and a longer caption for instagram. Keys: twitter, instagram, tiktok, threads, bluesky, facebook, linkedin (strings) and youtube ({ title, description }).
  • Per-platform options (Instagram post type, YouTube video type and visibility, TikTok privacy, Bluesky reply settings, X community, and so on) go in platformSettings. Take the allowed fields and values from the tool's input schema and its descriptions instead of guessing. Before setting platformSettings.tiktok, call get_tiktok_creator_info for the privacy levels and interactions that account allows.
  • Character limits are checked when the post is published: X 280, Bluesky 300, Threads 500, Instagram and TikTok 2200, LinkedIn 3000, YouTube title 100 and description 5000. Keep each platform's text within its limit (use platformContent) so the post doesn't fail later.
  • Instagram and TikTok posts need media; YouTube needs one video.
  • Threads: pass follow-up posts as threadItems (each { content, mediaUrls? }). They're published as a thread on X, Bluesky and Threads (Pro and Max); other platforms get content only. update_post with threadItems: [] stops threading.
  • Hashtags: list_hashtag_sets returns the user's saved sets (stored without #).
  • Pass an idempotencyKey (any unique string, 8 to 200 characters) to create_post, duplicate_post and reply_to_inbox_item. If a call times out or you're unsure it went through, retry with the same key: you get the first result instead of a duplicate post or reply.
  • update_post changes only the fields you pass, but platformContent, platformSettings and threadItems each replace the whole stored value. Call get_post first and send the complete object.

Media

  • Media must be in the user's Sendcove media library before it can go in mediaUrls. list_media shows what's already there.
  • A public https URL: upload_media_from_url, then use the returned url.
  • A local file: call create_media_upload_url and run the returned curl command with the real file path (for example curl -s -X POST '<uploadUrl>' -F 'file=@/path/to/photo.jpg'). The JSON response has the url to use. The upload URL lasts 10 minutes and needs no API key. For files over 4 MB, pass contentType and run the two returned commands (PUT to storage, then the finalize POST) in that order. Add -F convertForInstagram=true to convert an image to JPEG for Instagram.
  • Allowed types: JPEG, PNG, GIF, WebP, MP4, MOV, AVI.

Scheduling and publishing

Only schedule, publish or reply when the user asked for it in this conversation. Writing a post is not permission to publish it.

  • Schedule: status: "scheduled" with scheduledFor as ISO 8601 with an offset (2026-11-20T15:00:00Z). Convert the user's local time and confirm the time zone if it's unclear. Or pass nextOpenSlot: true to use the next free posting time the user set for those accounts.
  • Publish now: status: "pending" on create_post, or publish_post for an existing post.
  • After publishing, call get_post: each account has its own status (published, failed, pending) and error. A failed post usually means one account failed. publish_post on that post retries only the failed accounts; it never re-posts where it's already live.
  • delete_post cannot be undone. Confirm before deleting.

Drafts-only connections (403)

Scheduling, publishing and replying need a Pro or Max plan and a connection that allows publishing. On the Basic plan, or with an API key or connected app set to drafts only, those calls return 403 "This API key or connected app can only create drafts".

When that happens, don't retry and don't work around it. Save the post as a draft and tell the user:

I saved this as a draft in Sendcove. This connection is drafts only, so I can't schedule or publish it. To let me publish, you need a Pro or Max plan, then reconnect Sendcove here and choose "Allow publishing" (or use an API key created with "Allow publishing" on, under Account > API keys in Sendcove). You can also schedule the draft yourself in Sendcove.

Analytics and inbox

  • get_engagement: totals, per-platform breakdown, top posts, and each account's best recent posts against its own median (timesMedian shows how much better a post did, not why).
  • get_post_analytics: one published post's metrics per account; pass refresh: true for fresh numbers (cached for an hour). Not every platform reports every metric.
  • get_best_times: best days and hours to post, from the user's own engagement.
  • list_inbox / get_inbox_item: replies, mentions and comments. reply_to_inbox_item posts a public reply, so show the user the text and get a yes first. update_inbox_item marks items read, unread or archived.

関連スキル