Skip to main content
Glama

MCP Server with SSE

by Fuglys
README.md3.31 kB
# MCP Server with SSE Een eenvoudige MCP (Model Context Protocol) server met Server-Sent Events (SSE) functionaliteit, geoptimaliseerd voor deployment op Render.com. ## Features - 🚀 **Express.js server** - Lightweight en snel - 📡 **Server-Sent Events (SSE)** - Real-time data streaming - ⏰ **Timestamp broadcasting** - Elke 5 seconden - 💓 **Keep-alive pings** - Elke 30 seconden - 🌐 **CORS enabled** - Cross-origin requests toegestaan - 🏥 **Health checks** - Voor Render.com monitoring - 📊 **Status endpoints** - Server informatie en statistieken ## Endpoints - `GET /` - Server informatie en beschikbare endpoints - `GET /health` - Health check voor monitoring - `GET /sse` - Server-Sent Events stream - `GET /mcp/status` - Uitgebreide server status ## Local Development 1. **Installeer dependencies:** ```bash npm install ``` 2. **Start de server:** ```bash npm start # of voor development: npm run dev ``` 3. **Test SSE verbinding:** Open `http://localhost:3000/sse` in je browser of gebruik curl: ```bash curl -N http://localhost:3000/sse ``` ## Deployment op Render.com ### Automatische Deployment 1. **Connect GitHub repository** in Render dashboard 2. **Selecteer deze repository** 3. **Render detecteert automatisch** de `render.yaml` configuratie 4. **Deploy** - Render gebruikt automatisch de configuratie ### Handmatige Deployment 1. **Maak nieuwe Web Service** in Render 2. **Configuratie:** - **Build Command:** `npm install` - **Start Command:** `npm start` - **Health Check Path:** `/health` - **Environment:** Node.js - **Plan:** Free tier ## SSE Data Format De SSE stream stuurt JSON data in het volgende formaat: ### Connection Event ```json { "type": "connection", "message": "SSE connection established", "timestamp": "2024-01-01T12:00:00.000Z", "server": "MCP Server" } ``` ### Timestamp Event (elke 5 seconden) ```json { "type": "timestamp", "timestamp": "2024-01-01T12:00:05.000Z", "uptime": 123.456, "memory": { "rss": 12345678, "heapTotal": 8765432, "heapUsed": 5432109, "external": 987654 } } ``` ### Keep-alive Ping (elke 30 seconden) ``` : keep-alive 1704110400000 ``` ## Environment Variables - `PORT` - Server port (default: 3000, Render sets automatically) - `NODE_ENV` - Environment (production/development) ## CORS Configuration De server is geconfigureerd om alle origins toe te staan voor maximale compatibiliteit: ```javascript cors({ origin: '*', methods: ['GET', 'POST', 'OPTIONS'], allowedHeaders: ['Content-Type', 'Cache-Control', 'Accept'], credentials: false }) ``` ## Error Handling - **500 errors** - Gelogd en JSON response - **404 errors** - Friendly message met beschikbare endpoints - **SSE disconnects** - Automatic cleanup van intervals - **Graceful shutdown** - SIGTERM/SIGINT handling ## Monitoring ### Health Check ```bash curl https://your-app.onrender.com/health ``` ### Server Status ```bash curl https://your-app.onrender.com/mcp/status ``` ## Dependencies - **express** - Web framework - **cors** - Cross-origin resource sharing ## License MIT License - Zie LICENSE bestand voor details. ## Support Voor vragen of issues, maak een GitHub issue aan in deze repository: https://github.com/Fuglys/mcp-server

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Fuglys/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server