npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

postforme-mcp-pro

v1.0.0

Published

The most complete Post for Me MCP server — 27+ typed tools covering the entire Post for Me social media API (posts, scheduling, drafts, media upload, analytics, social accounts, previews, webhooks) across 9 platforms (Instagram, Facebook, TikTok, YouTube,

Readme

postforme-mcp-pro 📱

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

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