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-python
Try
vercel dev
again
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/python
30-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
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A serverless MCP server deployed on Vercel that provides basic utility tools including echo, time retrieval, arithmetic operations, and mock weather information. Includes an interactive client application for testing and demonstration purposes.