A FastAPI server that implements the Model Context Protocol (MCP) using Server-Sent Events (SSE) transport to provide cat facts.
- Get a single random cat fact
- Subscribe to a stream of cat facts delivered every 10 seconds
- SSE (Server-Sent Events) for real-time communication
- FastAPI framework with automatic OpenAPI documentation
- Python 3.12+
- Dependencies:
- fastapi
- mcp[cli]
- uvicorn
- cmake
git clone <repository-url>
cd python-mcppython -m venv venv
source venv/bin/activate # On Windows, use: venv\Scripts\activatepip install -e .Start the server using the uv run command:
uv run startOnce the server is running, it will be available at:
- API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
To use this MCP server with VS Code, you need to add the following configuration to your mcp.json file:
{
"servers": {
"mcp-sse": {
"type": "sse",
"url": "http://0.0.0.0:8000/sse"
}
}
}This configuration tells VS Code how to connect to your MCP server using SSE transport.
Connect to the SSE endpoint and request a single cat fact. The response will always start with "Hi!".
GET /: HomepageGET /about: Information about the applicationGET /status: Current server statusGET /sse: SSE endpoint for MCP communicationGET /docs: API documentation (Swagger UI)GET /redoc: Alternative API documentation (ReDoc)