ShapelessAI

com.shapelessai由 shapelessai.com 發布官方發布者v0.3.5更新於 Nov 13, 2026

AI social media team for founders: posts and short video to LinkedIn, X, Instagram, TikTok and more.

已驗證Streamable HTTP可網頁執行效率與工作流商業與電商媒體與設計

概覽

AI 產生的概覽

ShapelessAI 是為創辦人打造的託管社群媒體團隊:助理可起草、排程並發佈貼文與短影音到已連結的平台。

可以做什麼
  • 在已連結的社群帳號上建立、排程、排隊、核准、發佈與撤下貼文,支援媒體、標題與首則留言
  • 列出已連結帳號,以及各平台的限制、媒體規則與設定結構
  • 執行在伺服器端持續運作的持久任務,並可列出、摘要、追蹤、續跑或停止任務,支援附件
  • 管理依排程發文的常駐代理,讀取或編輯品牌記憶與帳號素材
  • 生成圖片、影片素材、輪播、語音與字幕,並進行網頁搜尋,回傳可用於貼文的媒體鍵
適用情境
適合讓助理端到端經營創辦人或小團隊的社群媒體:起草並排程一週的貼文、維護核准與發佈佇列,或讓常駐代理在你不在時持續發文。
執行需求
透過 streamable HTTP 連線的遠端 MCP 端點,使用瀏覽器 OAuth 登入;無法開啟瀏覽器的用戶端需在 Authorization Bearer 標頭帶上 Settings -> API keys 產生的 API 金鑰。需要 ShapelessAI 帳號,金鑰範圍為 read、write 或 publish。本機 stdio 版本以 npx 執行,需 Node 20 以上及 SHAPELESS_API_KEY。
安裝前請注意
發佈會公開內容,需要 publish 範圍,應只授予呼叫端所需的範圍。涉及付費方案與額度:免費方案對每日貼文數與 X 貼文有限制,部分工具會消耗額度或預算。任務與代理會自行執行,並可能覆寫品牌記憶。內容、媒體與檔案會傳送到 ShapelessAI 的伺服器。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 ShapelessAI,將其新增到工作區。
  2. 連接 所需的 憑證。它們會被私密儲存,絕不會在公開頁面上展示。
  3. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/com.shapelessai%2Fshapeless/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。 客戶端會在首次連接時完成 OAuth 登入。

{
  "mcpServers": {
    "shapelessai": {
      "type": "http",
      "url": "https://shapelessai.com/mcp"
    }
  }
}

README

ShapelessAI

ShapelessAI runs your social presence: it drafts, schedules, and publishes content across your connected platforms, holds your Brand Memory, and keeps standing agents working while you sleep.

This repo is the public home of the agent surface: the shapeless CLI, the MCP server, the Claude Code plugin, and the issue tracker. Your agent or script drives a ShapelessAI account: write and schedule posts, create jobs and resume stuck ones, approve and publish, edit Brand Memory, manage the standing agents.

The documentation lives at shapelessai.com/docs - routes, scopes, platform limits, refusal codes, one page per subject. Every page also answers raw Markdown: append .md to its path (https://shapelessai.com/docs/posts.md) or send Accept: text/markdown. An agent that wants all of it in one fetch should read shapelessai.com/llms-full.txt.

Install

bash
npx shapelessai --help      # one-offnpm i -g shapelessai        # keeps `shapeless` on your PATH

Node 20 or newer.

Claude's directory

The connector Anthropic lists is https://shapelessai.com/mcp/social, the same account server without the media-generation tools (Anthropic's Software Directory Policy 4.B lists no software that generates images, video or audio with a model); its plugin bundle is plugins/shapeless-social. plugins/shapeless and https://shapelessai.com/mcp stay the full server, for this marketplace and every other host. Details: https://shapelessai.com/docs/mcp.

Authenticate

Mint a key in the studio: Settings -> API keys (/studio/api-keys). Give it only the scopes the caller needs - read, write, or publish. Only publish can put content out.

bash
shapeless login             # paste the key; we verify it and store it 0600export SHAPELESS_API_KEY=slk_...   # or: env var, beats the stored key

Config lives in ~/.config/shapeless/config.json. SHAPELESS_BASE_URL overrides the API host (default https://shapelessai.com). shapeless logout forgets the local copy; revoke the key itself in the studio.

Every command takes --json to print the raw API response, and --help.

Post

Write it yourself and put it on the rail - now, at a time, or in the account's next free queue slot. Needs the publish scope.

bash
shapeless connections                     # the accounts and their idsshapeless platforms                       # limits, media rules, settings schema (no key needed)
shapeless posts create --to <connectionId> --text "Shipping day."                       # nowshapeless posts create --to <connectionId> --text "..." --at 2026-09-21T09:00:00+03:00  # at a timeshapeless posts create --to <connectionId> --text "..." --queue                         # next free slotshapeless posts create --to <connectionId> --text "..." --media k1,k2 \  --first-comment "Link: https://..."      # LinkedIn, X, Blueskyshapeless posts create --to <youtubeConnectionId> --text "..." --media <clip.mp4 key> \  --title "The video title" --settings '{"privacyStatus":"unlisted"}'

The MCP tool is posts_create with the same arguments: connectionId, text, mediaKeys, title, scheduledAt or queue: true, settings, firstComment. Read platforms_list first for the platform's limits and its settingsSchema.

Free plan: ten posts a day on the rail, counted on the UTC day each post goes out on, so a week planned ahead is ten a day rather than ten in total. The eleventh answers 402 {code: "free_daily_cap", limit, day, resetsAt}, which names the day that is full. X bills per post, so Free posts to X once a day and without links (402 free_x_daily_cap, free_x_link); the $9 Scheduler plan lifts the daily cap and carries 150 X posts a month, and the agent plans have no cap. Composing, scheduling and publishing never spend credits, and Free also carries 125 credits a month for the agent team. Details: shapelessai.com/docs/posts.

Jobs: durable runs

A job is a run the server keeps going whether or not you stay connected - the right shape for agents and cron.

bash
# Fire and forgetshapeless jobs create draft three posts about our beta launch
# Watch it live (tails the event stream, falls back to polling)shapeless jobs create plan this week --label "Weekly plan" --budget 2.50 --watch
# Come back latershapeless jobs list               # 200 newest; prints a cursor if older jobs existshapeless jobs list --before <cursor>   # the next page backshapeless jobs show <id>          # transcript summary + outputsshapeless jobs tail <id>          # re-attach to the live stream
# Put files on the message - the agent sees the image, not just its nameshapeless jobs create does this thumbnail work? --attach ./thumb.png --attach ./notes.mdshapeless jobs continue <id> and this one --media-key workspace-assets/<account>/logo.png
# Resume a stuck or failed run - history is rebuilt server-sideshapeless jobs continue <id> keep going, but make the second post shorter --watch
shapeless jobs stop <id>

Posts: the queue

bash
shapeless posts list --status proposedshapeless posts show <id>shapeless posts approve <id> <id> <id>    # proposed -> scheduled  [publish]shapeless posts dismiss <id>shapeless posts publish <id>              # out, now  [publish]shapeless posts mark-posted <id> --url https://...

Agents, Brand Memory, assets

bash
shapeless agents listshapeless agents create --name "Daily reach" --prompt "..." --days mon,thu --hours 9shapeless agents edit <id> --status paused        # or: shapeless agents pause <id>shapeless agents wake <id>                        # run it now  [publish]
shapeless brain lsshapeless brain get positioning.mdshapeless brain put voice.md --file ./voice.md    # or pipe on stdinshapeless brain import ./pitch-deck.pdfshapeless brain export --out brain.zip
shapeless assets listshapeless assets upload ./logo.pngshapeless connections

MCP server

The hosted server is https://shapelessai.com/mcp. Add that URL to any host that speaks remote MCP - Claude (Settings -> Connectors -> Add custom connector), ChatGPT (Developer mode), Claude Code, Cursor, Codex, VS Code, Gemini CLI - and it opens a ShapelessAI tab to sign in and allow. OAuth, no key. The steps for each host, in the vendor's words, are at shapelessai.com/connect.

A client that cannot open a browser (the Agent SDK, a CI job, a self-hosted agent) skips OAuth: send an API key from Settings -> API keys as Authorization: Bearer slk_... to the same URL. Any MCP client that sets a header works; the scope is the key's.

bash
curl -s https://shapelessai.com/mcp -H "Authorization: Bearer $SHAPELESS_API_KEY" \  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
bash
claude mcp add --transport http --scope user shapeless https://shapelessai.com/mcp   # then /mcp -> Authenticatecodex mcp add shapeless --url https://shapelessai.com/mcp && codex mcp login shapelessgemini mcp add --transport http shapeless https://shapelessai.com/mcp

The same tools (posts_create, jobs_create, posts_approve, brain_write, ...) also run locally: shapeless mcp speaks MCP on stdio with the API key from shapeless login, and adds the tools that read your disk (assets_upload, brain_import, and files on a job message). Every tool carries a title and annotations - read-only tools run freely, anything that publishes, spends or overwrites is flagged destructive so a host asks you first - and each description names the scope it needs.

Beyond the account tools, every tool our own studio agent holds is its own MCP tool too: generate_image, generate_footage, edit_footage, render_carousel, speak, caption_file, web_search, x_pulse and the rest. Each answers the files it made as media keys you can publish with posts_create. The table with what each one costs is at shapelessai.com/docs/mcp; tools_list reads it live.

A job is a conversation, so work passes both ways between your terminal and the web app:

  • Every job result carries a url - https://shapelessai.com/studio/c/<id> - so an agent can hand the human back a link to what it just did.
  • jobs_brief <id> is the cheap read before replying: the last 30 messages clipped, reasoning and tool-activity dropped, an artifact inventory and post counts per queue status. Deterministic, no model in the loop. jobs_get still gives the full transcript.
  • jobs_list answers 200 jobs at a time, newest first, with a nextCursor; pass it back as before to walk further into the history.
  • jobs_tail <id> watches a job's run (60 seconds max, 200 events) and returns the events plus a cursor to resume from; a job with no run stream to attach to answers {live: false} instead of erroring.
  • jobs_create and jobs_continue take files: files (absolute local paths - .md/.txt ride inline, images, video, audio and PDF are uploaded here) and mediaKeys (anything already in the account, e.g. what assets_upload returned). Up to 6 per message. They land on the message the human sees in the studio, and the agent reads them for real - an image's pixels are inlined for that turn, not just its filename.

There is one prompt, continue (argument: id), which Claude Code surfaces as a slash command: it loads that conversation's brief and tells the agent to reply into the same thread with jobs_continue.

Running the stdio server instead of the hosted one - Claude Code:

bash
claude mcp add shapeless -e SHAPELESS_API_KEY=slk_... -- npx shapelessai mcp

Claude Desktop (claude_desktop_config.json), and other stdio-only hosts:

json
{  "mcpServers": {    "shapeless": {      "command": "npx",      "args": ["shapelessai", "mcp"],      "env": { "SHAPELESS_API_KEY": "slk_..." }    }  }}

Without the env var the server uses the key stored by shapeless login.

Agent Plugins (Cursor, Kiro, Copilot, Codex) and Gemini CLI

plugins/shapeless is also an Agent Plugins 1.0 package (plugin.json, mcp.json, skills/), so any client that loads that format installs the hosted MCP server and the skill from this repo. Gemini CLI reads gemini-extension.json at the root:

gemini extensions install https://github.com/ShapelessAI/shapelessai

Claude Code plugin

This repo is also a plugin marketplace. The shapeless plugin wires up the hosted MCP server and ships a skill that teaches Claude the ropes - scopes, the post queue, when to touch Brand Memory:

/plugin marketplace add ShapelessAI/shapelessai/plugin install shapeless@shapeless

Then run /mcp, pick shapeless and choose Authenticate - a browser tab signs you in once.

Where else ShapelessAI is listed

The same server and skill, installable from the registry your client already reads:

The API

Everything above rides one documented contract: shapelessai.com/docs/api - every route, the scope each needs, rate limits, and what deliberately refuses an API key. Machine-readable at /api/openapi.json.

PageWhat it answers
/docsStart here: key, MCP URL, CLI, the three moves
/docs/postsCreate, schedule, queue, media, first comment, every refusal
/docs/platformsLimits and rules per platform, live from GET /api/platforms
/docs/apiEvery route a key opens, and the scope it needs
/docs/cliThe shapeless command
/docs/mcpThe hosted MCP server and its tools
/docs/jobsDurable runs
/docs/brand-memoryThe account's durable knowledge
/docs/authKeys, scopes, OAuth, rate limits

Support and privacy

來源:README.md,提交 a92a397

工具

0
該伺服器需要登入,因此 SourceWeft 無法在沒有帳號的情況下讀取其工具,也未收錄。已連接帳號所能看到的內容可能因帳號及其權限而異。

版本歷史

6
  1. v0.3.5最新Nov 13, 2026
  2. v0.3.4Nov 12, 2026
  3. v0.3.3Oct 30, 2026
  4. v0.3.2Oct 29, 2026
  5. v0.3.1Oct 10, 2026
  6. v0.3.0Sep 29, 2026

評分

已滿足適用檢查項的 85%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分