docs: add migrations page (#1859)
This commit is contained in:
parent
32a4587da9
commit
f2b89ec83e
2 changed files with 70 additions and 0 deletions
69
docs/migration.md
Normal file
69
docs/migration.md
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
# Migration Guide: v1 to v2
|
||||||
|
|
||||||
|
This guide covers the breaking changes introduced in v2 of the MCP Python SDK and how to update your code.
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
Version 2 of the MCP Python SDK introduces several breaking changes to improve the API, align with the MCP specification, and provide better type safety.
|
||||||
|
|
||||||
|
## Breaking Changes
|
||||||
|
|
||||||
|
### `streamablehttp_client` removed
|
||||||
|
|
||||||
|
The deprecated `streamablehttp_client` function has been removed. Use `streamable_http_client` instead.
|
||||||
|
|
||||||
|
**Before (v1):**
|
||||||
|
|
||||||
|
```python
|
||||||
|
from mcp.client.streamable_http import streamablehttp_client
|
||||||
|
|
||||||
|
async with streamablehttp_client(
|
||||||
|
url="http://localhost:8000/mcp",
|
||||||
|
headers={"Authorization": "Bearer token"},
|
||||||
|
timeout=30,
|
||||||
|
sse_read_timeout=300,
|
||||||
|
auth=my_auth,
|
||||||
|
) as (read_stream, write_stream, get_session_id):
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
|
**After (v2):**
|
||||||
|
|
||||||
|
```python
|
||||||
|
import httpx
|
||||||
|
from mcp.client.streamable_http import streamable_http_client
|
||||||
|
|
||||||
|
# Configure headers, timeout, and auth on the httpx.AsyncClient
|
||||||
|
http_client = httpx.AsyncClient(
|
||||||
|
headers={"Authorization": "Bearer token"},
|
||||||
|
timeout=httpx.Timeout(30, read=300),
|
||||||
|
auth=my_auth,
|
||||||
|
)
|
||||||
|
|
||||||
|
async with http_client:
|
||||||
|
async with streamable_http_client(
|
||||||
|
url="http://localhost:8000/mcp",
|
||||||
|
http_client=http_client,
|
||||||
|
) as (read_stream, write_stream, get_session_id):
|
||||||
|
...
|
||||||
|
```
|
||||||
|
|
||||||
|
### `StreamableHTTPTransport` parameters removed
|
||||||
|
|
||||||
|
The `headers`, `timeout`, `sse_read_timeout`, and `auth` parameters have been removed from `StreamableHTTPTransport`. Configure these on the `httpx.AsyncClient` instead (see example above).
|
||||||
|
|
||||||
|
## Deprecations
|
||||||
|
|
||||||
|
<!-- Add deprecations below -->
|
||||||
|
|
||||||
|
## New Features
|
||||||
|
|
||||||
|
<!-- Add new features below -->
|
||||||
|
|
||||||
|
## Need Help?
|
||||||
|
|
||||||
|
If you encounter issues during migration:
|
||||||
|
|
||||||
|
1. Check the [API Reference](api.md) for updated method signatures
|
||||||
|
2. Review the [examples](https://github.com/modelcontextprotocol/python-sdk/tree/main/examples) for updated usage patterns
|
||||||
|
3. Open an issue on [GitHub](https://github.com/modelcontextprotocol/python-sdk/issues) if you find a bug or need further assistance
|
||||||
|
|
@ -13,6 +13,7 @@ site_url: https://modelcontextprotocol.github.io/python-sdk
|
||||||
nav:
|
nav:
|
||||||
- Introduction: index.md
|
- Introduction: index.md
|
||||||
- Installation: installation.md
|
- Installation: installation.md
|
||||||
|
- Migration Guide: migration.md
|
||||||
- Documentation:
|
- Documentation:
|
||||||
- Concepts: concepts.md
|
- Concepts: concepts.md
|
||||||
- Low-Level Server: low-level-server.md
|
- Low-Level Server: low-level-server.md
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue