TimeToPost inside Claude Code
Claude Code already lives in your terminal next to the repo you just shipped from. Connecting TimeToPost means the same session that wrote the release notes can queue the announcement for Instagram, X, TikTok, Threads, Bluesky, Mastodon, Nostr, Pixelfed, Telegram, Tumblr, WordPress, Ghost, DEV, Whop, Listmonk, and Buttondown, with you approving each one.
Pick a route
There are two ways in. They end at the same hosted server, so choose by how you like to manage tools.
Route A: the skill, as a plugin
The TimeToPost skill ships from a public marketplace repository. Add the marketplace once, then install the plugin from it.
/plugin marketplace add MelMayssonOwen/timetopost-mcp
/plugin install timetopost@timetopostThe first line follows the documented /plugin marketplace add owner/repo form and the second the /plugin install name@marketplace form. Run /reload-plugins if the new tools do not show up straight away.
Route B: just the MCP server
claude mcp add --transport http timetopost https://api.timetopost.co/mcpAdd --scope user to make it available in every project; the default is local, meaning the current project only. Then open /mcp in a session, select timetopost and follow the browser sign-in. From a shell, claude mcp login timetopost starts the same flow, and claude mcp list shows whether it connected.
Prompts that work well in a terminal
- “Run whoami and tell me which workspace you are connected to.” Uses
whoami. Do this first, every time you connect a new account. - “Read the diff since the last tag and file three launch posts with create_drafts. Use my best times.” Claude reads git, then calls
get_optimal_timesandcreate_draftswith a schedule hint of optimal. - “What is waiting for review?” Calls
list_approvals. - “Is the scheduler healthy, and did last night’s posts go out?” Calls
scheduler_statusandlist_posts.
The approval gate, as it actually works
- Claude calls
create_drafts. Every draft is stored as pending approval. The tool cannot publish, and sending the same batch again updates drafts that are still pending instead of duplicating them. - You look at them with
list_approvals(read only, covers posts, trend drafts, build-in-public drafts and DMs) or in the TimeToPost dashboard. - When you say yes, Claude calls
approve_draft, which schedules the real post in one step. Say no and it callsreject_draftwith an optional reason.
Two caveats from the code. approve_draft and reject_draft handle only the posts queue from MCP; trend, build-in-public and DM items are approved in the dashboard. And if you have several accounts on one network, approval refuses to guess: pass account ids taken from list_integrations.
Questions people ask
Do I need an API key for Claude Code?
No. The hosted server signs you in through the browser with OAuth. You run claude mcp add, then authenticate from the /mcp screen inside Claude Code. The only key-based route is the npm stdio package, which reads TIMETOPOST_API_TOKEN from your environment.
What is the difference between the skill and the plain MCP command?
The plain command only registers the server, so Claude Code gains the tools. The skill is installed as a plugin from the MelMayssonOwen/timetopost-mcp marketplace and is the route to take if you want the packaged TimeToPost workflow in your plugin list. Both talk to the same hosted endpoint.
Will Claude Code publish without asking me?
Not through create_drafts. That tool always files drafts as pending approval, and nothing is scheduled until approve_draft runs. Be aware that schedule_post with a scheduledAt value does schedule directly, so tell Claude to use create_drafts when you want a review step.
Which scope should I install it in?
Claude Code supports local, project and user scopes for MCP servers. User scope makes TimeToPost available in every project, which is usually what you want for a personal social account. Project scope writes a .mcp.json that teammates share.
How do I remove access?
Run claude mcp remove timetopost on the Claude Code side, and revoke the authorization in TimeToPost under Settings, API.