New Features: - HTTP/SSE server (server-http.js) for network access - Express-based web server with MCP SSE transport - Rate limiting (50 req/min per IP) - Request timeouts (30s) - Concurrent request limiting (max 10) - Circuit breaker pattern for failure handling - Memory monitoring (450MB threshold) - Gzip compression for responses - CORS support for cross-origin requests - Health check endpoint (/health) Infrastructure: - Updated package.json with new dependencies (express, cors, compression, rate-limit) - New npm script: start:http for HTTP server - Comprehensive deployment guide (DEPLOYMENT.md) - Updated README with deployment instructions Graceful Degradation: - Automatically rejects requests when at capacity - Circuit breaker opens after 5 failures - Memory-aware request handling - Per-IP rate limiting to prevent abuse The original stdio server (index.js) remains unchanged for local use. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
26 lines
670 B
JSON
26 lines
670 B
JSON
{
|
|
"name": "hpr-knowledge-base-mcp",
|
|
"version": "1.0.0",
|
|
"description": "MCP server for Hacker Public Radio knowledge base",
|
|
"type": "module",
|
|
"main": "index.js",
|
|
"bin": {
|
|
"hpr-mcp": "./index.js"
|
|
},
|
|
"scripts": {
|
|
"start": "node index.js",
|
|
"start:http": "node server-http.js",
|
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
},
|
|
"keywords": ["mcp", "hacker-public-radio", "hpr", "podcast", "knowledge-base"],
|
|
"author": "",
|
|
"license": "CC-BY-SA",
|
|
"dependencies": {
|
|
"@modelcontextprotocol/sdk": "^1.20.2",
|
|
"express": "^4.18.2",
|
|
"cors": "^2.8.5",
|
|
"compression": "^1.7.4",
|
|
"express-rate-limit": "^7.1.5"
|
|
}
|
|
}
|