# Typefully > Typefully is a writing and scheduling app for social posts on X, LinkedIn, Threads, Bluesky, Mastodon and Substack Notes. Its REST API v2 and hosted MCP server create, schedule and publish drafts for the account's own connected profiles. - Canonical: https://www.anchorterminal.com/tools/typefully - Markdown: https://www.anchorterminal.com/tools/typefully.md (~7,150 tokens) - Slim: https://www.anchorterminal.com/tools/typefully.min.md (~1,730 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/tools/typefully.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-09 ## Overview **Grade D · 49.1/100 · rank #714 of 842 · #8 in Social media posting APIs · not agent-ready · confidence medium** ## Assessment A public OpenAPI 3.1 document, Markdown docs and a hosted MCP server with OAuth cover drafts, scheduling, media and review comments, and planned drafts never publish until confirmed. Rate limits carry no published numbers, there is no status page or idempotency key, and both OAuth and API keys grant full access. ## Facts | Field | Value | | --- | --- | | Vendor | Typefully Inc. (https://typefully.com) | | Kind | HTTP API | | Category | Social media posting APIs (https://www.anchorterminal.com/categories/social-media) | | Transport | HTTP, Streamable HTTP | | Endpoint | `https://api.typefully.com` | | Auth | OAuth or key · Self-serve. A signed-in user creates an API key in Settings, API and sends it as `Authorization: Bearer`. A key carries the permissions of the user who created it, and access to each social set (read, write or publish) decides which operations work. The hosted MCP server accepts OAuth (authorisation code grant with PKCE S256, dynamic client registration, a revocation endpoint, one scope `full_access`) or the API key as a Bearer header. API v1 keys do not work with v2. | | Pricing | Freemium (Freemium) · A free plan and paid plans billed monthly or yearly. The pricing page draws its figures by script and they were not read on 2026-10-08. The page's own scripts name free, creator and team plans and a per-social-set billing model. The vendor's undated blog post gives a paid plan at $12.50 a month and a 14-day trial. The API, MCP server and webhooks were announced as available to all users on 17 December 2025, and draft creation can answer 402 when an account needs a paid plan. | | x402 | No · No x402, MPP or L402 in the API reference, the OpenAPI document, llms.txt or the AI agents page (checked 2026-10-08). | | Licence | Proprietary service under Typefully's Terms of Service. The Agent Skill and its CLI script in typefully/agent-skills are MIT | | MCP registry name | `com.typefully/mcp` | | Source | https://github.com/typefully/agent-skills | | Docs | https://typefully.com/docs/api | | llms.txt | https://typefully.com/llms.txt | | Last release | 2026-10-01 | | Surface graded | REST API v2 at https://api.typefully.com, with the hosted MCP server at https://mcp.typefully.com/mcp as a second route to the same account | | Networks | X (posts, threads and Articles), LinkedIn, Threads, Bluesky, Mastodon and Substack Notes, through accounts the user connects in Typefully. No developer app is needed on any network | | Operations | 24 in the OpenAPI document. Drafts (list, create, get, update, delete), draft comment threads, queue and queue schedule, media upload by presigned URL, tags, social sets, LinkedIn organisation lookup | | Draft states | Draft, planned (`plan_at`, dated and never auto-published), scheduled (`publish_at` with a datetime or `next-free-slot`) and published (`publish_at: "now"`, asynchronous) | | Credentials | API keys from Settings, API, with the creating user's permissions. OAuth on the MCP server with PKCE, dynamic client registration and one scope, `full_access` | | Rate limits | Per user on every endpoint and per social set on operations such as `drafts.create`. Limits appear in `X-RateLimit-User-*` and `X-RateLimit-SocialSet-*` headers. No figures published | | Publishing quota | `publishing_quota` on a social set gives used, remaining (a number or unlimited) and the reset time of the current window | | Pagination | `limit` (default 10, maximum 50) and `offset`, with `count`, `next` and `previous` in each list response | | Errors | `error.code`, `error.message` and optional `details` with field, type and location path. 400, 401, 402, 403, 404, 409, 422 and 429 are documented per operation | | Webhooks | draft.created, draft.planned, draft.scheduled, draft.published, draft.status_changed, draft.tags_changed and draft.deleted, set up in Settings, API | | Agent Skill | typefully/agent-skills on GitHub (MIT), a Markdown skill with a Node CLI script, a test suite in CI and a dated changelog. Last commit 1 October 2026 | | Sub-processors | A list dated 3 March 2026 names about 30, among them Vercel, Render, AWS, Cloudflare, Stripe, Intercom, OpenAI, Anthropic, Google, xAI and Groq | | Capabilities | social.post, social.schedule, social.media-upload | | Tags | hosted, freemium, free-tier, mcp, oauth, openapi, llms-txt, webhooks, agent-skill | | JSON | https://www.anchorterminal.com/api/v1/tools/typefully.json | ## Score breakdown (methodology v0.4, October 2026 research run) Assessed 2026-10-08 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. "This run" is each category's share of the 100 points. | Category | Weight | This run | Score (0–100) | Points | | --- | --- | --- | --- | --- | | Reliability | 16% | 20 | 27 | 5.4 | | Performance | 10% | pending | pending | n/a | | Schema & documentation | 13% | 16.2 | 83 | 13.5 | | Agent ergonomics | 13% | 16.2 | 62 | 10.1 | | Security & auth | 14% | 17.5 | 38 | 6.7 | | Payments & pricing | 10% | 12.5 | 30 | 3.8 | | Task success | 10% | pending | pending | n/a | | Maintenance & community | 7% | 8.8 | 82 | 7.2 | | Transparency & trust (editorial 55, provenance 72) | 7% | 8.8 | 64 | 5.6 | | Negative events | up to −15 | up to −15 | 2026-07-09. The vendor's own agent-skills changelog records that the API's tightened request schemas began rejecting platform-specific fields on the wrong platform with HTTP 422, which broke `drafts:update` in the vendor's CLI until it was patched the same day. No notice was found in the product changelog. Fixed on the client side and documented there, so -3 (https://github.com/typefully/agent-skills/blob/main/skills/typefully/CHANGELOG.md) | -3 | | **Total** | | | | **49.1 → D** | ### Why each score - Reliability 27: Graded as a hosted service. No status page was found, since status.typefully.com did not connect and the API catalogue's status link is the API root (0). With no page there is no incident history to read (5). Rate limits are documented per user and per social set through response headers, with no figures (5). 429 is documented on every operation with reset timestamps, but no `Retry-After` and no idempotency key for writes (7). No SLA, and the terms supply the service as is (0). API v2 has been live since 17 December 2025 and is not labelled beta (10). - Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes. - Schema & documentation 83: Public OpenAPI 3.1.0 document for 24 operations and seven webhook events (25). `llms.txt`, the full reference as Markdown and an RFC 9727 API catalogue (10). Descriptions state purpose, the permission each call needs and how drafts move between states, with less on when not to use a call (15). Inputs are typed per platform with 18 enums, length limits and required fields, though `publish_at` mixes keywords and datetimes in one string (12). 239 examples and error responses on every operation, with no list of error codes (11). The version is in the path and API changes are dated in the product changelog, with no API changelog of its own (10). - Agent ergonomics 62: List calls take `limit` up to 50 with a default of 10, and a draft read can drop comment markers, but there is no field selection (15). Limit and offset pagination with status, tag and ordering filters on drafts (20). Errors carry a code, a message and field details with a location path (16). No idempotency key. A planned draft is a write that cannot publish, which makes retries safer for that state only, and MCP tool annotations were not read (4). Creating a draft needs only `platforms`, but there is no official SDK, only the skill's CLI script (7). - Security & auth 38: OAuth on the MCP server with PKCE, dynamic client registration and revocation, and revocable API keys, but one scope `full_access` and keys that carry all of the creating user's permissions (20). The MCP article says the old URL form with the key in `?TYPEFULLY_API_KEY=` still works (-10). Read, write and publish access per social set is inherited from the user, and planned drafts need a confirming call, but no read-only key exists (10). Responses hold the workspace's own drafts and teammates' comments, with no injection guidance found (6). Draft Activity records who changed a draft and labels MCP or API as the source (10). No security.txt, bug bounty or certification was found, only a short security section in the privacy policy (2). - Payments & pricing 30: No x402, MPP or L402 (0). Plan pricing sits on a public page without a login, but the figures are drawn by script and were not read, so this line rests on the page's plan names and a $12.50 figure in the vendor's blog (10). A free plan exists, the onboarding script skips checkout for it, and the API was announced as available to all users (20). A person signs up in a browser and creates the key in settings (0). - Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored. - Maintenance & community 82: Product changelog entry on 20 September 2026 and an agent-skills commit on 1 October 2026 (30). Five dated changelog entries between 8 July and 20 September 2026 (20). Public changelog, a Discord community, email and in-app chat, with no public issue tracker for the API (10). Listed in the official MCP registry as `com.typefully/mcp`, active since 1 September 2026 (15). The skill repository runs a test workflow, and there is no SDK to judge (7). - Transparency & trust 64: Closed service under published terms, with the Agent Skill under MIT (15). The privacy policy says deleted data is purged within 30 days, that AI providers may not train on customer data and that data is processed in the United States, and it links a sub-processor list. No DPA was found, and the terms say only that data may be kept for a limited period (20). No deprecation policy. The v1 to v2 migration guide gives no end date for v1, `draft_id` is marked deprecated with no date, and the terms may change without notice (4). About 30 sub-processors listed by purpose on a page dated 3 March 2026, without locations for each (16). Fix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (20 items): https://www.anchorterminal.com/fixes/typefully.md (JSON https://www.anchorterminal.com/fixes/typefully.json) ### What we couldn't check - unchecked: the plan prices and limits on https://typefully.com/pricing, which the page draws by script. Payments is scored from the plan names in the page's scripts and one figure in the vendor's blog - unchecked: the MCP server's tool list, descriptions and annotations, which need a signed-in session - Whether the free plan can publish through the API or only save drafts. The reference documents a `publishing_quota` and a 402 response without figures - Whether API v1 is still served and when it ends. The migration guide gives no date - Whether customers were told before the 9 July 2026 schema tightening. No notice was found in the product changelog - The numeric rate limits. Only the header names are published - No status page was found by looking at the site footer, the docs and status.typefully.com, which did not connect. One may exist at an address we did not find - The lead was right on the interface. llms.txt names Instagram as a platform, and the API schema has none ### Sources - API reference as Markdown: (seen 2026-10-08) - OpenAPI document: (seen 2026-10-08) - llms.txt: (seen 2026-10-08) - AI agents page: (seen 2026-10-08) - MCP server card: (seen 2026-10-08) - OAuth authorisation server metadata: (seen 2026-10-08) - MCP server help article: (seen 2026-10-08) - API help article: (seen 2026-10-08) - v1 to v2 migration guide: (seen 2026-10-08) - official MCP registry entry: (seen 2026-10-08) - product changelog: (seen 2026-10-08) - pricing page (figures drawn by script, not read): (seen 2026-10-08) - vendor blog post with a plan price: (seen 2026-10-08) - terms of service: (seen 2026-10-08) - privacy policy: (seen 2026-10-08) - sub-processor list: (seen 2026-10-08) - Agent Skill source, changelog and CI: (seen 2026-10-08) - robots.txt, with Content-Signal ai-input=yes: (seen 2026-10-08) - security.txt (404): (seen 2026-10-08) - domain registration: (seen 2026-10-08) ## Who's behind it (provenance 72/100, checked 2026-10-08) | Check | Finding | Points | | --- | --- | --- | | Legal entity named | Typefully Inc. | 20/20 | | Domain age | typefully.com, registered 2016-06-06 (10 years) | 15/15 | | Endpoint on the vendor's domain | api.typefully.com | 15/15 | | Terms of service | read, states 4 of the 7 things a reader expects, and has 2 clauses that cost points | 3.4/10 | | Privacy policy | read, states 6 of the 8 things a reader expects | 8.5/10 | | Status page | not found | 0/10 | | Changelog | published | 10/10 | | security.txt | not found | 0/10 | typefully.com/terms and typefully.com/privacy redirect to the two help centre articles named here. The terms are dated 23 February 2026 and name Typefully Inc. No separate API terms or DPA were found. The privacy policy names Typefully Inc., says the service is operated in the United States and defines the Services to include any related APIs. It gives no postal address. No status page was found. status.typefully.com did not complete a TLS connection, and the API catalogue's status link points at the API root. The MCP server answers a health check at https://mcp.typefully.com/health. typefully.com/.well-known/security.txt returns 404. RDAP for typefully.com gives a registration date of 2016-06-06. The changelog is the product changelog. API changes appear in it as dated entries, with no separate API changelog. ### Terms and privacy, as read A reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice. **Terms of service** (https://support.typefully.com/en/articles/8718440-terms-of-service), read 2026-10-08, dated 2026-02-23, states 4 of the 7 things a reader expects. - To know. Restricts automated access (costs points). "Accounts registered by "bots" or other automated methods are not permitted." - To know. Says the terms or the service can change without notice (costs points). "("Company") reserves the right to update and change these Terms of Service without prior notice." - To know. Says access can be ended without notice or for any reason. "The Company may suspend or terminate your access to the Service at any time, with or without notice, if you violate these Terms of Service, fail to pay applicable fees, or use the Service in a manner that materially harms the Service or other users." - Gives the date it was last updated. Last updated 2026-02-23. - Not found in the text. Names the governing law or courts. - Not found in the text. States a limit on its liability. - Says how changes to the terms are announced. Says it gives notice of a change. - Not found in the text. Refers to a service level or uptime commitment. - Also in the text (2026-10-08). Typefully accepts no liability for claims over published content that its AI functions generated or suggested. "Typefully shall not be liable for any claims arising from content you publish that was generated or suggested by AI features." - Also in the text (2026-10-08). After cancellation or termination, account data may be kept for a limited period and then permanently deleted. "Your account data may be retained for a limited period for recovery or legal purposes, after which it may be permanently deleted." - Also in the text (2026-10-08). Customer content may be transmitted unencrypted across networks. "You understand that the technical processing and transmission of the Service, including your content, may be transferred unencrypted and involve (a) transmissions over various networks; and (b) changes to conform and adapt to technical requirements of connecting networks or devices." **Privacy policy** (https://support.typefully.com/en/articles/8718444-privacy-policy), read 2026-10-08, gives no date, states 6 of the 8 things a reader expects. - Not found in the text. Gives the date it was last updated. - Says how long data is kept. Names a period of 30 days. - Not found in the text. Says whether personal data is sold or shared for advertising. - Gives a privacy contact. Gives an email address, hidden from our reader by the page. - Says where data is transferred or stored. Relies on standard contractual clauses. - Also in the text (2026-10-08). Using AI functions sends prompts, drafts and account context such as the user's name to third-party AI model providers. "This may include the text of your prompts, draft content you are working on, and account context such as your name and drafts." - Also in the text (2026-10-08). Data is not encrypted while it is live in Typefully's database. "Data isn’t encrypted while it's live in our database (since it needs to be ready to send to you when you need it), but we go to great lengths to secure your data at rest." ## Live (updated 2026-10-09 09:27 UTC) - Right now: up, HTTP 200, 251 ms, checked 2026-10-09 09:27 UTC (get on `https://api.typefully.com`) - Uptime 24h 100.0% (20 probes) · 30 days 100.0% (20 probes) · p50 226 ms · p95 273 ms - Always current: https://www.anchorterminal.com/api/v1/live/typefully.json ## Probe metrics Not measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score. ## Strengths - OpenAPI 3.1 document for 24 operations and seven webhook events, with the same reference served as Markdown and indexed in `llms.txt` - Hosted MCP server at `https://mcp.typefully.com/mcp` with OAuth, PKCE and dynamic client registration, listed in the official MCP registry as `com.typefully/mcp` - A draft can be saved, planned, scheduled or published, and a planned draft never publishes until `publish_at` confirms it - Errors return a code, a message and field-level details with the path of the failing field - Draft Activity records who changed a draft and whether the change came through MCP or the API ## Weaknesses - Rate limits are described by response headers only. No request numbers are published, and no `Retry-After` header is documented - No status page, incident history or SLA was found. The terms supply the service as is - No idempotency key on draft creation, so a retried `publish_at: "now"` call can post twice - OAuth has one scope, `full_access`, and an API key carries every permission of the user who created it - The terms say accounts must be registered by a human and forbid processes that run while the user is not logged in ## Before you call it (notes for agents) 1. Call `GET /v2/social-sets` first. Every draft, media, tag and queue path needs a `social_set_id` 2. Use `plan_at` or omit both dates to leave a draft unpublished. `publish_at: "now"` posts at once and is asynchronous 3. Do not retry a failed publish blindly. Read the draft's `status` and `publish_state` first, because no idempotency key exists 4. Read `X-RateLimit-User-Remaining` and `X-RateLimit-SocialSet-Remaining` on each response, and wait until the `Reset` timestamp after a 429 5. Send the key only as `Authorization: Bearer`. The legacy MCP URL with `?TYPEFULLY_API_KEY=` still works and puts the key in logs ## Connect Install: ```bash npx skills add typefully/agent-skills ``` First request: ```bash curl https://api.typefully.com/v2/me -H "Authorization: Bearer $TYPEFULLY_API_KEY" ``` Claude Code: ```bash claude mcp add typefully --transport http --url "https://mcp.typefully.com/mcp" ``` MCP client configuration: ```json { "mcpServers": { "typefully": { "serverUrl": "https://mcp.typefully.com/mcp" } } } ``` Through letme (picks today, calling later): https://letme.dev/typefully. letme answers with the pick and how to call it direct; calling through letme (one key, the vendor's own price) comes later. How it works: https://www.anchorterminal.com/letme/index.md ## Similar tools Ranked by shared capabilities, then score. Same-category tools with no shared capability key are listed last. | Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown | | --- | --- | --- | --- | --- | --- | --- | | Zernio (formerly Late) API + MCP | B | 67.5 | 232 | social.post, social.schedule, social.media-upload | no | https://www.anchorterminal.com/tools/late.md | | Postiz API + MCP | C | 59.3 | 500 | social.post, social.schedule, social.media-upload | no | https://www.anchorterminal.com/tools/postiz.md | | Upload-Post API + MCP | C | 58.7 | 517 | social.post, social.schedule, social.media-upload | no | https://www.anchorterminal.com/tools/upload-post.md | | Ayrshare API + MCP | C | 57.2 | 555 | social.post, social.schedule, social.media-upload | no | https://www.anchorterminal.com/tools/ayrshare.md | | Mixpost API + MCP | D | 49.5 | 705 | social.post, social.schedule, social.media-upload | no | https://www.anchorterminal.com/tools/mixpost.md | | Post Bridge API + MCP | D | 48.3 | 725 | social.post, social.schedule, social.media-upload | no | https://www.anchorterminal.com/tools/post-bridge.md | ## Panel reviews (0) Reviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): . Desk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md ## Notable - API v2 (document version 2.0.0, OpenAPI 3.1.0) has 24 operations for the user, social sets, drafts, draft comments, the queue, media and tags, plus seven webhook events (source: ) - The API reference says the API is meant for personal automations and workflows, and that an app built for other X users needs the X API instead (source: ) - Platforms in the draft schema are X, X Articles, LinkedIn, Mastodon, Threads, Bluesky and Substack Notes. llms.txt also names Instagram, which the schema does not have (source: ) - The MCP server card and the official MCP registry list `com.typefully/mcp` at https://mcp.typefully.com/mcp over streamable HTTP, published 1 September 2026 (source: ) - The AI agents page and the home page Markdown carry instructions addressed to AI models, such as which setup to recommend when the reader is ChatGPT or Claude. Recorded as a fact (source: ) - The terms of 23 February 2026 say accounts registered by bots or other automated methods are not permitted, and forbid processes that run while the user is not logged in (source: ) - The `typefully` package on npm is a third party's CLI, not the vendor's (source: ) ## Compare - [Ayrshare API + MCP vs Typefully](https://www.anchorterminal.com/compare/ayrshare-vs-typefully.md): C 57.2 vs D 49.1 - [Blotato vs Typefully](https://www.anchorterminal.com/compare/blotato-vs-typefully.md): D 46.1 vs D 49.1 - [Buffer API + MCP vs Typefully](https://www.anchorterminal.com/compare/buffer-vs-typefully.md): B 62 vs D 49.1 - [Zernio (formerly Late) API + MCP vs Typefully](https://www.anchorterminal.com/compare/late-vs-typefully.md): B 67.5 vs D 49.1 - [Metricool API + MCP vs Typefully](https://www.anchorterminal.com/compare/metricool-vs-typefully.md): E 38.3 vs D 49.1 - [Mixpost API + MCP vs Typefully](https://www.anchorterminal.com/compare/mixpost-vs-typefully.md): D 49.5 vs D 49.1 - [OneUp API + MCP vs Typefully](https://www.anchorterminal.com/compare/oneup-vs-typefully.md): F 24.4 vs D 49.1 - [Post Bridge API + MCP vs Typefully](https://www.anchorterminal.com/compare/post-bridge-vs-typefully.md): D 48.3 vs D 49.1 - [Postiz API + MCP vs Typefully](https://www.anchorterminal.com/compare/postiz-vs-typefully.md): C 59.3 vs D 49.1 - [Publer API + MCP vs Typefully](https://www.anchorterminal.com/compare/publer-vs-typefully.md): D 46.8 vs D 49.1 - [Typefully vs Upload-Post API + MCP](https://www.anchorterminal.com/compare/typefully-vs-upload-post.md): D 49.1 vs C 58.7 ## Verify this listing For the vendor. The badge or a plain link to this page verifies the listing, from a page on typefully.com or one of its subdomains, or the README of github.com/typefully/agent-skills. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{"slug": "typefully", "url": "…"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify HTML badge: ```html Typefully on Anchor Terminal ``` Markdown badge, for a README: ```markdown [![Typefully on Anchor Terminal](https://www.anchorterminal.com/badges/typefully.svg)](https://www.anchorterminal.com/tools/typefully) ``` Plain link: ```html Typefully on Anchor Terminal ``` ## Share this listing For the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Typefully is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score. - Dark: https://www.anchorterminal.com/assets/share/typefully-dark.png - Light: https://www.anchorterminal.com/assets/share/typefully-light.png