MCP服务器创建发布工具

一款用于对话式创建、构建并发布Python MCP服务器到PyPI的开发工具,帮助开发者高效完成项目脚手架搭建、工具扩展、打包发布及MCP市场提交。

  • by gmoneyn
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 gmoneyn/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

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 private GitHub repo, and push the code. Never creates a public repo
generate_launchguide Create LAUNCHGUIDE.md for marketplace submission

Publish to MCP Marketplace

Once your server is on PyPI, list it on MCP Marketplace 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.

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 Publishing from GitHub Actions with PyPI Trusted Publishing is the recommended route: it needs no token. A token passed to publish_package is visible to the model.
  6. Push to GitHub: setup_github creates a private repo and pushes your code. It never creates a public one: when you are ready for a free marketplace listing (which needs a public repo), make it public yourself with gh repo edit OWNER/REPO --visibility public --accept-visibility-change-consequences. It refuses to push if a file that looks like a secret is in the folder, the index or the git history
  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