Skip to content
AI agent + Postemi

Your agent schedules the posts for you

Your agent writes the post, uploads the image and finds a time for it. You review and approve it in the Postemi calendar before it goes out.

Paste this to your AI agent:

Install the Postemi CLI: npm install -g posty-cli, then log in: posty auth:login. The package SKILL.md file describes every command, details: https://postemi.com/ai

ChatGPTClaudeCodexOpenClawHermesMuse
Getting started

Four commands, and it runs

You install, sign in, list the connected accounts, then schedule the first post. Your agent runs the same commands.

terminal
# The Postemi command-line tool
$ npm install -g posty-cli
# Sign in: approve in the browser
$ posty auth:login
# Which social accounts are connected?
$ posty integrations:list
[{ "id": "cmf3k7…", "name": "Cafe · Instagram" }]
# The first scheduled post
$ posty posts:create \
$ -c "New brunch menu this Saturday." \
$ -i "cmf3k7…" \
$ -s "2026-08-16 09:00" --timezone Europe/Budapest
✅ Post created successfully!
{ "id": "cmf7p2…", "state": "QUEUE" }

The CLI writes the JSON response to stdout, and status and errors to stderr. On failure it exits with a non-zero code. That way the agent knows whether it worked.

What you get

Three ways in, one Postemi account

Want to chat? MCP. Want to script? CLI. Want to integrate? REST API. All three work today.

Live MCP server

Your agent connects to https://api.posty.hu/mcp, and from then on it sees the same Postemi account you do. You create the key on the Automations → Developers page.

Published command-line tool

Install with: npm install -g posty-cli. The command name is posty.

Public REST API

The REST API is at api.posty.hu. It handles the same account as MCP and the CLI, just from your own code.

No training needed

SKILL.md ships in the npm package. The agent reads the real commands and flags from it, so you do not have to explain them.

The calendar is where you approve

The agent prepares and schedules. You have the last word before anything publishes. In the calendar you edit, reschedule or delete what you do not want.

You keep your own model

Postemi has no built-in AI writer, on purpose. You work with the model you already use. Postemi handles the publishing.

How it works

From accounts to approval

You set up the connection once. After that your agent does the work, and you decide in the calendar.

01

Connect your accounts

On the Postemi web app, you connect your social accounts with the usual OAuth flow. The agent later works with those accounts and refers to them by id.

Ids of the connected accounts
terminal
$ posty integrations:list
[
{ "id": "cmf3k7…", "name": "Cafe · Instagram" },
{ "id": "cmf3k9…", "name": "Cafe · Facebook" }
]
02

Create a key

Automations → Developers. Chat clients need an MCP key. The CLI and the REST API need an API key. We show the key once, when you create it.

Automations → Developers
.env
# Automations → Developers → New key
# We show the key once, when you create it.
# For the command line and the REST API:
POSTY_API_KEY=YOUR_API_KEY
# MCP clients get a separate key:
# psty_mcp_…
03

Hand it to the agent

Chat clients only need a URL. Terminal clients need a command or a config block. On the Developers page you pick the client and copy the ready-made setup.

Ready-made setup for every client
MCP setup
# Browser assistant (ChatGPT, Claude app):
# it only asks for this one address:
https://api.posty.hu/mcp/YOUR_API_KEY
# Claude Code:
claude mcp add posty --transport http \
"https://api.posty.hu/mcp/YOUR_API_KEY"
# Codex, ~/.codex/config.toml:
[mcp_servers.posty]
url = "https://api.posty.hu/mcp/YOUR_API_KEY"
04

Review it, then it can go

The agent puts the posts in the calendar. You go through them, fix what needs fixing, and only leave what can actually go out.

Scheduled, but not published yet
terminal
$ posty posts:list
[
{ "id": "cmf7p2…", "state": "QUEUE",
"publishDate": "2026-08-16T07:00:00Z" },
{ "id": "cmf7q8…", "state": "DRAFT",
"publishDate": "2026-08-18T06:30:00Z" }
]
Built for agents

Predictable input, a clear response

The agent does not have to fuss with the web UI. It gets a structured response, and it reaches the same account three ways.

  • Machine-readable JSONEvery command writes the JSON response to stdout, so the agent can parse it directly.
  • An error is really an errorThe CLI writes status and errors to stderr. On failure it exits with a non-zero code.
  • Skill file in the packageSKILL.md shows the available commands, the flags and the two rules you cannot skip.
  • A flat command setNo hidden state, and no step to guess: the agent works from a clear list.
  • Three ways to the same placeMCP for the conversation, CLI for scripts, REST API for your own code: the same account.
SKILL.md
---
name: posty
description: Posty schedules and publishes social posts
from the command line.
homepage: https://posty.hu
---
# Output contract
Every command prints its JSON result, and nothing
else, to stdout; status lines, warnings and errors
go to stderr, and every failure exits 1.
# Two Hard Rules (Read First)
Rule 1: Authenticate before anything.
Rule 2: Every file passed to `-m` MUST first go
through `posty upload`.

SKILL.md is part of the npm package. The agent reads the exact CLI usage from it: no extra training, and no invented flags.

Commands

What your agent can run

This is the full list: posts, social accounts, media, analytics, login, and the posts:create flags.

Posts
posty posts:createNew post: scheduled, as a draft, or published right away.
posty posts:listPosts in the given period. You can filter by client group too.
posty posts:delete <id>Delete a post by id.
posty posts:find-slot <id>The next free publishing time for a social account.
posty posts:status <id>Switch a post between draft and scheduled.
posty posts:missing <id>Content already on the platform for a post with a missing id.
posty posts:connect <id>Connect a post to content that is already published.
Social accounts
posty integrations:listConnected social accounts and their ids. This is what the -i flag needs.
posty integrations:groupsThe list of client groups, if you work with more than one brand.
posty integrations:settings <id>An account's settings schema, rules, length limit, and tools.
posty integrations:trigger <id> <method>Call a platform tool for extra data, for example to search for music.
Media and analytics
posty upload <file>Upload a media file. The URL you get back goes into the posts:create -m flag.
posty analytics:platform <id>A social account's stats going back the given number of days.
posty analytics:post <id>Performance of a single post.
Login and settings
posty auth:loginLog in with OAuth2 device authorization: the browser opens, you approve.
posty auth:logoutClear stored login data.
posty auth:statusShows whether you're logged in, and checks access too.
posty config:set <key> <value>Save a CLI setting, for example the default timezone.
posty config:get [key]Print the saved settings.
posts:create flags
-c, --contentThe post text. Repeat it to make a thread: the first is the post, the rest are comments.
-m, --mediaMedia for the -c that comes before it. The URL has to come from posty upload.
-i, --integrationsIds of the target social accounts, comma-separated.
--date, -sWhen to publish. Either with an explicit offset, or together with the --timezone flag.
--timezoneIANA timezone name, for example Europe/Budapest. Only pass a date with no offset together with this.
-t, --typeschedule (default), draft, or now.
-d, --delayDelay in MINUTES between items in the thread.
--jsonThe full post description from a JSON file, when the flags are not enough.
--settingsPlatform-specific settings as JSON. The schema comes from integrations:settings.

The full help is printed by posty --help. An unknown flag is not ignored: it errors. If it rejects a flag, that flag does not exist.

Supported platforms

One account, every channel

Connect your accounts in a few clicks, then post to every channel from Postemi.

Pricing

Fair pricing, no hidden costs

Every plan starts with a 7-day free trial. We bill in US dollars and issue a VAT invoice.

2 months free

Prices in US dollars. In Europe you pay the same amount in euros, in Switzerland in Swiss francs.

Basic

For solo creators new to scheduling
$13/mo
7-day free trial
$0 due today · Cancel anytime
  • 5 social accounts
  • 100 X posts a month
  • 1 workspace
  • One user
  • Not included: Advanced image editor
  • Not included: Viral video + UGC templates
  • Not included: Automations
  • Not included: API access
  • Not included: Posting with an AI agent
  • Unlimited posts
  • Multiple accounts per platform
  • Scheduling
  • Calendar view
  • Repeated posts
  • Post delays
  • Studio access
  • Analytics (beta)
  • Post comments
  • Dark & light mode

Pro

Most popular
For solo pros who automate, with API access
$25/mo
7-day free trial
$0 due today · Cancel anytime
  • 10 social accounts
  • 250 X posts a month
  • 1 workspace
  • One user
  • Not included: Advanced image editor
  • Not included: Viral video + UGC templates
  • Automations
  • API access
  • Posting with an AI agent
  • Unlimited posts
  • Multiple accounts per platform
  • Scheduling
  • Calendar view
  • Repeated posts
  • Post delays
  • Studio access
  • Analytics (beta)
  • Post comments
  • Dark & light mode

Creator

For teams with several brands, plus image and video editors
$49/mo
7-day free trial
$0 due today · Cancel anytime
  • 30 social accounts
  • 400 X posts a month
  • 5 workspaces
  • 15 users
  • Advanced image editor
  • Viral video + UGC templates
  • Automations
  • API access
  • Posting with an AI agent
  • Unlimited posts
  • Multiple accounts per platform
  • Scheduling
  • Calendar view
  • Repeated posts
  • Post delays
  • Studio access
  • Analytics (beta)
  • Post comments
  • Dark & light mode

Team

Highest limits
For agencies managing many channels
$99/mo
7-day free trial
$0 due today · Cancel anytime
  • 100 social accounts
  • 800 X posts a month
  • Unlimited workspaces
  • Unlimited users
  • Advanced image editor
  • Viral video + UGC templates
  • Automations
  • API access
  • Posting with an AI agent
  • Unlimited posts
  • Multiple accounts per platform
  • Scheduling
  • Calendar view
  • Repeated posts
  • Post delays
  • Studio access
  • Analytics (beta)
  • Post comments
  • Dark & light mode
Post to
  • TikTokTikTok
  • InstagramInstagram
  • FacebookFacebook
  • ThreadsThreads
  • LinkedInLinkedIn
  • YouTubeYouTube
  • XX
  • PinterestPinterest · beta
  • BlueskyBluesky
  • Google BusinessGoogle Business · coming soon
  • DiscordDiscord
  • TelegramTelegram
  • SlackSlack
FAQ

Common questions

Postemi handles these platforms: Facebook, Instagram, TikTok, LinkedIn, X, YouTube, Threads, Discord, Bluesky, Telegram, Slack and Pinterest (beta). Google Business Profile is coming soon, it cannot be connected yet. The agent only works with accounts already connected in Postemi.

Get started today

Hand scheduling overto your agent.

Connect your accounts, create a key, and pick MCP, the CLI or the REST API. The last word in the calendar stays yours.