mcp-creator
# mcp-creator
Create, build, and publish Python MCP servers to PyPI — conversationally.
Install `mcp-creator`, add it to your AI assistant, and it walks you through the entire process: naming your package, scaffolding a complete project, building, and publishing to PyPI.
## Install
```bash
pip install mcp-creator
```
## Setup
Add to Claude Code (`~/.claude/settings.json`):
```json
{
"mcpServers": {
"mcp-creator": {
"command": "mcp-creator",
"args": []
}
}
}
```
Or for Cursor (`.cursor/mcp.json`):
```json
{
"mcpServers": {
"mcp-creator": {
"command": "mcp-creator",
"args": []
}
}
}
```
## Tools
| Tool | What it does |
|------|-------------|
| `get_creator_profile` | Load your persistent profile — setup status, project history. Called first every session. |
| `update_creator_profile` | Save setup state, usernames, and project history across sessions |
| `check_setup` | Detect what's installed (uv, git, gh, PyPI token) — only walks through missing steps |
| `check_pypi_name` | Check if a package name is available on PyPI |
| `scaffold_server` | Create a complete MCP server project from a name + description + tool definitions |
| `add_tool` | Add a new tool to an existing scaffolded project |
| `build_package` | Run `uv build` on the project |
| `publish_package` | Run `uv publish` to PyPI |
| `setup_github` | Initialize git, create a GitHub repo, and push the code |
| `generate_launchguide` | Create LAUNCHGUIDE.md for marketplace submission |
## Publish to MCP Marketplace
Once your server is on PyPI, list it on [MCP Marketplace](https://mcp-marketplace.io/for-creators) to reach thousands of AI users:
- **Security scanning** — every submission is automatically scanned, and the score is shown to users
- **One-click install** — users add your server to Claude, Cursor, or any MCP client in one click
- **Built-in payments** — set a price (one-time or subscription), connect Stripe, and keep 85% of every sale
- **Creator dashboard** — track installs, revenue, reviews, and license keys
Run `generate_launchguide` after publishing to create your submission file, then submit at [mcp-marketplace.io/submit](https://mcp-marketplace.io/submit).
## How It Works
1. **Tell your AI what you want to build**: "I want an MCP server that checks the weather"
2. **It checks the name**: calls `check_pypi_name` to verify availability on PyPI
3. **It scaffolds the project**: calls `scaffold_server` with your tool definitions — generates a complete, runnable project
4. **You fill in the logic**: replace the TODO stubs in `services/` with your real API calls
5. **Build & publish**: `build_package` → `publish_package` → live on PyPI
6. **Push to GitHub**: `setup_github` creates a repo and pushes your code
7. **Submit to marketplace**: `generate_launchguide` creates the submission file with your repo URL
## What Gets Generated
For a project named `my-weather-mcp` with a `get_weather` tool:
```
my-weather-mcp/
├── pyproject.toml ← hatchling build, mcp[cli] dep, CLI entry point
├── README.md ← install instructions + MCP config JSON
├── .gitignore
├── src/my_weather_mcp/
│ ├── __init__.py
│ ├── server.py ← FastMCP + @mcp.tool() for each tool
│ ├── transport.py
│ ├── tools/
│ │ ├── __init__.py
│ │ └── get_weather.py
│ └── services/
│ ├── __init__.py
│ └── get_weather_service.py ← TODO: your logic here
└── tests/
├── test_server.py
└── test_get_weather.py
```
The generated server runs immediately — stub services return placeholder data so you can test before implementing real logic.
## Requirements
- Python 3.11+
- [uv](https://docs.astral.sh/uv/) (for building and publishing)
## Development
```bash
git clone https://github.com/gmoneyn/mcp-creator.git
cd mcp-creator
uv venv .venv && source .venv/bin/activate
uv pip install -e ".[dev]"
pytest -v
```
TDQS
Scored across 10 tools
Each tool has a clearly distinct purpose with no overlap: setup (check_setup, get_creator_profile), scaffolding (scaffold_server, add_tool), building/publishing (build_package, publish_package), GitHub integration (setup_github), documentation (generate_launchguide), and utilities (check_pypi_name, update_creator_profile). The descriptions make it easy to differentiate between similar-sounding tools like scaffold_server and add_tool.
All tool names follow a consistent verb_noun pattern with snake_case throughout (e.g., scaffold_server, publish_package, generate_launchguide). There are no deviations in naming conventions, making the set predictable and easy to parse for an agent.
With 10 tools, the server is well-scoped for its purpose of creating and managing MCP servers. Each tool earns its place by covering distinct aspects of the workflow: from initial setup and scaffolding to building, publishing, and documentation. This count is neither too sparse nor bloated.
The tool set provides complete coverage for the MCP server creation lifecycle: environment setup (check_setup, get_creator_profile), project creation (scaffold_server, add_tool), building and publishing (build_package, publish_package, check_pypi_name), GitHub integration (setup_github), documentation (generate_launchguide), and persistence (update_creator_profile). There are no obvious gaps, and agents can follow a seamless workflow from start to finish.