PORT is set (or --port is passed), the server exposes HTTP endpoints.
POST /mcp
Primary MCP transport endpoint using Streamable HTTP sessions.
Authentication
WhenAPI_KEY is set, requests must include authentication:
Via HTTP Header (recommended):
initialize request (session establishment) is exempt from authentication when no session exists.
Usage
- Use through MCP clients (SDK clients, BrowserAgent, framework integrations)
- Session lifecycle is managed through MCP session headers
- Supports MCP JSON-RPC protocol for tool calls
GET /healthz
Lightweight health endpoint for container and platform probes.
Response
Authentication
The health endpoint does not require authentication (for container orchestrators and probes).GET /
Root endpoint returns basic service information.
Response
Status behavior
200 OKfor healthy service on/healthzand/401 Unauthorizedfor invalid or missing API keys (when authentication is enabled)404 Not Foundfor unknown routes- MCP JSON-RPC error payloads for malformed
/mcprequests
Error responses
Authentication error (401)
MCP protocol error
Recommended probe usage
- Docker Compose healthcheck: Use
/healthz - Kubernetes probes: Use
/healthz - Synthetic checks: Run deterministic MCP tool sequence instead of just health checks
Example using curl
Transport modes comparison
| Feature | Stdio mode | HTTP mode |
|---|---|---|
| Endpoint | Standard input/output | http://host:port/mcp |
| Authentication | Process-level | Optional API key |
| Use case | Claude Desktop, local clients | Remote services, containers |
| Health checks | N/A | /healthz endpoint |