Overview
What is Python Workers: FastMCP Example?
This is an example of a Python Worker that uses the FastMCP package, designed for deployment on Cloudflare Workers. It is intended for developers who want to build MCP servers using Python on Workers.
How to use Python Workers: FastMCP Example?
To develop, run npx wrangler@latest dev. To deploy, run npx wrangler@latest deploy. Before deployment, packages must be vendored using Python 3.12 with a special process described in the README.
Key features of Python Workers: FastMCP Example
- Example of a Python Worker using FastMCP
- Supports vendored packages for Worker compatibility
- Requires Python 3.12 for package management
- Deployment limited to Workers Paid plan
- Includes testing with pytest and linting with Ruff
Use cases of Python Workers: FastMCP Example
- Deploying an MCP server on Cloudflare Workers
- Prototyping FastMCP-based applications in a serverless environment
- Learning how to vendor Python packages for Workers
- Testing MCP server functionality with local development
FAQ from Python Workers: FastMCP Example
What is the Worker size limit for this example?
Due to the size of the Worker, this example can only be deployed on the Workers Paid plan. Free plan users will encounter deployment errors because the Worker exceeds the 3MB size limit.
What Python version is required for vendoring packages?
Only Python 3.12 works for the vendoring process. Other versions of Python will not work.
How do I add additional packages to this example?
You need to install vendored packages using the pyodide build environment. Run the command pip install -t src/vendor -r vendor.txt inside the .venv-pyodide virtual environment. Re-run this command for any additional packages.
How can I test and lint this project?
Run pytest tests to execute tests. For linting and formatting, use ruff check . and ruff format . respectively, after installing Ruff.