MCP (streamable HTTP, custom connector) · Threads

Draft and schedule Threads posts from ChatGPT

ChatGPT can take a long piece of writing, like a blog post or a customer story, and find the one moment that works as a short Threads post. Connected to SocialHandoff as a custom connector, it saves that post as a draft of up to 500 characters. You see it on the approval card and in the inbox, and approve when the voice sounds like you. Text, images, video, and carousels of up to 20 items are supported, and drafts stay in the inbox until a person approves.

Prompt

Here is my 1,500-word blog post about moving our coffee roastery to a 4-day week. Pull out the single most surprising result and write it as a Threads post under 450 characters, first person, no hashtags. Save it as a draft for Threads.

How to do it

  1. Mint a Threads agent key In https://app.socialhandoff.com, open Connections, connect your Threads account, then create an agent key scoped to Threads with draft permission only. Copy the key when it is shown; only its hash is stored.
  2. Turn on developer mode In ChatGPT settings, enable developer mode so you can add a custom connector.
  3. Add the connector Create a connector with the URL https://app.socialhandoff.com/mcp and your Threads key as the bearer token. ChatGPT needs an HTTPS URL it can reach, so use the hosted app or a public self-hosted instance.
  4. Brainstorm, then draft Talk through angles in the chat. When you pick one, ask ChatGPT to call draft_post for Threads. The post lands in the approval inbox, not on your profile.

Example draft

Six months ago we moved our roastery to a 4-day week. I expected output to drop. It did not. We roast the same volume, and green coffee waste fell because nobody is rushing a Friday batch while tired anymore. The hardest part was not scheduling. It was me learning to stop checking the roaster logs on day 5.

Gotchas

  • Keep each Threads post within 500 characters, and remember that Threads counts emoji by their UTF-8 bytes, so a few emoji use more of the limit than they appear to. The per-network length guardrail flags longer drafts before they reach the inbox.
  • A draft too long for one post can go out as a reply-chain thread, with each part published as a reply to the one before. Every part has its own 500-character limit, and a carousel of 2 to 20 images or videos can lead the chain.
  • Threads allows 250 posts per account in any 24 hours. The quota is checked before each publish, so a post that would go over it is stopped before it is sent rather than failing at the network.
  • ChatGPT connectors need a public HTTPS endpoint. A self-hosted instance on localhost will not work; use the hosted app or expose your instance behind TLS.
Threads
  • Character limit: 500 characters per post. Emoji count as their UTF-8 bytes, so an emoji can use up to 4 characters of the limit.
  • Links: Up to 5 links per post. Threads generates a preview for the first one.
  • Carousels: 2 to 20 images or videos in one carousel post.
  • Image files: JPEG or PNG, up to 8 MB. Threads fetches each file from a URL at publish time.
Threads scheduler for agent drafts you approve first

Frequently asked questions

Which ChatGPT plans can add the connector?
Custom connectors depend on ChatGPT developer mode, which OpenAI controls by plan. If you can add a custom MCP connector, you can connect to https://app.socialhandoff.com/mcp with a bearer key.
What can a Threads post include?
Text up to 500 characters, a single image or video, or a carousel of 2 to 20 items, with alt text on images. A longer idea can go out as a reply-chain thread, and every part waits for approval like any other draft.
What happens if a Threads publish fails?
The post is marked failed with the error, a post.failed webhook fires if you registered one, and you can fix and retry from the inbox.

Let your agents post. Keep the final say.

Connect your first agent in minutes. Every draft waits in your inbox until you approve it.

14 days free. No card required.

The hosted version is opening soon

Leave your email and we will send one message when hosted accounts open, with your 14-day trial ready. Want it today? Self-host it free from the repo.

Start free trial