> ## Documentation Index
> Fetch the complete documentation index at: https://fastapi-mcp.tadata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Transport

> Understanding MCP transport methods and how to choose between them

FastAPI-MCP supports two MCP transport methods for client-server communication: **HTTP transport** (recommended) and **SSE transport** (backwards compatibility).

## HTTP Transport (Recommended)

HTTP transport is the **recommended** transport method as it implements the latest MCP Streamable HTTP specification. It provides better session management, more robust connection handling, and aligns with standard HTTP practices.

### Using HTTP Transport

```python {7} theme={null}
from fastapi import FastAPI
from fastapi_mcp import FastApiMCP

app = FastAPI()
mcp = FastApiMCP(app)

# Mount using HTTP transport (recommended)
mcp.mount_http()
```

## SSE Transport (Backwards Compatibility)

SSE (Server-Sent Events) transport is maintained for backwards compatibility with older MCP implementations.

### Using SSE Transport

```python {7} theme={null}
from fastapi import FastAPI
from fastapi_mcp import FastApiMCP

app = FastAPI()
mcp = FastApiMCP(app)

# Mount using SSE transport (backwards compatibility)
mcp.mount_sse()
```

## Advanced Configuration

Both transport methods support the same FastAPI integration features like custom routing and authentication:

```python theme={null}
from fastapi import FastAPI, APIRouter
from fastapi_mcp import FastApiMCP

app = FastAPI()
router = APIRouter(prefix="/api/v1")

mcp = FastApiMCP(app)

# Mount to custom path with HTTP transport
mcp.mount_http(router, mount_path="/my-http")

# Or with SSE transport
mcp.mount_sse(router, mount_path="/my-sse")
```

## Client Connection Examples

### HTTP Transport Client Connection

For HTTP transport, MCP clients connect directly to the HTTP endpoint:

```json theme={null}
{
  "mcpServers": {
    "fastapi-mcp": {
      "url": "http://localhost:8000/mcp"
    }
  }
}
```

### SSE Transport Client Connection

For SSE transport, MCP clients use the same URL but communicate via Server-Sent Events:

```json theme={null}
{
  "mcpServers": {
    "fastapi-mcp": {
      "url": "http://localhost:8000/sse"
    }
  }
}
```
