pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/modelcontextprotocol/python-sdk/pull/1111/files

t" href="https://github.githubassets.com/assets/code-34e10031edc15af1.css" /> Add streamable HTTP starlette example to Python SDK docs by pamelafox · Pull Request #1111 · modelcontextprotocol/python-sdk · GitHub
Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 27 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -838,10 +838,35 @@ The streamable HTTP transport supports:

### Mounting to an Existing ASGI Server

> **Note**: SSE transport is being superseded by [Streamable HTTP transport](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http).

By default, SSE servers are mounted at `/sse` and Streamable HTTP servers are mounted at `/mcp`. You can customize these paths using the methods described below.

#### Streamable HTTP servers

The following example shows how to use `streamable_http_app()`, a method that returns a `Starlette` application object.
You can then append additional routes to that application as needed.

```
from starlette.routing import Route

mcp = FastMCP("My App")

app = mcp.streamable_http_app()
# Additional non-MCP routes can be added like so:
# app.router.routes.append(Route("/", endpoint=other_route_function))
```

To customize the route from the default of "/mcp", either specify the `streamable_http_path` option for the `FastMCP` constructor,
or set `FASTMCP_STREAMABLE_HTTP_PATH` environment variable.

Note that in Starlette and FastAPI (which is based on Starlette), the "/mcp" route will redirect to "/mcp/",
so you may need to use "/mcp/" when pointing MCP clients at your servers.

For more information on mounting applications in Starlette, see the [Starlette documentation](https://www.starlette.io/routing/#submounting-routes).

#### SSE servers

> **Note**: SSE transport is being superseded by [Streamable HTTP transport](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http).

You can mount the SSE server to an existing ASGI server using the `sse_app` method. This allows you to integrate the SSE server with other ASGI applications.

```python
Expand Down
Loading
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy