ShapelessAI← Back
Start here

Shapeless for agents

An API key, an MCP URL and a CLI. The three moves that get a post out of an agent and onto a real account.

Verified
View as Markdown

Whole thing in one fetch: /llms-full.txt

Every route here works on the free plan: 10 posts a day, no card.

Shapeless is a social media team you drive from code. It holds the connected accounts, the Brand Memory, the media pipeline and the publishing rail; your agent sends it a post, or a goal, and gets back a real URL on a real platform.

There are three ways in, and they are the same account underneath:

SurfaceWhat it isBest for
APIHTTPS + an API keyscripts, cron, your own backend
CLInpx shapelessaia terminal, a CI job
MCPhttps://shapelessai.com/mcpClaude, ChatGPT, Cursor, Codex, VS Code, Gemini CLI

The three moves

1. Connect a social account. Once, in a browser, through the network's own sign-in: shapelessai.com/studio/accounts. Platform OAuth is a browser redirect carrying a platform grant, so it is the one step an agent cannot do for you.

2. Get a credential.

  • For the API and the CLI: mint an API key under Settings, API keys. The plaintext is shown once. Give it only the scopes the caller needs - see Authentication.
  • For MCP: no key. Add https://shapelessai.com/mcp to your host and sign in when the Shapeless tab opens.

3. Post.

curl -s https://shapelessai.com/api/posts \
  -H "Authorization: Bearer $SHAPELESS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"connectionId":"<id>","postText":"Shipped the thing.","queue":true}'
shapeless posts create --to <connectionId> --text "Shipped the thing." --queue
// MCP
{ "tool": "posts_create", "arguments": { "connectionId": "<id>", "text": "Shipped the thing.", "queue": true } }

connectionId comes from GET /api/connections (shapeless connections, connections_list).

What it costs

Free is an account with no paid plan, and it is not a countdown:

  • Manual, Queue, Calendar, per-platform previews, every connected platform, the API, the MCP server, the CLI and the Claude and ChatGPT connectors.
  • 10 posts a day through the rail, counted on the UTC day each post goes out on - so a week planned ahead is ten a day, not ten in total. Creating one and approving one both count.
  • $5 of credits a month for the agent team, refilled monthly - enough to have it research, write and render for you.

Paid plans (Spark $35, Growth $100, Studio $200) lift the daily cap and raise the credit allowance. See Pricing.

The cap answers 402 with {"code": "free_daily_cap", "limit": 5, "day": "2026-09-22", "resetsAt": "<ISO>"} - move the post to a day with room rather than retrying into it. Full refusal table on Posts.

Where to go next

  • Posts - create, schedule, queue, media, first comment, refusals.
  • Platforms - the limits we enforce before a post goes out.
  • Authentication - scopes, OAuth, rate limits.
  • API reference - every route a key opens.
  • Jobs - hand over a goal instead of a post.
  • Brand Memory - fix the source, not the symptom.

Reading these docs as an agent

Every page here answers Markdown as well as HTML:

  • Append .md to any path: https://shapelessai.com/docs/posts.md.
  • Or send Accept: text/markdown to the normal URL.
  • /llms.txt is the index of the whole site.
  • /llms-full.txt is every page in these docs concatenated, in nav order, in one fetch.