The post scheduler for people and their agents
Your agents write the posts. Staqly keeps the rhythm.
Plan a month of posts in one sitting with Claude Code, Codex or n8n. Staqly publishes each one when your audience is online: on X today, with Instagram, TikTok and YouTube on the way.
Works with the agents and tools you already use
# once: claude mcp add --transport http staqly https://app.staqly.ai/mcp --header "Authorization: Bearer $STAQLY_API_KEY"$ claude "Write three reel captions into Reels, one per evening this week"⏺ staqly · create_post → Reels (X, Instagram via n8n)⏺ staqly · schedule_post → Wed 18:00, Thu 18:00, Fri 18:00→ 3 posts on the calendarHow it works
Write. Schedule. Publish.
Posts live in collections, collections have schedules, schedules publish to channels. Everything else, from per-channel text to retries and alerts, follows from that.
- 01
Write
You, Claude Code, Codex, n8n or a script write posts into a collection, over MCP or REST: text, media and a version per channel.
- 02
Schedule
Give a post a time, or let the collection do it: weekdays at 09:00, every six hours, the next waiting post or all of them.
- 03
Staqly publishes
A durable job queue publishes every channel, retries failures and records the link. When a collection runs dry, the schedule asks your agent with
list_requested_work.

Channels
X today. Any platform through your automation.
Connect X once and every post can go there, with its own text and the platform's limits checked before it leaves. Anything else goes through your own automation: Staqly hands the post to an n8n workflow or a script and records the link it sends back. The platforms marked Soon are not available yet; the composer already knows their limits and settings, so posts for them can be prepared.
- X
- Your own automation
- InstagramSoon
- TikTokSoon
- YouTubeSoon
- ThreadsSoon
- FacebookSoon
- PinterestSoon
- inLinkedInSoon
- BlueskySoon
- MastodonSoon
- TelegramSoon
- DiscordSoon
- RedditSoon
- TwitchSoon
- KickSoon
- TumblrSoon
- Google BusinessSoon
- WordPressSoon
- MediumSoon
- Dev.toSoon
Connect your agent
One line. Then just ask.
Create a workspace, copy your API key and add staqly to your agent over MCP. It can then write posts, put them on the calendar and refill a collection when a schedule asks.
- “Draft five posts about the new release into Product updates, one per weekday morning.”
- “What is scheduled this week?”
- “Make the X version shorter and publish it now.”
# Claude Code$ claude mcp add --transport http staqly https://app.staqly.ai/mcp \ --header "Authorization: Bearer $STAQLY_API_KEY"# Codex$ codex mcp add staqly --url https://app.staqly.ai/mcp \ --bearer-token-env-var STAQLY_API_KEY# or plain REST, from anything$ curl -X POST https://app.staqly.ai/v1/posts \ -H "Authorization: Bearer $STAQLY_API_KEY" -H 'Content-Type: application/json' \ -d '{"collection":"Default","content":"v1.4 is out.","targets":[{"channel_id":"ch_..."}],"publish_now":true}'→ 201 {"id":"post_8f2...","status":"publishing"}Features
Built for posts that keep coming.
A calendar, not a queue
Day, week, month and list views. Drag a post to another slot, add one into a free hour, see the upcoming schedule runs next to the posts.
Learn moreSchedules per collection
Weekdays at 09:00, every six hours, once on Friday. The next waiting post, chosen posts or all of them. Time zones that survive daylight saving.
Learn moreAgents that refill the queue
When a collection runs dry, the schedule asks your agent for new posts, or calls an endpoint of yours that returns them.
Learn moreOne post, every channel
A text per channel where it matters, a character counter per platform and a preview that says what each one objects to before anything goes out.
Learn moreYour own automation as a channel
Hand a post to n8n or a script, get the link back. Any platform, any internal tool, same calendar and same history.
Learn moreA queue you can see
Publishing and schedule runs are durable jobs with retries. Settings shows what is queued, running or failed, with a Retry.
Learn moreAlerts where you are
Telegram, Slack, Discord, ntfy or email when a post goes out or fails, when a channel needs reconnecting or a schedule asks for more.
Learn moreCLI, SDKs, REST, MCP
staqly posts create from cron, @staqly/sdk and the Python client in your code, 100 MCP tools for your agent, one OpenAPI contract behind all of it.
Learn moreFull history
Every post, channel and schedule change is an event. Signed webhooks deliver them; back up, export everything or purge a post for good.
Learn moreWhy it's safe
Your accounts, your keys, your say.
Staqly holds the calendar and the credentials on the server it runs on, ours or yours when you self-host, and publishes exactly what is on it.
Credentials stay sealed
Platform tokens are encrypted with a key that stays on the server Staqly runs on, never returned by any API call, and used only there.
Writing is not publishing
A drafting agent gets posts:write and fills collections. Only your schedules, you or a publisher key with posts:publish put a word on your channels.
Every post on record
Who wrote it, when it was scheduled, which channel published it with which link, and why one failed: kept with every post.
Signed webhooks, scoped keys
Automations can verify every event. Each API key sees one workspace and only the scopes you gave it.
Use cases
See it applied.
Let your agent write a week of posts, publish one every morning
Claude Code or Codex drafts into a collection; a schedule publishes the next waiting post every weekday at 9 and asks the agent for more when it runs dry.
Read moreOne post, every channel, each in its own length
Write once, pick the channels, and give X its 280 characters while your blog or newsletter, through your own automation, gets the long version. Staqly checks each platform’s limits before anything goes out.
Read morePublish through n8n or your own script, keep the calendar
A channel on "your own automation" hands each post to a webhook receiver and waits for the link back. Any platform, any internal tool, same calendar.
Read moreFree tools
Try it before you sign up.
Best time to post
A weekly heatmap of strong posting hours for Instagram, TikTok, YouTube, X, LinkedIn and more, in your audience’s time zone and yours.
Open the toolCharacter counter for every platform
Paste a caption and see at once where it fits: Instagram, TikTok, YouTube, X, Threads, LinkedIn, Bluesky and more, links handled the way X wants them.
Open the toolAspect ratio checker
Drop a picture or video, or type its size, and see how it fits Instagram, TikTok, YouTube, X, LinkedIn, Facebook, Threads and Pinterest, with a live crop preview.
Open the toolSchedule validator
Check a posting plan before it runs: posts per day for Instagram, TikTok, YouTube and more, posts too close together, quiet days, hours your audience sleeps and clock changes.
Open the toolLinks to plain text
Turn links into readable text that no platform treats as a link (example[.]com), take them out, or turn plain text back into links.
Open the toolOpen source
AGPL-3.0, self-hostable, no lock-in.
The whole app is open source. Prefer to run it on your own machine or server? Staqly Community Edition is one binary with no plan limits that runs in the background on macOS or Linux (or one Docker container): one workspace, opened with the access token it prints at start. You take care of backups and updates yourself.
Community Edition quickstart$ curl -fsSL https://raw.githubusercontent.com/staqly/staqly/main/scripts/install.sh | sh$ staqly service install # runs in the background, starts with your computerFAQ
Questions, answered.
What makes Staqly different from other post schedulers?
It is built for agents as much as for people. Claude Code, Codex or n8n write posts over MCP or REST, collections carry their own schedules, and when a collection runs dry the schedule asks your agent for more. It is also open source and runs on your own machine if you want.
Which platforms can it publish to?
Today X, and any other platform through your own automation: an n8n workflow or a script that publishes the post and sends the link back. Instagram, TikTok, YouTube, LinkedIn and the other platforms on the channel list are not available yet; the composer already knows their limits and settings, so posts for them can be prepared.
Can I use it without an AI agent?
Yes. The dashboard has a composer, a calendar you can drag posts around in, and per-channel previews. Agents are optional.
Does an agent publish without me?
Only if you let it. Writing and publishing are separate permissions: a drafting agent fills collections, and only your schedules, you or a key with the publish permission put a post on your channels.
What happens when a platform is down?
Publishing is a queued job. A failed channel retries on its own, the others are not held back, and you get an alert with the platform’s error and a Retry for that channel.
Can I host it myself?
Yes. Staqly is AGPL-3.0: one binary or one Docker container, no plan limits, your data on your disk. It runs one workspace and prints an access token at start for your browser and agents; OAuth platforms such as X need your own developer app. The hosted version saves you backups and updates.