Prompt
Summarize everything we merged this week from the git log into a 3-tweet X thread called 'This week in the SDK'. One tweet per theme, plain language, no emoji. Draft it for X and leave it unscheduled so I can pick the time. How to do it
- Create the key In Connections, create a key named Windsurf scoped to X with the draft permission.
- Edit mcp_config.json Open Windsurf settings, go to MCP servers, and edit the raw config. Add an entry with serverUrl https://app.socialhandoff.com/mcp and an Authorization: Bearer header, or a stdio command of npx -y socialhandoff-mcp.
- Refresh Cascade Refresh the MCP list so Cascade loads draft_post and preview_posts.
- Ask Cascade Give it the prompt. It can run git log itself, then call draft_post with a thread array.
- Pick a time and approve In the inbox, set the slot or approve now. The 60-second undo covers a publish-now mistake.
Example draft
1/ This week in the SDK: faster cold starts, a friendlier error, and one breaking change you should know about. 2/ Cold start dropped because we lazy-load the crypto module. Errors for a missing API key now say which variable to set. 3/ Breaking: timeout is now in milliseconds, not seconds. Upgrade notes: https://example.com/sdk/changelog
Gotchas
- Thread tweets are checked one by one against X's weighted 280 limit. A single long tweet in the middle fails the guardrail, not the whole thread silently.
- Windsurf caps how many MCP tools are active at once. If draft_post is missing, turn off tools you do not use from other servers.
- Cascade may write thread numbering itself. Keep it consistent: either number every tweet or none.
- Character limit: 280 weighted characters for standard accounts. Most CJK characters and many emoji count as 2. Premium accounts can post longer, but SocialHandoff checks against 280.
- Links: Every URL is wrapped by t.co and counts as 23 characters, whatever its real length.
- Media per post: Up to 4 images, or 1 GIF, or 1 video.
- File sizes: Images up to 5 MB, GIFs up to 15 MB, video up to 512 MB (uploaded in chunks).
Frequently asked questions
Can a teammate approve instead of me?
Yes. Anyone with access to the inbox can approve. On the Pro plan, multi-reviewer approvals let you require more than one reviewer.
Does Windsurf need a separate key from Cursor?
It should have its own. One key per agent keeps permissions and the audit log clear, and you can revoke one without touching the other.