MCP servers and Claude Code skills live in a fast-moving ecosystem where most indie builders ship something solid, post it once, and watch it sink — not because the tool is bad but because consistent distribution requires showing up daily across four platforms, five directories, and a rotating content calendar. Almost nobody does that for a side project.
marketing-pipeline is what I built to stop that from being my excuse. Onboarding a project takes one command:
marketing onboard --name my-tool --repo owner/repo --kind mcp-server
It fetches the README, sends it to Claude, and writes problem statements, facts, and post angles to projects.yml. From there, a GitHub Actions cron at 14:00 UTC on weekdays runs marketing cycle, which picks the least-recently-used angle for each project and generates platform-appropriate posts — 300 chars for Bluesky, 280 for X, 150–400 words for Dev.to and Hashnode.
The kind field does the directory routing automatically. mcp-server targets MCP Registry, Smithery, Glama, and PulseMCP. claude-skill targets awesome-claude-code. browser-extension targets Chrome Web Store, Firefox AMO, and Edge Add-ons. One field, right directories, no per-project configuration.
There's also a hard antislop gate in pipeline/antislop.py that rejects posts containing specific tokens before they ship: 'excited', 'game-changer', 'unlock', 'empower', 'AI-powered', emoji, hashtags, exclamation points, rhetorical questions. This exists because the default LLM output for anything tool-adjacent is unusable marketing copy, and I wanted posts that read like a practitioner wrote them.
One honest caveat: awesome-claude-code requires a human to submit via their GitHub issue form — the pipeline generates the payload but can't automate the actual submission. Everything else runs without daily intervention once credentials are configured.
Top comments (0)