DEV Community

J Now
J Now

Posted on

Why MCP servers die in week two (and a fix)

The MCP ecosystem is moving fast. New servers ship daily. But there's no distribution infrastructure for indie builders — no equivalent of Product Hunt for agent tools, no curation layer that keeps showing up for you after launch day.

I built marketing-pipeline after watching several of my own tools get zero traction not because they were broken but because I posted once and moved on.

The core loop: marketing cycle runs via GitHub Actions at 14:00 UTC on weekdays. It rotates through your registered projects, picks the least-recently-used angle, generates a post for the target channel (Bluesky at 300 chars, X at 280, Dev.to/Hashnode at 150–400 words), passes it through an anti-slop gate, and publishes. No daily intervention.

Onboarding a new project is one command:

marketing onboard --name my-tool --repo owner/repo --kind mcp-server
Enter fullscreen mode Exit fullscreen mode

That fetches the README, sends it to Claude, and writes problem, facts, and angles to projects.yml. The kind field does real routing work: 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.

The anti-slop gate in pipeline/antislop.py hard-rejects before any post is published: 'excited', 'game-changer', 'unlock', 'empower', 'AI-powered', emoji, hashtags, exclamation points, rhetorical questions. The gate exists because generated marketing copy defaults to exactly those tokens, and that copy doesn't work on developers.

One honest constraint: awesome-claude-code submission can't be automated. Their rules require a human to submit via their GitHub issue form. The pipeline generates the payload — you paste it once.

Requires an Anthropic API key plus credentials for Bluesky, Dev.to, and Hashnode minimum. Mastodon and Slack are optional.

https://github.com/robertnowell/marketing-pipeline

Top comments (0)