MCP server for letmepost.dev. Publish across 8 social platforms from any agent.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
An open-source social media publishing API that fails loudly. One
POST /v1/postsacross every platform. Stable error codes, the rule that failed, the raw platform body, and a remediation β on every failure. Never an empty{ body: {} }. No per-profile tax.
An alternative to: Ayrshare, Postiz, Buffer, Hootsuite, Hypefury.
Website Β· Docs Β· Quickstart Β· Dashboard Β· API Reference
Supports: Bluesky Β· LinkedIn Β· X Β· Threads Β· Instagram Β· Facebook Β· Pinterest Β· YouTube
Idempotency-Key. Retries are safe β no double-posting loops when a worker restarts mid-publish.Request:
Failure:
Same shape across every platform. Same shape on every error class β preflight_failed, platform_auth_failed, platform_rejected, platform_unavailable, rate_limited. The dashboard renders these directly. Your error handler doesn't need a per-platform branch.
Four things developers hit every week with incumbent social-media APIs:
{}. Postiz #1321 was an infinite double-post loop; Ayrshare's error 138 masks half a dozen distinct upstream causes.forbidden, Threads's OAuthException 2207052, Instagram Reels rejecting Google Drive URLs β all catchable client-side, all unhandled by the incumbents.letmepost.dev addresses all four, in one API.
| Platform | Status | Notes |
|---|---|---|
| Bluesky | live | App-password auth, video via dedicated transcoder, 300-grapheme preflight |
| X / Twitter | trial | OAuth 2.0 PKCE, 280 graphemes (t.co-aware), 4 images OR 1 video, threads & quote tweets |
| trial | v5 API, image + video pins, board-required preflight | |
| pending | Versioned REST, 3,000-grapheme commentary, MDP-gated for org posts | |
| Threads | pending | Standalone OAuth at threads.net, 500-char, 2β20 mixed-media carousels |
| pending | Meta Graph, Reels + carousels, FB Login fan-out | |
| Facebook Pages | pending | Meta Graph, single video OR 10 photos |
| YouTube | planned | Data API v3, CASA-gated for production verification |
live = production-ready end-to-end. trial = connect works but rate-limited or sandboxed (X on Pay-Per-Use, Pinterest on Trial Access). pending = approval in flight; the publisher is built and ships the moment review clears. planned = built into the schema, publisher pending.
TikTok is deferred to v2 β schemas + DB enum keep it reserved so the v2 add is additive. Reddit, Telegram, Discord, Snapchat, Google Business, and WhatsApp are deliberately cut from v1. Reasoning in PRODUCT.md.
90-second walkthrough at docs.letmepost.dev/quickstart.
We build in the open. Outside contributions are how this becomes a primitive for every social platform, not just the eight we shipped first.
Pick a starting point:
CONTRIBUTING.md Β§3 is the canonical recipe β most additions are < 500 LOC.Before you open a PR, skim CONTRIBUTING.md β it documents the layering rules, the error contract, the pre-publish gate pattern, the testing approach (MSW + transaction rollback), and the commit style we follow. It's how new code reviews itself.
CODE_OF_CONDUCT.md Β· SECURITY.md (vulnerability disclosure) Β· PRODUCT.md (the seven product principles) Β· TECH.md (stack contract) Β· plan.md (v1 status + pre-launch checklist).
Apache 2.0 from day 0. The same code that runs api.letmepost.dev runs on your own infra β no feature gate, no open-core trick.
The dev compose file ships Postgres + Redis. The API, worker, and dashboard run via pnpm β see docs.letmepost.dev/self-host/quick-start for the full walkthrough and self-host/deploying for production patterns. BYO Postgres (or Neon), BYO Redis (or Upstash), BYO platform credentials. Hosted is permanently optional.
Prerequisites: Node >=24, pnpm 10.33.0+ (corepack enable).
Individual apps:
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/letmepost)<a href="https://allmcps.com/mcp/letmepost"><img src="https://allmcps.com/api/badge/letmepost?style=directory" alt="Letmepost on AllMCPs" /></a>