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.2.0.tar.gz (17.1 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.2.0-py3-none-any.whl (22.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcp_creator-0.2.0.tar.gz
  • Upload date:
  • Size: 17.1 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.2.0.tar.gz
Algorithm Hash digest
SHA256 43b23d7354bb2e1b6fe71f8a07dd4c3fa288c197200b9b75818a0b9a0a5bae7a
MD5 48d7f7989473e2d0b35a107bd140b577
BLAKE2b-256 e1f4195cc3e3c3a45cc27bdf61ba268a44d759b12bc231f67b266d64aa42d06c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mcp_creator-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 22.7 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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 194d03999c8afa63bec819a9d88b171aa416d535c04611f7fad9871b3921c245
MD5 8ef774c84de94a01de8f6d1fcdf60450
BLAKE2b-256 c46d354d701efcdb78ea6a00e3ee1a05996a4a48e779817e6b0835be48de506c

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