JUHE API Marketplace
hk4crprasad avatar
MCP Server

FastAPI SSE MCP Random

A FastAPI server implementing the Model Context Protocol (MCP) for structured tool use, providing utility tools including random number generation, image generation via Azure OpenAI DALL-E, and AI podcast generation.

0
GitHub Stars
8/23/2025
Last Updated
No Configuration
Please check the documentation below.

README Documentation

FastAPI SSE MCP Random

A FastAPI server that implements the Model Context Protocol (MCP) using Server-Sent Events (SSE) for streaming communication. This project provides various utility tools including random number generation, image generation using Azure OpenAI DALL-E, and AI podcast generation.

Features

  • Server-Sent Events (SSE) for real-time streaming communication
  • Model Context Protocol (MCP) implementation for structured tool use
  • Multiple utility tools:
    • Echo tool and resources
    • Random number generator
    • Image generation via Azure OpenAI DALL-E 3
    • AI podcast generation
    • "Think tool" for reflective responses

Prerequisites

  • Python 3.10+
  • Azure OpenAI API access (for image generation)

Installation

  1. Clone the repository:
git clone <repository-url>
cd fastapi_sse_mcp_random
  1. Install the dependencies:
pip install -r requirements.txt

Or using uv:

uv pip install -e .

Usage

Starting the server

Run the server with:

python main.py

The server will start at http://0.0.0.0:8000

Available Endpoints

  • GET /: Health check endpoint
  • GET /sse/: SSE connection endpoint
  • POST /messages/: Endpoint for client messages

Available Tools

Echo Tool

{
  "name": "echo_tool",
  "parameters": {
    "message": "Hello, world!"
  }
}

Random Number Generator

{
  "name": "random_number",
  "parameters": {
    "min_value": 1,
    "max_value": 100
  }
}

Image Generation

{
  "name": "generate_image",
  "parameters": {
    "prompt": "A beautiful landscape with mountains and a lake"
  }
}

Podcast Generation

{
  "name": "generate_podcast",
  "parameters": {
    "prompt": "The future of artificial intelligence",
    "duration": 5,
    "name1": "Mark",
    "voice1": "Thomas",
    "name2": "Sophia",
    "voice2": "Emily"
  }
}

Think Tool

{
  "name": "think_tool",
  "parameters": {
    "input": "What are the implications of quantum computing?"
  }
}

Project Structure

  • main.py: Main FastAPI application and MCP tools implementation
  • sse.py: Server-Sent Events (SSE) implementation
  • pyproject.toml: Project metadata and dependencies
  • requirements.txt: Basic dependencies list

Dependencies

  • FastAPI: Web framework for building APIs
  • MCP: Model Context Protocol implementation
  • OpenAI: Client for Azure OpenAI services
  • Uvicorn: ASGI server for running FastAPI applications
  • Requests: HTTP library for API calls

License

[Specify your license here]

Contributing

[Instructions for contributing to the project]

Quick Actions

Key Features

Model Context Protocol
Secure Communication
Real-time Updates
Open Source