feat: replace StdioTransport with StreamableHTTP + Node.js cluster #10
Reference in New Issue
Block a user
Delete Branch "feat/streamable-http"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Integrates StreamableHTTP natively into the MCP server, replacing
StdioServerTransportwithStreamableHTTPServerTransport+ Node.jsclusterfor concurrent client support.src/index.ts: Replace stdio transport with StreamableHTTP. Node.js cluster primary forks N workers; each worker handles HTTP requests on:8080/mcpwith a serializing mutex (stateless, 1 request at a time per worker).Dockerfile: Multi-stage build (node:22-slimbuilder + runtime). No patches needed — StreamableHTTP is now native in the source..gitea/workflows/docker-build.yml: CI/CD pipeline — on push tomain, builds and pushes Docker image togitea.p-lao.com/aleleba/docmost-mcp.Environment variables
MCP_WORKERS(default:4) — number of cluster workersTest plan
npm run buildcompiles without errorsmainand publishes image to Gitea registrylistening on port 8080, path /mcp🤖 Generated with Claude Code