fast-mcp-server

fast-mcp-server

0

The Fast MCP Server is a lightweight protocol server designed to expose custom tools through Server-Sent Events for AI client integration. It offers easy deployment via Docker and includes example functionalities like weather alerts.

Fast MCP Server

A lightweight MCP (Model Context Protocol) Server implementation exposing custom tools via SSE for integration with AI clients.

Table of Contents

Overview

This repository provides a simple MCP Server that implements custom tools (e.g., weather lookups) and exposes them over Server-Sent Events (SSE). It can be run in a Docker container for quick deployment and integrates seamlessly with clients that support the MCP protocol.

Features

  • Exposes tools as MCP endpoints over SSE
  • Containerized for easy deployment via Docker Compose
  • Configurable port and host
  • Example tools included (e.g., weather alerts & forecast)

Prerequisites

  • Docker ≥ 20.10
  • Docker Compose ≥ 1.29

Getting Started

Clone the repository and navigate into the project directory:

git clone git@github.com:kongo97/fast-mcp-server.git
cd fast-mcp-server

Build the Docker Image

docker compose build

This will build the MCP Server image using the provided Dockerfile.

Start the Container

docker compose up -d

This command will:

  • Pull/build the image
  • Start the container in detached mode
  • Map port 8100 on the host to port 8100 in the container

To stop and remove the container, run:

docker compose down

Usage

Connecting an MCP Client

Configure your MCP-compatible client (e.g., Claude Desktop) to connect via SSE at:

http://localhost:8100/sse

Inside docs folder, you can find a simple configuration compatible with Claude Desktop (claude_desktop_config.json)

Available Endpoints

MethodPathDescription
GET/sseOpen SSE stream for MCP communication
POST/sseSend JSON-RPC requests over SSE

Configuration

You can customize the server port and host by setting environment variables in docker-compose.yml or directly in the container:

services:
  mcp-server:
    environment:
      - MCP_PORT=8100         # default port
      - MCP_HOST=0.0.0.0      # bind address

Development

  1. Edit or add your MCP tools in src/server.py (or your chosen file).
  2. Rebuild and restart the container:
    docker compose build
    docker compose up -d
    
  3. Check logs for errors:
    docker compose logs -f
    

Troubleshooting

  • 404 on /sse: Ensure the server is bound to the correct port and path.
  • Connection refused: Verify Docker is running and the container is healthy:
    docker ps
    docker logs simple-mcp-server
    
  • Client errors: Check the client configuration for correct SSE URL and protocol version.