Fuglys/mcp-server
If you are the rightful owner of mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
This document provides a comprehensive overview of a Model Context Protocol (MCP) server with Server-Sent Events (SSE) capabilities, optimized for deployment on Render.com.
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 endpointsGET /health- Health check voor monitoringGET /sse- Server-Sent Events streamGET /mcp/status- Uitgebreide server status
Local Development
-
Installeer dependencies:
npm install -
Start de server:
npm start # of voor development: npm run dev -
Test SSE verbinding: Open
http://localhost:3000/ssein je browser of gebruik curl:curl -N http://localhost:3000/sse
Deployment op Render.com
Automatische Deployment
- Connect GitHub repository in Render dashboard
- Selecteer deze repository
- Render detecteert automatisch de
render.yamlconfiguratie - Deploy - Render gebruikt automatisch de configuratie
Handmatige Deployment
- Maak nieuwe Web Service in Render
- Configuratie:
- Build Command:
npm install - Start Command:
npm start - Health Check Path:
/health - Environment: Node.js
- Plan: Free tier
- Build Command:
SSE Data Format
De SSE stream stuurt JSON data in het volgende formaat:
Connection Event
{
"type": "connection",
"message": "SSE connection established",
"timestamp": "2024-01-01T12:00:00.000Z",
"server": "MCP Server"
}
Timestamp Event (elke 5 seconden)
{
"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:
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
curl https://your-app.onrender.com/health
Server Status
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