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.1.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.1-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcp_creator-0.3.1.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.1.tar.gz
Algorithm Hash digest
SHA256 037833634a34485cd1730ed7c288cb9be341af37695dd9714465c4c6e43c871a
MD5 b93dae60d36316d76a9db92591d3c6c2
BLAKE2b-256 692922d774187f7fb87973ed934777883f4e23710ada338543de313af6f458e9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mcp_creator-0.3.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c371e6f227bbda1ec6cf0fd580f49eeab4376f96b320ce6ae3635c5324659504
MD5 1916d8ad2c607009b95a98fb2f583475
BLAKE2b-256 4b5c18435bff6c5f35b72a26adb8dccf9b145a48cca05fbf6012f1e4e3952edb

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