Skip to content
OpenClaw

OpenClaw writes and schedules. You approve.

Two pieces, both already served by PostEveryPlatform: the MCP server, which OpenClaw signs in to without a key, and a skill file that teaches it the REST API. Use either one, or both.

server URL https://posteveryplatform.com/mcp

Works on every plan, Free included. Your plan's limits still apply.

Connect with MCP

Recommended. PostEveryPlatform's MCP server speaks Streamable HTTP and OAuth 2.1, so OpenClaw can sign in without a key.

terminal
# add the server: OAuth sign-in, no key
openclaw mcp add posteveryplatform \
  --url https://posteveryplatform.com/mcp \
  --transport streamable-http --auth oauth
# opens PostEveryPlatform: pick the workspace and what the agent may do
openclaw mcp login posteveryplatform
# lists the tools: create_post, get_schedule, get_analytics, ...
openclaw mcp doctor posteveryplatform --probe

The login opens PostEveryPlatform in your browser. You pick the workspace and tick what the agent may do (what each permission allows). OpenClaw never sees your password.

Use an API key instead

Make a key in PostEveryPlatform under AI agents (in the menu, and linked from Settings), then send it as a header in the server's config (mcp.servers.posteveryplatform in ~/.openclaw/openclaw.json). Leave auth out: OpenClaw ignores an Authorization header while auth is "oauth".

openclaw.json (JSON5)
{
  mcp: {
    servers: {
      posteveryplatform: {
        url: "https://posteveryplatform.com/mcp",
        transport: "streamable-http",
        // the key: never in a chat or a post
        headers: { Authorization: "Bearer pep_live_..." },
      },
    },
  },
}

Run openclaw mcp doctor posteveryplatform --probe after any change. Saving a server proves nothing; the probe does.

Treat a key like a password: anyone holding it can do what it allows. Delete it in the app when you no longer need it.

The skill (curl, no MCP needed)

The skill teaches OpenClaw the REST API (/api/v1) with curl. It goes in OpenClaw's managed skills folder, ~/.openclaw/skills:

terminal
mkdir -p ~/.openclaw/skills/posteveryplatform
curl -fsSL https://posteveryplatform.com/skill.md \
  -o ~/.openclaw/skills/posteveryplatform/SKILL.md

Then give it the key. The skill reads it from PEP_API_KEY: set it for the skill in ~/.openclaw/openclaw.json, under skills.entries.posteveryplatform.env (the skill's name). OpenClaw sets it for the agent's runs only. Without it every call answers 401.

openclaw.json (JSON5)
{
  skills: {
    entries: {
      posteveryplatform: {
        env: { PEP_API_KEY: "pep_live_..." },
      },
    },
  },
}

Good habits for an agent

The same over MCP or the REST API. Put them in the agent's instructions.

Check first, then post
preview_post (REST POST /api/v1/posts/preview) runs every check a real post runs and saves nothing. get_account_options (REST GET /api/v1/accounts/{id}/capabilities) says what each account takes: lengths, media, and per-platform options such as Pinterest boards.
Retry without a second post
Send an idempotency_key with create_post and upload_media, so a retry never makes a second post.
Hand over the review link
Every post comes back with a review_url. Give that link to the person, not a screenshot.
Hear about it instead of polling
With the webhooks scope the agent can add its own hooks (POST /api/v1/webhooks): post.published, post.failed, post.approved, post.rejected (with the owner's note), comment.received and more.

What the agent can and cannot do

As far as the key's or the sign-in's scopes allow. You pick those when you make the key or sign in.

Can
Read accounts, posts, ideas, media, tags, templates, stats and comments (read). Write drafts and ideas and upload media (draft). Schedule (schedule) and post now (publish). Reply to, like or hide comments (reply). Add its own webhooks (webhooks, off unless you tick it).
Cannot
Connect accounts, touch billing, or approve its own posts.
Posts OpenClaw schedules wait for your approval.

While Agent posts wait for my approval is on (the default), whatever it schedules waits on the Today board until you approve it. Approved posts leave at their time, or within a minute if that time has passed.

draftSaved. Nothing is sent.
pending_approvalWaiting for you.
scheduledApproved. Leaves on time.

The switch is under AI agents in the app. Replies to comments are not held: give the agent the reply permission only if you are happy for it to answer people.

More docs

The tools, permissions and limits are the same for every agent.

Checked against OpenClaw 2026.10.9's own docs (docs/cli/mcp.md, docs/cli/mcp/transports.md): the mcp add flags, login, doctor --probe, the mcp.servers keys, the managed skills folder ~/.openclaw/skills, and skills.entries.<name>.env (docs/tools/skills.md).