Announce Releases on Social Media with Kiro IDE
Kiro can write and schedule the announcement for every feature it builds once you add the PostAxis MCP server to Kiro's mcp.json. The setup is one config block and a browser sign-in. After that, the final task of a spec can be "announce it", and Kiro drafts or schedules posts to the social accounts you connected in PostAxis. This guide is for developers and small teams using Kiro's spec-driven workflow who want shipping and announcing to be the same process.
Kiro's specs are a natural fit. A spec already holds the requirements (why the feature exists), the design (how it works) and the task list (what was built). That is most of what a good announcement needs, written down before the first line of code.
What you can automate with Kiro
- Spec-to-announcement. When the last coding task in a spec is done, Kiro writes an X post and a LinkedIn post from the spec's requirements and schedules them.
- Release notes from the changelog. A tagged release becomes posts for each network, with the full notes on Telegram.
- Draft-on-change. An agent hook drafts a post whenever the changelog is updated, so a draft is always waiting for review.
- Consistent voice. A steering file teaches Kiro how your project talks, so you don't repeat tone rules in every prompt.
- Queue checks. Ask what is scheduled and have Kiro fix posts that break a network's rules.
What you need
- A PostAxis account. Every plan starts with a 7-day free trial and includes MCP access with OAuth sign-in.
- Social accounts connected under Accounts in PostAxis (X, LinkedIn, Threads, Telegram, Instagram, TikTok, YouTube or Facebook Pages).
- Kiro installed and signed in.
- A project with specs or a
CHANGELOG.md, so Kiro has something concrete to announce.
How to connect Kiro to PostAxis (step by step)
- Create your PostAxis account. Sign up at app.postaxis.io. The trial includes MCP access.
- Connect your social accounts. Open Accounts in PostAxis and connect the networks you want. Kiro can only post to accounts connected here, and it never sees your social media passwords.
- Open the MCP config. Open the Kiro panel, go to MCP servers and click the edit icon. Or open the file directly: the user-level config applies to all workspaces, the workspace config to one project.
# all workspaces
~/.kiro/settings/mcp.json
# this workspace only
.kiro/settings/mcp.json
- Add the PostAxis block. Paste this and save. If
mcpServersalready exists, add only thepostaxisentry.
{
"mcpServers": {
"postaxis": {
"url": "https://postaxis.io/api/mcp"
}
}
}
- Sign in. Kiro reconnects automatically after you save. When it asks you to authenticate, approve on the PostAxis page in your browser.
- Check it works. In the Kiro chat, ask:
Which accounts can you post to?
Kiro asks before running list_accounts. Approve, and it lists your connected profiles. It asks before each PostAxis tool by default.
If you put the config in the workspace file and commit it, everyone on the team gets PostAxis in Kiro for that repo. Each person signs in to their own PostAxis account.
4 workflows you can copy
Make the announcement the last task of a spec
This is the workflow that makes Kiro worth using for this. When you review a spec's task list, add one final task. Kiro specs keep tasks in a tasks.md file inside the spec's folder; you can edit it by hand or ask Kiro to add the task.
- [ ] 7. Announce the feature
- Write an X post and a LinkedIn post from requirements.md: the user problem first, then what changed
- Link to https://example.com/docs/team-permissions
- Save both as drafts in PostAxis for review
When Kiro reaches this task, it reads the requirements and design documents, calls list_accounts and get_platform_rules, then create_post with a caption per account and draft status. The announcement is written from the same document the feature was built from, so it describes what users get rather than which files changed.
If the spec is already finished, just ask:
This spec is done. Write an X post and a LinkedIn post about it and schedule them
for 10:00 tomorrow Europe/Paris.
You get a reply like: "Scheduled both for 10:00 tomorrow. The LinkedIn post explains the problem the feature solves; the X post links to the docs."
Turn a tagged release into posts for every channel
For a release that bundles several specs, start from the changelog.
Read the 1.8.0 section of CHANGELOG.md. Write one post for X (the biggest change,
one sentence), one for LinkedIn (3 short paragraphs for engineering managers) and
one for our Telegram channel (the full notes, grouped by New, Improved, Fixed).
Schedule them all for Thursday at 16:00 America/New_York.
Kiro calls get_platform_rules to check each limit, then a single create_post that targets all three accounts with separate captions. One post, one time, one ID in the PostAxis calendar.
Draft a post whenever the changelog changes
Kiro's agent hooks run an instruction when something happens in the workspace, such as a file being saved. You create hooks from the Agent Hooks section of the Kiro panel by describing them in plain language. Something like:
When CHANGELOG.md is saved, read the newest section and, if it has changed since the
last draft, save a Telegram draft in PostAxis with those notes. Never schedule or publish.
The hook calls list_posts to see recent drafts, then create_post with draft status. You end up with a draft waiting in PostAxis every time you update the changelog, and nothing goes out until you schedule it. Hook options and triggers can change between Kiro versions, so check the current hook settings when you set it up.
Plan and validate a launch week
For a bigger launch, have Kiro lay out the posts and check them all before anything is saved.
Plan 8 posts for the week of the 2.0 launch across X, LinkedIn and Threads,
Monday to Friday at 9:00 Europe/Paris. Use the specs in .kiro/specs for content.
Validate the whole plan first without saving and show me any problems.
Kiro calls create_posts_bulk with validate_only set to true. PostAxis checks every post against every network's rules and saves nothing. After you approve, Kiro runs the same call for real. Bulk calls handle up to 50 posts and can't publish immediately, so every post in the plan needs a time.
Network limits Kiro works within
| Network | Caption limit | Media rules |
|---|---|---|
| X (Twitter) | 280 characters | Text-only allowed; up to 4 images or one video |
| 3,000 characters | Text-only allowed; up to 9 images or one video | |
| Threads | 500 characters | Text-only allowed; up to 10 images or one video |
| Telegram | 4,096 characters (1,024 with media) | Text-only allowed; up to 10 images or one video |
PostAxis checks every post against these rules before saving it. If a caption is too long or the media doesn't fit, Kiro gets an error explaining what to change and can fix it, which is much better than finding a failed post after the launch. If you add a screenshot to a Telegram post, keep the caption under 1,024 characters.
Tips for better posts
- Write a steering file for announcements. Kiro reads steering files from
.kiro/steering/in your workspace. Add one (for exampleannouncements.md) with your audience, tone, phrases to avoid, docs URL and default timezone. Every spec task and hook will follow it. - Write requirements that explain the user problem. A spec that says why the feature exists produces a far better post than one that only lists components.
- Validate before bulk scheduling. Use
validate_onlyfor any multi-post plan. - Always give a timezone. "10:00 Europe/Paris" is unambiguous; "10am" is not.
- Keep hooks to drafts. Hooks run without you typing anything, so let them create drafts and do the scheduling yourself.
- Use media you already have. PostAxis does not generate images or video. Kiro can attach a screenshot from a public URL with
upload_media_from_urlor a local file through a one-time link fromcreate_upload_link.
Troubleshooting
PostAxis doesn't appear in the MCP servers list. Check the JSON is valid and that the entry sits inside mcpServers. Kiro reconnects when you save; if it doesn't, use the reconnect option in the MCP servers view.
Kiro says no accounts are connected. Connect at least one account under Accounts in PostAxis. If you use several workspaces, tell Kiro which one: "use my Acme workspace".
401 Unauthorized or "sign in again". The sign-in expired or was revoked. Reconnect PostAxis in Kiro and sign in again.
A post was rejected before saving. PostAxis checks caption length, media count and video format first. Ask Kiro to fix what the error says and retry.
Posts were scheduled at the wrong time. Say the timezone in every request, or put a default in your steering file. Without one, the agent uses the timezone it was told or UTC.
FAQ
Can Kiro post to social media?
Yes. With the PostAxis MCP server in mcp.json, Kiro can draft, schedule and publish posts to X, LinkedIn, Threads, Telegram, Instagram, TikTok, YouTube Shorts and Facebook Pages connected in your PostAxis account.
Can I share the Kiro config with my team?
Yes. Put the block in .kiro/settings/mcp.json in the repository. Each person still signs in to their own PostAxis account, so nobody shares credentials.
Does Kiro ask before posting?
Yes. Kiro asks before running each PostAxis tool by default. If you automate with hooks, keep them to drafts so a person always does the final scheduling.
Does Kiro see my social media passwords?
No. Social accounts are connected inside PostAxis, and Kiro signs in to PostAxis with OAuth. You can revoke access at any time under Settings → API keys → Connected agents.
How much does it cost?
MCP access with OAuth is included in every PostAxis plan, and every plan starts with a 7-day free trial. Kiro uses OAuth, so you don't need the API add-on.
Add the config, write a short steering file, and put "announce it" at the end of your next spec. The Kiro agent page has the setup on one screen, the MCP reference lists all 11 tools, and the complete guide to AI agents for social media compares Kiro with other agents. If your team mixes editors, see the Windsurf guide and the Roo Code guide. Ready to try it? Start your free trial.
Ready to simplify your social media?
PostAxis helps builders and creators publish to all platforms from one dashboard with scheduling, cross-posting, and automation.
Join the waitlist →