{
  "markdown": "# Upload-Post for Claude Code\n\nSchedule, repurpose, and grow on social media — directly from Claude Code.\n\nThe Upload-Post plugin connects Claude Code to the hosted [Upload-Post MCP server](https://docs.upload-post.com/guides/mcp-server-integration) (50 tools) and ships opinionated skills and agents on top. Schedule cross-platform campaigns, turn long videos into viral shorts, work the comment section, build Instagram comment-to-DM funnels, and analyse account performance — without leaving your terminal.\n\n**No API key to copy.** The server speaks OAuth 2.1, so installing and authenticating takes two commands and a browser click.\n\n**Free plan, no credit card required.** Try it before you decide.\n\n## What's inside\n\n### Skills (slash commands)\n\n| Skill | What it does |\n| :---- | :----------- |\n| `/upload-post:setup` | One-time onboarding. Walks the OAuth connection, verifies the MCP link, and checks you have at least one social account connected. |\n| `/upload-post:whitelabel-connect` | Generate a JWT connection link so a client or end-user can OAuth their socials into a profile inside your workspace — for white-label embeds and agency onboarding. (Connecting your own accounts? Use [app.upload-post.com/manage-users](https://app.upload-post.com/manage-users) — a couple of clicks per network.) |\n| `/upload-post:schedule-campaign` | Schedule a post across multiple platforms at once. Handles per-platform validation (aspect ratio, length, Reddit flairs, Facebook pages). |\n| `/upload-post:repurpose-video` | Take a long video, transcribe it, pick viral moments, cut clips with FFmpeg, optionally add hook overlays, then schedule to TikTok / Reels / Shorts. |\n| `/upload-post:posting-queue` | Set up a recurring weekly posting rhythm (slots, days, timezone) and see what lands in the next slot. |\n| `/upload-post:manage-comments` | Read, triage and reply to comments on Instagram / Facebook / YouTube / LinkedIn, plus Google Business reviews. |\n| `/upload-post:autodm-setup` | Build an Instagram comment-to-DM funnel: keyword trigger → public reply → private DM. |\n| `/upload-post:analyze-performance` | Pull analytics across accounts, identify what is working, and propose concrete next moves. |\n\n### Agents\n\n- **`content-strategist`** — reads your analytics and proposes 3–5 specific next posts.\n- **`autodm-architect`** — designs full comment-to-DM funnels (trigger + public reply + DM body + CTA).\n- **`post-debugger`** — diagnoses failed uploads, expired tokens, and quota errors.\n\n### MCP server\n\nThe plugin wires the hosted Upload-Post MCP server (`https://mcp.upload-post.com/mcp`) into Claude Code. 50 tools cover uploads (video / photo / text / documents), scheduling and the posting queue, analytics, comments and Google Business reviews, DMs and AutoDMs, FFmpeg encoding jobs, media staging, and account management. See the [MCP integration guide](https://docs.upload-post.com/guides/mcp-server-integration) for the full tool list.\n\nAuthentication is OAuth 2.1 with dynamic client registration (RFC 7591) and PKCE — Claude Code registers itself, opens the approval page, and stores the token. Nothing to paste. Revoke any time from **Connected Apps** in the dashboard.\n\n## Why this plugin (vs. alternatives)\n\n- **Free plan, no credit card.** Get an API key and try the whole thing before paying. Most social-automation tools gate everything behind a card.\n- **AutoShorts pipeline.** Long-form → viral clips → scheduled across short-form platforms, in one skill. Not a feature most schedulers ship.\n- **Instagram comment-to-DM funnels.** First-class support for AutoDMs and lead capture from comments.\n- **50 MCP tools, not a CLI wrapper.** Claude calls real tools with structured inputs; no copy-pasting curl commands.\n\n## Install\n\n### From the community marketplace\n\n```text\n/plugin marketplace add anthropics/claude-plugins-community\n/plugin install upload-post@claude-community\n```\n\n### Locally (development)\n\n```bash\ngit clone https://github.com/Upload-Post/upload-post-plugin\nclaude --plugin-dir ./upload-post-plugin\n```\n\n## Configure\n\n1. Run `/mcp`, pick `upload-post`, choose **Authenticate**. A browser tab opens; log in or create a free account (no card) and approve.\n\n2. Back in Claude Code, run `/upload-post:setup`. It verifies the connection and lists any accounts you have already linked.\n\nThat's it — there is no API key to copy and no environment variable to export.\n\n<details>\n<summary>Prefer a long-lived API key (CI, headless, shared machines)?</summary>\n\nGrab a key at [app.upload-post.com/settings/api](https://app.upload-post.com/settings/api) and either send it as a header against the same hosted endpoint:\n\n```json\n{\n  \"mcpServers\": {\n    \"upload-post\": {\n      \"type\": \"http\",\n      \"url\": \"https://mcp.upload-post.com/mcp\",\n      \"headers\": { \"Authorization\": \"ApiKey upk_live_...\" }\n    }\n  }\n}\n```\n\n…or run the server locally over stdio:\n\n```json\n{\n  \"mcpServers\": {\n    \"upload-post\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@upload-post/mcp\"],\n      \"env\": { \"UPLOAD_POST_API_KEY\": \"upk_live_...\" }\n    }\n  }\n}\n```\n\n</details>\n\n## First-run flow\n\n```text\n/upload-post:setup\n# Connect your own accounts at app.upload-post.com/manage-users (web, no JWT needed)\n/upload-post:schedule-campaign         # post something\n/upload-post:posting-queue             # set a weekly rhythm so you stop picking dates\n/upload-post:analyze-performance       # see what worked after a few days\n/upload-post:repurpose-video           # turn a long video into shorts\n/upload-post:manage-comments           # reply to what came back\n/upload-post:autodm-setup              # capture leads from a hot post\n```\n\n## Troubleshooting\n\n| Symptom | Likely cause | Fix |\n| :------ | :----------- | :-- |\n| No `upload-post` tools available | Not authenticated yet | `/mcp` → `upload-post` → **Authenticate** |\n| Every tool returns 401 | OAuth token revoked or expired | Re-authenticate with `/mcp`. Check **Connected Apps** in the dashboard |\n| OAuth browser tab never opens | Proxy or VPN blocking the host | `curl -sI https://mcp.upload-post.com/.well-known/oauth-protected-resource` should return 200 |\n| `list_users` returns empty | No social accounts linked yet | Connect them at [app.upload-post.com/manage-users](https://app.upload-post.com/manage-users) |\n| Upload fails with `quota_exceeded` | Free-plan daily limit hit | Wait until quota resets or upgrade |\n| Scheduled post never went out | Token for that account expired | The `post-debugger` agent will diagnose; usually reconnect from [manage-users](https://app.upload-post.com/manage-users) |\n\n## Documentation\n\n- [Quick start](./QUICK_START.md) — install, authenticate, publish, in about two minutes.\n- [Features](./FEATURES.md) — platform support matrix by content type, all 50 tools by family, and the known limitations.\n- [Examples](./EXAMPLES.md) — real prompts and what the plugin does with them.\n- [Changelog](./CHANGELOG.md) — what changed between versions.\n\n## Links\n\n- Upload-Post: [upload-post.com](https://upload-post.com)\n- API & MCP docs: [docs.upload-post.com/guides/mcp-server-integration](https://docs.upload-post.com/guides/mcp-server-integration)\n- MCP server source: [github.com/Upload-Post/upload-post-mcp](https://github.com/Upload-Post/upload-post-mcp) (MIT)\n- Support: info@upload-post.com\n\n## License\n\nMIT. See [LICENSE](./LICENSE).\n",
  "bytes": 7357,
  "sha": "0a619e26d70d5a603d35971af4da71ecd42b5925a1eb53d274487277bb2b476d",
  "repo_slug": "mutonby/upload-post-plugin",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_mutonby_upload_post_plugin_upload_post_862c7998/readme"
}