docs

Agent skill

The MCP tools give your agent hands; the skill gives it manners. It's one markdown file that teaches Claude the workflow that makes xpost work well: list accounts first, hand the person the link that comes back — whether the post is on its way or waiting for their yes — read the per-row bulk report, and report delivery honestly, including partial failures.

Install in any agent

npx skills add xpost-to/xpost-agent

One command, from the public repo at github.com/xpost-to/xpost-agent. It installs the skill into the agent you ran it from. The tools still come from the connector — add https://xpost.to/api/mcp as an MCP server in your client, or take one of the plugins below, which bring both.

Claude Code — plugin (skill + connector)

/plugin marketplace add xpost-to/xpost-agent
/plugin install xpost@xpost-agent

Type both inside Claude Code, then /mcp → xpost → sign in. No key to copy.

Gemini CLI — extension (skill + connector)

gemini extensions install https://github.com/xpost-to/xpost-agent

Gemini opens a browser to sign in to xpost on first use.

Cursor

Add xpost to Cursor in one click (it opens Cursor and asks you to sign in), then npx skills add xpost-to/xpost-agent for the skill.

By hand

mkdir -p ~/.claude/skills/xpost
curl -s https://xpost.to/docs/dist/SKILL.md \
  -o ~/.claude/skills/xpost/SKILL.md

Project-local works too: put it in .claude/skills/xpost/ inside the repo your agent works from. Claude picks it up automatically whenever a task smells like social posting.

What it teaches

  • · The full workflow: accounts → media → post → receipt
  • · Per-platform configuration — caption overrides, stories/reels placement, Pinterest boards, X first comments and threads
  • · Approval etiquette: a held post means "tell the user", a refusal means "fix it once, never evade"
  • · Bulk posting with the per-row report, and the curl fallback when MCP isn't available

Read it first

The whole skill is public: SKILL.md ↗. The local stdio MCP server is downloadable too (server.mjs + tools.mjs, needs npm i @modelcontextprotocol/server zod) — though the hosted connector needs no download at all.