Skip to main content

Create, build, and publish Python MCP servers to PyPI — conversationally

Project description

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

pip install mcp-creator

Setup

Add to Claude Code (~/.claude/settings.json):

{
  "mcpServers": {
    "mcp-creator": {
      "command": "mcp-creator",
      "args": []
    }
  }
}

Or for Cursor (.cursor/mcp.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

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_packagepublish_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 (for building and publishing)

Development

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_creator-0.3.0.tar.gz (19.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_creator-0.3.0-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file mcp_creator-0.3.0.tar.gz.

File metadata

  • Download URL: mcp_creator-0.3.0.tar.gz
  • Upload date:
  • Size: 19.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mcp_creator-0.3.0.tar.gz
Algorithm Hash digest
SHA256 a7d388ba7618bcdb1c19fe88c4e2647ae9856048fba8942d660402ef7fe9d66f
MD5 e6c564cc34844c1701b24f916db31721
BLAKE2b-256 ca489e60ad855e1c6d6c21fd0e9b5c5c441a88f7d83d443d2903e3baa2917cda

See more details on using hashes here.

File details

Details for the file mcp_creator-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: mcp_creator-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for mcp_creator-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f958fcaacdaaa41fc868b6d12e14defb3c10986b6735231b475da64aa64fa64f
MD5 e9126e01f186327a87a811fdea048f95
BLAKE2b-256 9b1c09fab87e8e8230fad3c206c2b6b33aa50c698d883e03c201bccebdb968cd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page