Network & Transports¶
Guidance for securing MCP transports and webhooks when running Faxbot in production.
MCP Transports¶
- HTTP (Node MCP)
- Port: 3001 (default)
- Protect with
MCP_HTTP_API_KEY; set strictMCP_HTTP_CORS_ORIGIN(no*when credentials). -
Run behind TLS via reverse proxy; add IP allowlists and rate limits where appropriate.
-
SSE (Node/Python MCP)
- Ports: 3002 (Node), 3003 (Python)
- Require OAuth2/JWT in production. Configure
OAUTH_ISSUER,OAUTH_AUDIENCE, and (optionally)OAUTH_JWKS_URL. -
Run behind TLS; validate tokens against your IdP; set short TTLs.
-
WebSocket (Node MCP)
- Port: 3004 (default)
- Protect with
MCP_WS_API_KEY(or reuseAPI_KEY) and run behind TLS or an authenticated proxy. - Use only for trusted clients or internal networks.
Webhooks & Callbacks¶
- Phaxio (outbound status)
- Endpoint:
POST /phaxio-callback - Signature:
X-Phaxio-Signature(HMAC-SHA256 of raw body usingPHAXIO_API_SECRET) -
Always use HTTPS public URLs; avoid exposing staging/test endpoints publicly.
-
Phaxio (inbound)
- Endpoint:
POST /phaxio-inbound -
Signature:
X-Phaxio-Signature(HMAC-SHA256) -
Sinch (inbound)
- Endpoint:
POST /sinch-inbound - Basic auth:
SINCH_INBOUND_BASIC_USER/PASS -
HMAC:
X-Sinch-SignaturewithSINCH_INBOUND_HMAC_SECRET -
SIP/Asterisk (inbound)
- Endpoint:
POST /_internal/asterisk/inbound - Header:
X-Internal-Secret: <ASTERISK_INBOUND_SECRET> - Only accessible over private networks; do not expose publicly.
Reverse Proxy Recommendations¶
- Enforce TLS; redirect HTTP→HTTPS.
- Set security headers (HSTS, CSP, X-Content-Type-Options, Referrer-Policy, X-Frame-Options, Permissions-Policy).
- Limit request sizes; apply rate limits and IP restrictions as needed.
- Do not log PHI; log IDs and generic metadata only.