Skip to main content
This page explains the major MCP server styles and the tradeoffs between them.

Why This Matters

Most integration issues come from transport mismatch:
  • local subprocess workflows expect stdio
  • hosted/shared workflows expect HTTP transports
  • some clients still use older SSE-compatible remote flows

Style Comparison

How To Choose Quickly

  1. Use stdio when the tool must run locally and you control the machine.
  2. Use Streamable HTTP when the server is shared, hosted, or multi-tenant.
  3. Use legacy SSE mode only when a required client/server still depends on it.
  4. Use connector-style remote MCP when an API provider requires remote-only integration.

Security Notes

  • Validate Origin headers for browser-based transports and avoid exposing local servers beyond trusted boundaries.
  • Prefer binding local HTTP listeners to loopback (localhost) unless you explicitly need network exposure.
  • Treat access tokens as bearer credentials and store/forward them only over TLS.
  • Keep remote MCP endpoints authenticated by default; avoid unauthenticated public tool surfaces.
Authoritative guidance: MCP transports + security considerations