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.2.tar.gz (17.3 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.2-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mcp_creator-0.2.2.tar.gz
  • Upload date:
  • Size: 17.3 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.2.tar.gz
Algorithm Hash digest
SHA256 270c76ea1b25839d37cbddb305cc54b05169b1621dce74faa083e99ebd87c921
MD5 82a570e5f9bdee538fa4a44b2004c73a
BLAKE2b-256 88ace533bddfc48941c481e3f24ecee8776c3cc9a64fc7ec148bf7ca4769c0db

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mcp_creator-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 22.8 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1ccb2ee2f767defc06022b279a9dd4bea48b275419941d8c25fcf680b2082ae4
MD5 d24128d01f6be653282b54f530bad4b8
BLAKE2b-256 4ec5b8df36a5ac70dd8dc746e83de335ee4db8a932ec3c581bddb9f60e6d73fe

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