Provides a serverless MCP server deployment platform with tools for echoing messages, getting server time, performing basic calculations, and retrieving mock weather information
Vercel MCP Python Server
A Model Context Protocol (MCP) server built with Python and FastMCP, designed to run on Vercel's serverless platform.
Project Structure
Features
This MCP server provides the following tools:
echo: Echo back a provided message
get_time: Get the current server time
add_numbers: Add two numbers together
get_weather_info: Get mock weather information for a location
And the following resources:
config://server: Server configuration information
Prerequisites
Before setting up the project, you'll need to install the Vercel CLI:
Installing Vercel CLI
For Git Bash on Windows:
Install Node.js (if not already installed):
Download from nodejs.org
Install Vercel CLI globally:
npm install -g vercelVerify installation:
vercel --version
If you encounter PATH issues:
Alternative methods:
Setup
Create and activate virtual environment (Recommended):
# Create virtual environment python -m venv venv # Activate virtual environment # On Windows PowerShell: .\venv\Scripts\Activate.ps1 # On Windows Git Bash: source venv/Scripts/activate # On macOS/Linux: source venv/bin/activateInstall dependencies:
pip install -r requirements.txtLogin to Vercel:
vercel loginDeploy to Vercel:
vercel --prod
Local Development
To test locally, you can use Vercel's development server:
Troubleshooting Windows Issues
Note: Local development with vercel dev may have issues on Windows due to runtime initialization errors. This is a known limitation and doesn't affect production deployment.
If you encounter issues with
Solution 1: Deploy directly (Recommended)
Your server will be available at the provided Vercel URL and works perfectly in production.
Solution 2: Test locally with Python (in virtual environment)
Solution 3: Use the deployed version Your server will be available at your Vercel domain after deployment.
You can test it by:
Opening the URL in your browser
Using a tool like Postman or curl
Connecting with an MCP client
Solution 4: Run as Administrator (if needed)
Close your terminal
Right-click on Git Bash/PowerShell and select "Run as administrator"
Navigate back to your project:
cd /d/repos/vercel-mcp-pythonTry
vercel devagain
API Endpoints
GET /: Returns server information and statusPOST /: Handles MCP protocol requestsOPTIONS /: Handles CORS preflight requests
Dependencies
fastmcp>=0.15.0: FastMCP framework for building MCP serversuvicorn>=0.24.0: ASGI server for Python web applicationspython-json-logger>=2.0.0: JSON logging for Python applications
Configuration
The server is configured through vercel.json with:
Python runtime using
@vercel/python30-second maximum execution time
CORS enabled for cross-origin requests
Automatic routing to the main handler
Usage
Once deployed, your MCP server will be available at your Vercel domain. You can connect to it using any MCP-compatible client.
Using the Included Client App
A rich, interactive client application is included in the client-app/ directory:
The client provides:
🔌 Connection testing
🔧 Interactive tool calling
📚 Resource management
🧪 Automated testing of all tools
🎨 Beautiful console interface
See client-app/README.md for detailed usage instructions.
Additional Resources
Vercel MCP Documentation - Official Vercel documentation for Model Context Protocol
MCP Servers Repository - Explore available MCP servers
AI SDK Documentation - Use the AI SDK to initialize MCP clients
License
MIT