mcp-typescript-template
Express and Effect template for a stateless remote MCP server
TypeScript 7 project serving a stateless MCP endpoint at /mcp on port 3000 via Express and createMcpHandler from the MCP TypeScript SDK, with Effect for config, logging and errors. Ships echo and elicit_echo tools with outputSchema, structuredContent and annotations, HTTP-boundary and in-memory tests, a Dockerfile and compose with a /health check. For TypeScript teams starting a remote MCP server; no auth.
Strengths
- Stateless per the 2026-07-28 spec with SDK fallback for older clients
- Tests at the HTTP boundary and against an in-memory client
- Typed tool I/O via Effect Schema adapted to MCP Standard Schema
- Dockerfile and docker-compose with health check
Weaknesses
- No auth or OAuth; remote hosts will need it
- Effect is a hard dependency with a learning curve
- TypeScript 7 compiler plus a TS6 alias for ESLint is unusual tooling
- TypeScript, MCP TypeScript SDK (@modelcontextprotocol/server)
- GitHub template
- Docker