### Onboarding response with open items and how instructions Source: https://shapelessai.com/docs/brand-memory Example response from the onboarding endpoint. Contains a percent completion, an open array with items to process, and a how field explaining the workflow: ask questions, write answers as markdown, PUT the file, and GET again until open is empty. ```jsonc { "percent": 41, "open": [ { "path": "voice.md", "question": "How do you sound?", "gainPercent": 18, "questions": [ { "level": 1, "question": "How do you sound?", "hint": "Three words..." } ] } ], "done": false, "how": "For each open item: ask the human its questions, write the answers as markdown under the question headings, PUT /api/workspace/file {path, content}, then GET this again until open is empty." } ``` -------------------------------- ### Example platform configuration JSON Source: https://shapelessai.com/docs/platforms Example response from GET /api/platforms showing the structure for a platform. Includes fields like 'oauth', 'live', 'text', 'media', 'titleRequired', 'firstComment', 'settingsSchema', and 'connectPath'. The 'settingsSchema' is plain JSON Schema. ```json { "platforms": [ { "id": "linkedin", "label": "LinkedIn", "oauth": true, // connectable through the platform's own sign-in today "live": true, // publishing works end to end; false = built, waiting on the platform "waitingOn": null, // why it is not live, when it is not "text": { "maxChars": 3000 }, "media": { "maxChars": 3000, "maxImages": 20, "minImages": 0, "allowsPdf": true, "maxVideos": 1, "requiresVideo": false, "imagesOrVideoOnly": true }, "titleRequired": false, // true = documentTitle is required (YouTube) "firstComment": { "supported": true, "maxChars": 1250 }, "settingsSchema": { "type": "object", "properties": {}, "additionalProperties": false }, "connectPath": "/studio/accounts" } ] } ``` -------------------------------- ### Install Source: https://shapelessai.com/docs/ai-sdk Install the shapelessai-ai-sdk package and its peer dependencies. ```APIDOC ## Install ### Description Install the shapelessai-ai-sdk package and its peer dependencies. ### Command ```bash npm install shapelessai-ai-sdk ai ``` ### Requirements - Node 18 or newer - `ai` 6 or newer - `zod` 3.25 or 4 (peer dependency) ``` -------------------------------- ### Shapeless CLI commands for characters, brain, agents, and assets Source: https://shapelessai.com/docs/cli A set of example commands for listing characters, cloning a voice (spending credit), managing brain data (list, get, put, import, export), waking agents, and uploading assets. Comments indicate actions like spending credit and publishing. ```bash shapeless characters list shapeless characters voice maya --describe "warm documentary narrator, mid-40s, slight gravel" # SPENDS CREDIT shapeless characters voice maya --clone workspace-assets//take.weba --consent shapeless brain ls shapeless brain onboarding # what is still open, as questions to answer shapeless brain get positioning.md shapeless brain put voice.md --file ./voice.md shapeless brain import ./pitch-deck.pdf shapeless brain export --out brain.zip shapeless agents list shapeless agents wake # [publish] shapeless assets list shapeless assets upload ./logo.png ``` -------------------------------- ### Configure Shapeless MCP server in .vscode/mcp.json Source: https://shapelessai.com/connect/vscode Manual setup for VS Code: add this JSON to .vscode/mcp.json, then start the server from the MCP view. VS Code opens a browser tab for sign-in and authorization. ```json { "servers": { "shapeless": { "type": "http", "url": "https://shapelessai.com/mcp" } } } ``` -------------------------------- ### Install Gemini CLI extension from repo Source: https://shapelessai.com/docs/integrations Installs the ShapelessAI extension for Gemini CLI from the GitHub repository. Run this command in a terminal. ```bash gemini extensions install https://github.com/FirstClassTree/shapelessai ``` -------------------------------- ### Install ShapelessAI Claude Code plugin Source: https://shapelessai.com/docs/integrations Adds the ShapelessAI plugin marketplace and installs the plugin. After installation, run /mcp, pick shapeless, and authenticate via the MCP server. ```text /plugin marketplace add FirstClassTree/shapelessai /plugin install shapeless@shapeless ``` -------------------------------- ### Use the tools Source: https://shapelessai.com/docs/ai-sdk Use the shapelessaiTools factory to get all tools, or import individual tools. ```APIDOC ## Use the tools ### Description Use the shapelessaiTools factory to get all tools, or import individual tools. ### Example ```javascript import { generateText, isStepCount } from "ai"; import { shapelessaiTools } from "shapelessai-ai-sdk"; const { text } = await generateText({ model: "openai/gpt-5-mini", prompt: 'Schedule "We just shipped dark mode" to my LinkedIn in the next free slot.', tools: shapelessaiTools(), stopWhen: isStepCount(5), }); ``` ### Tools - `listAccounts` - The connected accounts a post can go to, with the `connectionId` the other tools take. Call it first. - `createPost` - A post on one account: the account's next free queue slot by default, a set time with `scheduledAt`, or right away with `publishNow`. - `listPosts` - Recent posts with status, scheduled time, the live URL once published, and the error when one failed. ### Individual Exports - `listAccounts()` - `createPost()` - `listPosts()` ### Factory Options - `{ apiKey, baseURL, needsApproval }` ``` -------------------------------- ### Install Claude Code plugin for Shapeless Source: https://shapelessai.com/docs/integrations Adds the Shapeless plugin marketplace and installs the 'shapeless' plugin. After installation, use /mcp to select shapeless and authenticate. ```bash /plugin marketplace add FirstClassTree/shapelessai /plugin install shapeless@shapeless ``` -------------------------------- ### Error response examples for 402 and 422 Source: https://shapelessai.com/docs/posts Worked examples of error responses. The 402 shows the free_daily_cap shape with limit, day, resetsAt, and upgrade links. The 422 examples show platform rule violations: too many images, missing video, images and video together, and unsupported first comment. ```json // 402 {"code":"free_daily_cap", "error":"The Free plan posts 10 a day and 2026-09-22 (UTC) is full. Pick another day, or upgrade for unlimited posts.", "limit":10,"day":"2026-09-22","resetsAt":"2026-09-23T00:00:00.000Z", "upgrade":{"pricing":"https://shapelessai.com/pricing", "checkout":[{"tier":"spark","name":"Spark","priceUsd":35,"monthlyCreditUsd":30, "url":"https://shapelessai.com/api/checkout?tier=spark"}, ...]}} // 422 {"error":"Takes at most 4 images (this post has 7)."} {"error":"Needs a video before it can publish."} {"error":"Takes images OR a video in one post, never both - drop one kind."} {"error":"instagram has no first comment: it is supported on LinkedIn, X and Bluesky."} ``` -------------------------------- ### Example prompts for Discord posts Source: https://shapelessai.com/mcp/discord These are example prompts you can give to the host in chat to create Discord posts. Drafts are queued for approval unless specified otherwise, and the host asks before publishing or spending. ```text Post the release notes to our #announcements channel on Discord, with the new-feature screenshot. ``` ```text Write a short Discord post inviting the community to Thursday's office hours and schedule it for Wednesday 5pm. ``` ```text Every Monday, draft a Discord post for #updates with what shipped last week; I approve each one. ``` -------------------------------- ### Install shapelessai-ai-sdk and ai Source: https://shapelessai.com/docs/ai-sdk Install the package with npm. Requires Node 18 or newer, ai 6 or newer, and zod 3.25 or 4 as peer dependencies. ```bash npm install shapelessai-ai-sdk ai ``` -------------------------------- ### Install Gemini CLI extension Source: https://shapelessai.com/docs/integrations Installs the ShapelessAI extension for Gemini CLI from the repository. Run this command in your terminal. ```bash gemini extensions install https://github.com/FirstClassTree/shapelessai ``` -------------------------------- ### Install shapelessai-ai-sdk and ai Source: https://shapelessai.com/docs/ai-sdk Install the package with npm. Requires Node 18 or newer, ai 6 or newer, and zod 3.25 or 4 as peer dependencies. ```bash npm install shapelessai-ai-sdk ai ``` -------------------------------- ### GET /api/workspace/onboarding Source: https://shapelessai.com/capabilities/brand-memory Retrieves the open onboarding questions and hints. Requires read scope. ```APIDOC ## GET /api/workspace/onboarding ### Description Retrieves what is still open in Brand Memory, as questions a human answers, with hints. ### Method GET ### Endpoint /api/workspace/onboarding ### Authentication Bearer API key with read scope. ### Response #### Success Response (200) - **questions** (array) - List of open questions with hints. #### Response Example { "questions": [ { "question": "What is your target audience?", "hint": "Consider demographics and interests." } ] } ``` -------------------------------- ### Example prompts for TikTok MCP Source: https://shapelessai.com/mcp/tiktok These are example prompts you can use with the TikTok MCP server. They cover creating videos, repurposing content, and managing the schedule. ```text Script and render a 30-second TikTok about the bug we fixed today, hook in the first second, captions on. ``` ```text Turn our latest blog post into a TikTok: doc-narrator style, our actor, vertical, under 45 seconds. ``` ```text What is scheduled for TikTok this week? Move Thursday's video to Friday 6pm. ``` -------------------------------- ### Install shapeless CLI with npx or npm Source: https://shapelessai.com/docs/cli Install the shapeless CLI either as a one-off command with npx or globally with npm. Requires Node 20 or newer. ```bash npx shapelessai --help # one-off npm i -g shapelessai # keeps `shapeless` on your PATH ``` -------------------------------- ### Install shapeless CLI and MCP server Source: https://shapelessai.com/docs/cli Install the shapeless package either one-off with npx or globally with npm to keep the 'shapeless' command on your PATH. Requires Node 20 or newer. ```bash npx shapelessai --help # one-off npm i -g shapelessai # keeps `shapeless` on your PATH ``` -------------------------------- ### jobs_create Source: https://shapelessai.com/connect/chatgpt/telegram Starts a durable job from a goal, optionally with files attached. ```APIDOC ## jobs_create ### Description Start a durable job from a goal, optionally with files attached. The run keeps going server-side; returns the job id and its web url to poll or continue. ### Runs Drafts ### Parameters - **goal** (string) - Required - The goal for the job. - **files** (array) - Optional - Files to attach to the job. ### Response - **job_id** (string) - The ID of the created job. - **web_url** (string) - The web URL to poll or continue the job. ``` -------------------------------- ### jobs_create Source: https://shapelessai.com/connect/chatgpt/facebook Starts a durable job from a goal, optionally with files attached. ```APIDOC ## jobs_create ### Description Start a durable job from a goal, optionally with files attached. The run keeps going server-side; returns the job id and its web url to poll or continue. ### Method MCP Tool ### Endpoint `jobs_create` ### Parameters - **goal** (string) - Required - The goal for the job. - **files** (array) - Optional - Files to attach to the job. ### Response - **job_id** (string) - The ID of the created job. - **web_url** (string) - The web URL to poll or continue the job. ### Response Example { "job_id": "job_123", "web_url": "https://shapelessai.com/jobs/job_123" } ``` -------------------------------- ### curl example: GET /api/connections Source: https://shapelessai.com/capabilities/connected-accounts Example curl command to list connected accounts. Uses an Authorization header with a Bearer token. ```bash curl -s https://shapelessai.com/api/connections -H "Authorization: Bearer ``` -------------------------------- ### Publish now with CLI Source: https://shapelessai.com/docs/posts CLI equivalent for immediate publishing. ```bash shapeless posts create --to c_123 --text "Shipped." ``` -------------------------------- ### Onboard workspace via API with curl Source: https://shapelessai.com/docs/brand-memory Use this curl command to start the onboarding process for a workspace. Requires a Shapeless API key stored in the SHAPELESS_API_KEY environment variable. ```bash curl -s https://shapelessai.com/api/workspace/onboarding -H "Authorization: Bearer $SHAPELESS_API_KEY" ``` -------------------------------- ### Onboard workspace via CLI with shapeless brain onboarding Source: https://shapelessai.com/docs/brand-memory Use the Shapeless CLI command to start the onboarding process for a workspace. ```bash shapeless brain onboarding ``` -------------------------------- ### Example API response for platforms Source: https://shapelessai.com/docs/platforms Shows the structure of the response from GET /api/platforms, including fields like id, label, oauth, live, waitingOn, text, media, and titleRequired. The response includes comments indicating that oauth true means connectable through the platform's own sign-in, and live false means built but waiting on the platform. ```json { "platforms": [ { "id": "linkedin", "label": "LinkedIn", "oauth": true, // connectable through the platform's own sign-in today "live": true, // publishing works end to end; false = built, waiting on the platform "waitingOn": null, // why it is not live, when it is not "text": { "maxChars": 3000 }, "media": { "maxChars": 3000, "maxImages": 20, "minImages": 0, "allowsPdf": true, "maxVideos": 1, "requiresVideo": false, "imagesOrVideoOnly": true }, "titleRequired": false, // true = documentTitle is required ``` -------------------------------- ### Publish immediately with CLI Source: https://shapelessai.com/docs/posts CLI equivalent for immediate publishing using the shapeless posts create command. ```bash shapeless posts create --to c_123 --text "Shipped." ``` -------------------------------- ### POST /api/studio Source: https://shapelessai.com/docs/api Starts a studio session. This endpoint likely initializes a new studio environment. ```APIDOC ## POST /api/studio ### Description Starts a studio session. This endpoint likely initializes a new studio environment. ### Method POST ### Endpoint /api/studio ``` -------------------------------- ### shapeless brain onboarding Source: https://shapelessai.com/capabilities/brand-memory Shows open onboarding questions via CLI. ```APIDOC ## shapeless brain onboarding ### Description Shows what is still open in Brand Memory as questions. ### Method CLI ### Command shapeless brain onboarding ### Authentication Requires API key configured in the CLI. ### Response #### Success Response (0) - **questions** (array) - List of open questions. #### Response Example Q1: What is your target audience? Q2: What is your unique value proposition? ``` -------------------------------- ### Onboard workspace via MCP tool brain_onboarding Source: https://shapelessai.com/docs/brand-memory Use the MCP tool brain_onboarding with empty arguments to start the onboarding process. ```jsonc // MCP { "tool": "brain_onboarding", "arguments": {} } ``` -------------------------------- ### GET /api/me Source: https://shapelessai.com/capabilities/connected-accounts Gets who am I: account, plan, credit balance. Requires read scope. ```APIDOC ## GET /api/me ### Description Gets who am I: account, plan, credit balance. Requires read scope. ### Method GET ### Endpoint /api/me ### Authentication Bearer API key with read scope. ### Response #### Success Response (200) - **account** (object) - Account details. - **plan** (string) - The plan name. - **credit_balance** (number) - The credit balance. ``` -------------------------------- ### GET /api/posts/cap Source: https://shapelessai.com/docs/api Retrieves the post cap. Use this endpoint to get the current cap on posts. ```APIDOC ## GET /api/posts/cap ### Description Retrieves the post cap. ### Method GET ### Endpoint /api/posts/cap ``` -------------------------------- ### POST /api/videos/demo Source: https://shapelessai.com/capabilities/record-demo Creates a demo video by sending a request with a name, URL, and steps. Requires an API key for authorization. ```APIDOC ## POST /api/videos/demo ### Description Creates a demo video by providing a name, URL, and steps. The request must include an Authorization header with a Bearer token. ### Method POST ### Endpoint https://shapelessai.com/api/videos/demo ### Parameters #### Request Body - **name** (string) - Required - The name of the demo. - **url** (string) - Required - The URL to record. - **steps** (string) - Required - The steps to perform, separated by semicolons. ### Request Example ```bash curl -s https://shapelessai.com/api/videos/demo -H "Authorization: Bearer $SHAPELESS_API_KEY" -H "Content-Type: application/json" -d '{"name":"signup demo","url":"https://example.com","steps":"click Get started; type founder@example.com into Email; click Continue"}' ``` ### Response #### Success Response (200) No response body details are provided in the source. #### Error Responses - **400** - The input does not match the tool's schema; the message names the field. - **402** - Not enough credit to hold budgetUsd, or the call costs more than budgetUsd. - **404** - No such tool on this deployment. - **422** - The tool refused this input; nothing was charged. - **502** - The tool failed; nothing was charged. ``` -------------------------------- ### reference_read Source: https://shapelessai.com/capabilities/agent-tools Read 1 to 3 exemplars from reference_search in full: why they worked, their structure and beats, the transcript and on-screen text, and the recipe to rebuild the format for another brand. Free to use, with a budget held during execution. ```APIDOC ## reference_read ### Description Read 1 to 3 exemplars from reference_search in full: why they worked, their structure and beats, the transcript and on-screen text, and the recipe to rebuild the format for another brand. Free to use, with a budget held during execution. ### Method Not specified ### Endpoint Not specified ### Parameters - **reference_ids** (array of strings) - Required - IDs of the references to read (1 to 3). - **budgetUsd** (number) - Optional - Maximum budget in USD (default 2, max 10). Held while the tool runs and released after. ### Request Example { "reference_ids": ["ref1", "ref2"], "budgetUsd": 2 } ### Response #### Success Response - **exemplars** (array) - Full details of each reference, including why they worked, structure, transcript, and recipe. #### Response Example { "exemplars": [ { "id": "ref1", "why_it_worked": "Explanation", "structure": "Structure description", "transcript": "Full transcript", "recipe": "Recipe to rebuild" } ] } ``` -------------------------------- ### GET · PUT /api/manager/settings Source: https://shapelessai.com/docs/api Retrieves or updates manager settings. This endpoint allows getting and setting configuration. ```APIDOC ## GET · PUT /api/manager/settings ### Description Retrieves or updates manager settings. ### Method GET, PUT ### Endpoint /api/manager/settings ``` -------------------------------- ### Example onboarding API response Source: https://shapelessai.com/docs/brand-memory Shows the JSON structure returned by the onboarding endpoint, including percent complete, open items, and instructions for the agent. ```json { "percent": 41, "open": [ { "path": "voice.md", "question": "How do you sound?", "gainPercent": 18, "questions": [ { "level": 1, "question": "How do you sound?", "hint": "Three words..." } ] } ], "done": false, "how": "For each open item: ask the human its questions, write the answers as markdown under the question headings, PUT /api/workspace/file {path, content}, then GET this again until open is empty." } ``` -------------------------------- ### GET /api/brain/assets and GET /api/assets Source: https://shapelessai.com/docs/brand-memory Lists brand uploads and the entire asset library. Requires read scope. ```APIDOC ## GET /api/brain/assets and GET /api/assets ### Description Lists brand uploads and the whole asset library. ### Method GET ### Endpoint /api/brain/assets /api/assets ### Parameters #### Scope - **read** (string) - Required - The scope required for this operation. ### Response #### Success Response (200) - **assets** (array) - List of asset metadata. #### Response Example { "assets": [] } ``` -------------------------------- ### GET /api/me Source: https://shapelessai.com/capabilities/connected-accounts Get information about the current user: account, plan, and credit balance. This endpoint requires read scope. ```APIDOC ## GET /api/me ### Description Get information about the current user: account, plan, and credit balance. This endpoint requires read scope. ### Method GET ### Endpoint /api/me ### Response #### Success Response (200) No response body documented. ``` -------------------------------- ### Query workspace onboarding with curl Source: https://shapelessai.com/docs/brand-memory Use this curl command to fetch the current onboarding state, including open questions and progress. Requires a SHAPELESS_API_KEY environment variable. ```bash curl -s https://shapelessai.com/api/workspace/onboarding -H "Authorization: Bearer $SHAPELESS_API_KEY" ``` -------------------------------- ### render_thumbnail Source: https://shapelessai.com/capabilities/render-thumbnail Packages a finished video with its cover: one frame of it (frame_at, in seconds), three to five words, at most one picture. Filed beside the video as