ProductPilot MCP
# ProductPilot MCP
An MCP server that helps digital product creators go from "what should I
build?" to a zipped, listing-ready product — end to end.
Built for creators shipping ebooks, prompt packs, wallpaper packs, Notion
templates, checklists, printable planners, cheat sheets, resume packs, and
study guides to Gumroad/Etsy.
## What it does
Ask Claude (or any MCP client connected to this server) things like:
- *"What digital product should I build today?"* → `find_trending_niches`, `score_opportunity`
- *"Is this niche worth pursuing?"* → `research_market`, `analyze_competition`, `analyze_reviews`
- *"Build me a complete product for this niche"* → `build_product_bundle` (the one-shot pipeline)
- *"Write the listing copy"* → `generate_listing`, `generate_keywords`, `generate_tags`
- *"What should this cost?"* → `generate_pricing_strategy`
- *"Prep this for Gumroad/Etsy"* → `prepare_gumroad_listing`, `prepare_etsy_listing`
- *"What sold well, and what should I build next?"* → `track_product_performance`, `recommend_next_product`
26 tools total — see `mcp_server/server.py` for the full list, or
`docs/ARCHITECTURE.md` for how they fit together.
## Quick start
```bash
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
python -m mcp_server.server
```
Runs entirely on deterministic mock market data out of the box — no API keys
required to try it. Full setup/deployment instructions: `docs/SETUP.md`,
`docs/DEPLOYMENT.md`.
## Using this on claude.ai (web)
Claude.ai's web app only connects to *remote* MCP servers (a public HTTPS
URL) — not local processes. This server supports that via
`PRODUCTPILOT_TRANSPORT=streamable-http`. Full walkthrough (deploy to Render
+ add as a claude.ai custom connector): **`docs/CLAUDE_AI_CONNECTOR.md`**.
## Status
Functionally complete: all 26 tools registered and runtime-tested end to end
(idea → outline → generation → SEO → zipped bundle → analytics tracking), 18
passing unit tests, Docker support.
**Known environment gotcha (already fixed here, documented for reference):**
the `mcp` PyPI package's `2.0.0` release renamed `FastMCP` to `MCPServer` and
dropped `mcp.server.fastmcp` entirely — `requirements.txt` pins
`mcp[cli]<2.0.0` to stay on the FastMCP-based API this server is built
against. See `docs/ARCHITECTURE.md` for the full explanation, including a
second subtle bug it's worth knowing about (`from __future__ import
annotations` breaking FastMCP's tool introspection).
## Project layout
```
mcp_server/ # all source (agents, market, research, scoring, generation,
# seo, publishing, analytics, storage, config)
tests/ # pytest suite
docs/ # architecture, setup, deployment, roadmap
```
See `docs/ARCHITECTURE.md` for the full breakdown, `docs/ROADMAP.md` for
what's next.
TDQS
Scored across 26 tools
Most tools have clearly distinct purposes, especially the generate_* family distinguished by product type or asset type. However, research_market overlaps conceptually with the more specific research tools, potentially causing confusion about which to use for a given research need.
All tool names follow a consistent snake_case verb_noun pattern (research_market, generate_ebook, track_product_performance). The pattern is predictable and aids agent understanding.
26 tools is slightly above the 'heavy' range but the broad end-to-end domain (research, ideation, generation, listing, tracking) justifies the count. Each tool serves a specific step, though a few could be consolidated.
The pipeline is comprehensive from research to launch to tracking, but there is no tool to list or retrieve a single generated product's details. record_sale and track_product_performance require product IDs, yet no get/list tool exists, leaving a notable gap.