NestDaddy

Octopost

ink.octopost/octopost · v1.0.2

Your agent posts, schedules, queues and threads posts on X, with a human approval queue.

Connect Remote server

Terminal
claude mcp add --transport http octopost https://octopost.ink/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
~/.cursor/mcp.json
{
  "mcpServers": {
    "octopost": {
      "url": "https://octopost.ink/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "octopost": {
      "type": "http",
      "url": "https://octopost.ink/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
Claude Desktop
Settings > Connectors > Add custom connector
URL: https://octopost.ink/mcp

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools 28 found in our last check

  • create_post

    Create and publish a post to one or more social media platforms immediately. Octopost handles formatting, auth and uploads. Which networks work today is in the server instructions (and get_guide topic "platforms"). PLATFORM CONTENT LIMITS (checked before anything is published: i…

  • schedule_post

    Schedule a post for future publishing. The Octopost scheduler will publish it at the specified time automatically. The post is saved as a draft until the scheduled time, then published to all specified platforms. Same platform limits and same options as create_post, which docume…

  • list_posts

    List posts, newest first: content preview, platforms, status, scheduled time and each network's link. Filter with status. Results are paged: when next_cursor is set, call again with cursor = next_cursor for the next page. Call get_post for one post's full details.

  • list_accounts

    List all connected social media accounts. ALWAYS call this before create_post to see which platforms the user has connected. Returns each account's platform, handle, id, and whether it is the platform's default (used when a post names no account). A platform can have several acc…

  • get_post

    Get everything about one post: status, full text, thread segments, per-network variants, media (with alt text), queue status and position, which account posts on each network, per-network results with links, and the last error. Use it to check whether a post went out everywhere.

  • get_guide

    Get a comprehensive guide on using Octopost effectively. Returns platform limits, best practices, content tips, and feature documentation. Call this if you need help with: - What platforms are supported and their limits - How to format content for cross-platform posting - Media/…

  • update_post

    Update a post's content, platforms, scheduled time, attached media, or thread reply segments. Only works on unpublished posts (drafts, scheduled, queued, and pending). Any field you omit is preserved as-is. Pass `media_urls: []` to clear all attached media; pass new media_urls o…

  • delete_post

    Delete a post from Octopost. For published posts, also attempts to delete from each platform via their APIs. Platform deletion support: - Twitter: Full API deletion supported. - Bluesky: Full API deletion supported (deleteRecord). - LinkedIn: Full API deletion supported. - Masto…

  • retry_failed

    Retry publishing to platforms that failed on a previous post. Only retries platforms that had errors — already-successful platforms are not re-published. Call get_post first to see which platforms failed and why. You can retry all failed platforms or specify specific ones. Commo…

  • cancel_scheduled

    Cancel a scheduled post, converting it to a draft. The post is kept in Octopost but will NOT be published at the scheduled time. Give it a new time later with reschedule_post. To publish it right away instead, call publish_draft.

  • reschedule_post

    Change the scheduled time of a post. The new time must be in the future. Works on both scheduled posts and drafts (effectively scheduling a draft). The post will be published at the new time by Octopost's scheduler (checks every 60 seconds).

  • list_presets

    List publishing presets: saved platform combinations (system presets plus the user's own) with their cross-link settings. The create tools take platforms, not a preset name, so pass a preset's `platforms` (and cross-link fields) to create_post / schedule_post / queue_post. Platf…

  • queue_post

    Add a post to your publishing queue. It will be published automatically during your active hours. Posts require platforms to be specified. HUMAN APPROVAL: set needs_approval=true when a person should review the post first (anything the user hasn't seen word for word). The post i…

  • approve_queued_post

    Approve a post that is waiting for approval. Approval is meant for a person: by default this tool refuses, and the post has to be approved from the email Octopost sent or the dashboard. It only works when the account owner turned on "Let agents approve posts made by a different…

  • get_queue_status

    See your queue: how many posts are ready, how many need approval, when the next one publishes, and your queue settings.

  • update_queue_settings

    Change your queue settings: how often to post, active hours, timezone, or pause/resume the queue. Defaults: publish every 4 hours, active 9am-8pm, timezone America/New_York. The queue only publishes during active hours. The exact minute within each interval is randomized so post…

  • get_analytics

    How published posts did: likes, reposts, replies, quotes and (on X) views. Two modes: - With post_id: that post's numbers per network, plus snapshots taken about 1 hour, 24 hours and 7 days after it went live. - Without post_id: a summary of posts published between from and to (…

  • publish_draft

    Publish a post that's already saved in Octopost right now: a draft, a scheduled post (it goes out now instead of at its time) or a queued post (it skips the queue). Uses the post's own text, networks, media and thread segments. Returns per-network results like create_post (or st…

  • preview_post

    Dry run: what would happen if you sent this post, without saving or posting anything. Returns ok (would it go out), problems (fix these first) and warnings, character counts per network and part the way each network counts (X: links 23, emoji/CJK 2; Bluesky: graphemes), X units…

  • get_usage

    How much of the plan is used: X post units this month (used, limit, remaining, when it resets; a post with a link costs 13 units, a plain post 1), and connected accounts vs the plan's limit. A null limit means unlimited. Check it before a batch of X posts so you don't hit the ca…

  • reject_queued_post

    Take a queued post out of the queue and turn it back into a draft, with an optional note saying why (shown with the post). Nothing is published or deleted; edit it with update_post and queue it again, or delete it with delete_post. A post waiting for approval (pending) is for a…

  • reorder_queue

    Set the order queued posts publish in. The posts you list go first, in that order; queued posts you leave out keep their current order after them. Pending-approval posts can be listed too: their place applies once approved. Call list_posts with status "queued" to see the queue.

  • split_thread

    Split long text into thread parts that fit every network you name, breaking at paragraphs, then sentences, then words. Counts the way each network does (X: links are 23, emoji 2; Bluesky: graphemes). Nothing is saved or posted. Pass the result straight to create_post / schedule_…

  • create_upload

    Attach a file from your machine (screenshot, photo, video): this returns a one-time upload_url, good for 15 minutes and one file. Send the raw bytes to it, e.g. curl -T ./shot.png "<upload_url>" (PUT; no auth header needed). The response has media_url: pass it in media_urls (as…

  • list_feeds

    List the RSS/Atom feeds this account turns into posts: each feed's networks, template, mode ("hold" = every new item waits for a person to approve it, "queue" = new items join the posting queue), how often it is checked, when it was last checked, any error, and how many items it…

  • add_feed

    Turn an RSS or Atom feed (a blog, a newsletter, a changelog) into posts. Octopost reads the feed right away (a site address works too if the page links its feed) and then checks it every 30 minutes by default. Each new item becomes a post from the template. The first check posts…

  • remove_feed

    Stop turning a feed into posts and forget which items it has seen. Posts the feed already made (published, queued or waiting for approval) are kept; delete those separately with delete_post if needed. Get the feed id from list_feeds.

  • set_evergreen

    Mark a post evergreen (or not). When the posting queue runs empty, Octopost posts an evergreen post again in the empty queue slot, picking the one that has rested longest. The same post goes out at most once every 30 days, and never while the same text is on (or going to) the sa…

Headers

NameDescription
Authorization
Required, secret
Bearer followed by your Octopost API key (op_...), from Dashboard > API keys

Details

Endpointhttps://octopost.ink/mcp (Streamable HTTP)
First published9 Oct 2026
Last updated9 Oct 2026
Registry nameink.octopost/octopost

More ai and media servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.