MCP Demo

A production-ready FastMCP reference server with hackathon resources and reusable starter prompts
Overview
A FastMCP server with comprehensive hackathon overview resources and reusable starter prompts. Clone, install dependencies or build the Docker image, and you have an MCP server that Cursor can load immediately.
Requirements
Component | Version | Required |
Python | 3.12+ | Yes |
uv | Latest | Yes |
Docker | 24+ | Optional |
Node.js | 18+ | Optional |
Quick Start
Local Python Setup
# Install dependencies and run
uv sync
uv run server.py
Docker Setup
# Build the image
docker build -t mcp-demo:latest .
# Run the container
docker run --rm -i mcp-demo:latest
# Development mode with live reload
docker run --rm -it -v "$(pwd)":/app mcp-demo:latest
Remote MCP (no local setup)
npx -y mcp-remote https://cursor-denver-mcp-hackathon.fastmcp.app/mcp
Deployment Options
Mode | Use Case | Setup | Best For |
Local STDIO | Cursor integration | Simple | Development |
Remote HTTP/SSE | Public access | Advanced | Production |
Docker Local | Isolated environment | Medium | Testing |
Docker Remote | Cloud deployment | Advanced | Production |
Container Registry Push
# GitHub Container Registry
docker tag mcp-demo:latest ghcr.io/<your-user>/mcp-demo:latest
docker push ghcr.io/<your-user>/mcp-demo:latest
# Docker Hub
docker tag mcp-demo:latest <your-user>/mcp-demo:latest
docker push <your-user>/mcp-demo:latest
Cursor Configuration
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"fastmcp-demo": {
"command": "uv",
"args": ["run", "server.py"],
"cwd": "/absolute/path/to/mcp-demo"
}
}
}
{
"mcpServers": {
"fastmcp-demo": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"--volume",
"/absolute/path/to/mcp-demo:/app",
"mcp-demo"
]
}
}
}
Remote MCP Server
{
"mcpServers": {
"denver-hackathon": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://cursor-denver-mcp-hackathon.fastmcp.app/mcp"
]
}
}
}
Restart Cursor after updating configuration.
Testing
# Run all tests
pytest
# Run with coverage
pytest --cov=. --cov-report=html
# Run specific test
pytest tests/test_server.py -v
Project Structure
mcp-demo/
├── server.py # FastMCP server
├── main.py # Alternative entry point
├── Dockerfile # Container build
├── requirements.txt # Dependencies
├── pyproject.toml # Project config
├── resources/
│ └── hackathon_overview.md
├── prompts/
│ └── fastmcp_python_starter.md
└── tests/
├── conftest.py
└── test_server.py
License
MIT License
Built for the Cursor Denver Hackathon