Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Post for Me

FreeMaintained

Publishes, schedules, and analyzes social media posts across 9 platforms via the Post for Me API.

GitHubEmbed

About

Publishes, schedules, and analyzes social media posts across 9 platforms via the Post for Me API.

README

The most complete Post for Me MCP server — publish, schedule, edit, delete and analyze social posts across 9 platforms from any MCP client.

npm version License: MIT GitHub Stars GitHub Forks GitHub Issues Glama Quality

TypeScript Node.js MCP Claude Code Cursor Claude Desktop

Instagram YouTube LinkedIn Buy Me A Coffee Strat Academy

postforme-mcp-pro wraps the Post for Me API in 27+ fully-typed MCP tools (one per operation) plus a postforme_raw escape hatch and a readonly safety mode. Unlike the official MCP — which exposes only a doc-search + sandboxed code-execution tool ("code mode") — every operation here is a first-class, directly-callable tool, so the model can post, schedule and pull analytics without writing SDK code.

Platforms: Instagram · Facebook · TikTok · YouTube · X · LinkedIn · Pinterest · Bluesky · Threads

Why this server

  • 27+ typed toolscreate_post, schedule_post, publish_now, create_draft, upload_media, list_account_feeds, list_post_results, account & webhook management, and more.
  • High-level shortcutspublish_now / schedule_post / create_draft / reschedule_post / upload_media collapse common multi-step flows into one call.
  • One-step media uploadupload_media takes a local file path or a public URL, gets a signed URL, uploads the bytes, and hands back a media_url ready to attach.
  • Per-platform tuningplatform_configurations models Instagram Reels, X polls, TikTok privacy, YouTube visibility, etc., and stays permissive for new options.
  • Readonly safety modePOSTFORME_READONLY=true blocks every write; great for analytics-only sessions.
  • postforme_raw — call any endpoint for 100% API coverage, even brand-new ones.
  • Resilient client — Bearer auth, retries on 429/5xx with backoff, actionable error messages.

Install

npm install
npm run build

Or run published (after release) without cloning:

npx -y postforme-mcp-pro

Configuration

Copy .env.example.env and set your key:

Variable Required Description
POSTFORME_API_KEY Your Post for Me API key (Dashboard → Settings → API Keys).
POSTFORME_BASE_URL Override the API base URL for self-hosted/open-source deployments. Default https://api.postforme.dev.
POSTFORME_READONLY true blocks all write tools (only reads + postforme_raw GET run).
POSTFORME_DISABLE_RAW true removes the postforme_raw tool.
POSTFORME_TIMEOUT_MS Per-request timeout (default 60000).
POSTFORME_MAX_RETRIES Max retries on 429/5xx/network (default 3).

Test locally

npx @modelcontextprotocol/inspector node dist/index.js

Add to Claude Code

.claude/settings.jsonmcpServers:

"postforme": {
  "command": "node",
  "args": ["projects/postforme-mcp-pro/dist/index.js"],
  "env": { "POSTFORME_API_KEY": "pfm_xxx" }
}

Add to Claude Desktop

%APPDATA%\Claude\claude_desktop_config.json (Windows) / ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):

"postforme": {
  "command": "node",
  "args": ["/abs/path/projects/postforme-mcp-pro/dist/index.js"],
  "env": { "POSTFORME_API_KEY": "pfm_xxx" }
}

Cursor uses the same config shape in its MCP file.

Tools

Social accounts

Tool Description
list_social_accounts List connected accounts (filter by platform/username).
get_social_account Get one account by id.
create_social_account Connect an account by supplying credentials.
update_social_account Update stored credentials/metadata.
create_auth_url Start the OAuth connect flow (returns a URL).
disconnect_social_account Revoke access for an account.
list_account_feeds Analytics: recent feed + engagement metrics for an account.

Posts

Tool Description
create_post Create a post (publish now, schedule, or draft) across accounts.
publish_now Shortcut: publish immediately.
schedule_post Shortcut: schedule for an ISO-8601 time.
create_draft Shortcut: save as draft.
get_post Get a post by id.
list_posts List posts (filter by status).
update_post Edit caption/media/accounts/schedule/config.
reschedule_post Shortcut: change a scheduled time.
delete_post Delete a post.

Results & previews

Tool Description
list_post_results Analytics: per-platform publish outcomes.
get_post_result One post result by id.
create_post_preview Preview how a post renders per platform.

Media

Tool Description
create_media_upload_url Get a signed upload URL (2-step flow).
upload_media One-step: upload a local file or remote URL → returns media_url.

Webhooks

Tool Description
list_webhooks · get_webhook · create_webhook · update_webhook · delete_webhook Manage event subscriptions.

Escape hatch

Tool Description
postforme_raw Call any /v1/... endpoint directly (method, path, params, body).

Companion skill

/postforme (in skill/SKILL.md) orchestrates these tools into guided workflows: post, schedule, campaign, analytics, accounts, media. Copy it into .claude/skills/ to use it in Claude Code.

Example

You: post "Lançamos a v2 🚀" no instagram e no x, com a imagem ./hero.png
→ list_social_accounts            (get the instagram + x account ids)
→ upload_media { file_path: "./hero.png" }   → media_url
→ create_post_preview             (optional, confirm look)
→ publish_now { social_accounts: [...], caption: "...", media: [{ url: media_url }] }
→ list_post_results               (report success/links per platform)

Comparison with the official MCP

postforme-mcp-pro official post-for-me-mcp
Tool model 27 typed tools, one per operation 2 tools (doc-search + code-execution sandbox)
Calls Direct tool calls Model must write SDK code in a sandbox
Shortcuts publish_now / schedule_post / create_draft / upload_media
Safety POSTFORME_READONLY mode + SSRF/file-read hardening
Escape hatch postforme_raw (any /v1 endpoint) code execution
Companion skill /postforme guided workflows

Security

upload_media hardens remote fetches against SSRF (DNS resolution + public-unicast IP validation, no redirects, size cap) and restricts local file reads to recognized media extensions (optionally to POSTFORME_MEDIA_DIR). postforme_raw paths are validated to stay on the versioned API surface. See REVIEW.md for the full audit.

License

MIT © Helbert Paranhos / Strat Academy

from github.com/helbertparanhos/postforme-mcp-pro

Install Post for Me in Claude Desktop, Claude Code & Cursor

Recommended · one command, every IDE
unyly install post-for-me

Installs into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.

First time? Get the CLI: curl -fsSL https://unyly.org/install | sh

Or configure manually

Run in your terminal:

claude mcp add post-for-me --env POSTFORME_API_KEY="" -- npx -y postforme-mcp-pro

Step-by-step: how to install Post for Me

FAQ

Is Post for Me MCP free?

Yes, Post for Me MCP is free — one-click install via Unyly at no cost.

Does Post for Me need an API key?

Yes, it requires environment variables: POSTFORME_API_KEY. Unyly injects them into the config during install.

Is Post for Me hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Post for Me in Claude Desktop, Claude Code or Cursor?

Open Post for Me on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Changes

Versions and requested access over time.

  • New version published
  • New version published

Related MCPs

Compare Post for Me with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All media MCPs