deps: update mcp requirement from <2.0.0,>=1.28.1 to >=1.28.1,<3.0.0 (#2963)
Updates the requirements on [mcp](https://github.com/modelcontextprotocol/python-sdk) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/modelcontextprotocol/python-sdk/releases">mcp's releases</a>.</em></p> <blockquote> <h2>v2.0.0</h2> <h1>MCP Python SDK v2 Stable Release</h1> <p>This is v2.0.0, the stable v2 release of the MCP Python SDK. It supports the 2026-07-28 revision of the Model Context Protocol and serves every earlier revision from the same server. <code>pip install mcp</code> now installs 2.x.</p> <pre lang="bash"><code>pip install "mcp[cli]" # or uv add "mcp[cli]" </code></pre> <h3>Documentation Rewrite</h3> <p>The <a href="https://py.sdk.modelcontextprotocol.io/">documentation</a> has the full tutorial and API reference. Coming from v1? <a href="https://py.sdk.modelcontextprotocol.io/whats-new/">What's new in v2</a> is the tour of what changed and why, and the <a href="https://py.sdk.modelcontextprotocol.io/migration/">migration guide</a> lists every breaking change with before-and-after code.</p> <h3>V1 Maintenance mode</h3> <p><strong>v1.x is in maintenance mode and will only receive security fixes from now on</strong> The 1.x line lives on the <a href="https://github.com/modelcontextprotocol/python-sdk/tree/v1.x"><code>v1.x</code> branch</a>, continues to receive critical bug fixes and security patches, and is documented at <a href="https://py.sdk.modelcontextprotocol.io/v1/">https://py.sdk.modelcontextprotocol.io/v1/</a>. If your project is not ready to migrate, keep a <code><2</code> upper bound on your requirement (for example <code>mcp>=1.28,<2</code>).</p> <h2>Highlights</h2> <h3>One SDK, both protocol eras</h3> <p>v2 speaks the 2026-07-28 revision (stateless requests with no handshake, <code>server/discover</code>, <code>subscriptions/listen</code>, multi-round-trip requests) and still serves every 2025-era client from the same <code>MCPServer</code>, over Streamable HTTP and stdio, with nothing to configure. <code>Client(target)</code> negotiates the version automatically.</p> <h3><code>FastMCP</code> is now <code>MCPServer</code>, and there is a first-class <code>Client</code></h3> <p>The decorator API is unchanged; the low-level <code>Server</code> is rebuilt around a shared dispatcher engine, and one <code>Client</code> object replaces v1's transport-plus-<code>ClientSession</code>-plus-<code>initialize()</code> layering. It connects to a URL, a stdio subprocess, a custom transport, or straight to a server object in memory for tests.</p> <h3>Multi-round-trip requests and resolver dependency injection</h3> <p>At 2026-07-28 the server can no longer call the client, so tools return the question instead. A <code>Resolve(fn)</code> parameter is filled by your function invisibly to the model and can put a question to the user; one tool body serves both eras.</p> <h3>Extension APIs, OpenTelemetry, and a standalone types package</h3> <p>Servers and clients compose protocol extensions through pluggable extension APIs (MCP Apps built in); OpenTelemetry tracing ships on by default; every protocol type is its own package, <code>mcp-types</code> (imported as <code>mcp_types</code>), published in lock-step with <code>mcp</code>.</p> <h3>Hardened stdio and auth</h3> <p>stdio servers keep handler subprocesses and stray prints off the wire, and stdout is diverted to stderr while serving. OAuth adds RFC 9207 issuer validation, the SEP-990 identity-assertion flow, and the client-credentials extension.</p> <h2>Coming from a v2 pre-release</h2> <p>Since the last release candidate: the per-version wire packages are private (<code>mcp_types._v*</code>), <code>mcp.types</code> is a permanent alias for <code>mcp_types</code>, the auth registration request model is split from the registered-client record, cancelled requests are no longer answered, and log notifications are gated on the per-request log-level opt-in at 2026-07-28. Since the betas: <code>Client(cache=False)</code> is now <code>cache=None</code> with <code>CacheConfig()</code> the default; <code>Context.client_id</code>, <code>RFC7523OAuthClientProvider</code>, and <code>OAuthClientProvider(timeout=)</code> are removed; the client-credentials providers take <code>scope=</code>; <code>message_handler</code> receives notifications and exceptions only; <code>FileResource(is_binary=)</code> becomes <code>encoding</code>; <code>MCP_*</code> env vars are gone with <code>pydantic-settings</code>; Streamable HTTP servers reject bodies over 4 MiB with HTTP 413. The migration guide covers all of it.</p> <h2>Known gaps</h2> <p>The tasks extension (SEP-2663) is not part of this release. On the client, the DPoP proof binding (SEP-1932) and the workload-identity <code>jwt-bearer</code> grant are not implemented; both are additive and can land in 2.x.</p> <h2>Feedback</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/6f69a3758ebf2ee55ce050f58b470ce11af71133"><code>6f69a37</code></a> Present v2 as the stable release across the README, docs, and policies (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3178">#3178</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/78e6fbb7e46d43069f88935e80cbea206d807e18"><code>78e6fbb</code></a> Serve v2 docs at the site root, with permanent per-major paths (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3176">#3176</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/af06330a31c379d8a3ab5ffba88e0ad682aa0ed9"><code>af06330</code></a> Remove unused StreamableHTTPTransport.get_session_id() (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3205">#3205</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/68ca87e20b5a999d879745332d94c7277a012492"><code>68ca87e</code></a> Document the two-line release process for stable v2 (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3179">#3179</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/c9c431b71aeb48e3c4405f9d32144f8ed13fd116"><code>c9c431b</code></a> Expose the middleware chain on MCPServer and stop sending unrequested change ...</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/528e36655819a686d5b07e23d70748fcecebfc0a"><code>528e366</code></a> Fail fast on server-to-client requests in JSON-response mode instead of hangi...</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/27f5cc7a46bc22be525c5b0a6fce8006d6fcea08"><code>27f5cc7</code></a> Remove unused mcpserver.exceptions.ValidationError (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3199">#3199</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/89c5e700f2340b4382785609e8844f384e1a8043"><code>89c5e70</code></a> Gate log notifications on the per-request log-level opt-in at 2026-07-28 (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3198">#3198</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/b61ce388dd9fe3ec202a68331f218b4ed740f0fa"><code>b61ce38</code></a> docs: fix off-by-one hl_lines in apps.md (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3196">#3196</a>)</li> <li><a href="https://github.com/modelcontextprotocol/python-sdk/commit/b7c9a916d672d543917fcbd11e0dc9df2efa99c7"><code>b7c9a91</code></a> Add mcp.types as a permanent alias for mcp_types (<a href="https://redirect.github.com/modelcontextprotocol/python-sdk/issues/3190">#3190</a>)</li> <li>Additional commits viewable in <a href="https://github.com/modelcontextprotocol/python-sdk/compare/v1.28.1...v2.0.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
+2
-2
@@ -78,7 +78,7 @@ proxy = [
|
||||
"orjson>=3.9.14; platform_python_implementation != 'PyPy'",
|
||||
"httpx[http2]>=0.24.0",
|
||||
"openai>=2.14.0", # OpenAI API format support
|
||||
"mcp>=1.28.1,<2.0.0", # MCP server (headroom_compress, retrieve, stats)
|
||||
"mcp>=1.28.1,<3.0.0", # MCP server (headroom_compress, retrieve, stats)
|
||||
"magika>=0.6.0", # ML content detection for ContentRouter
|
||||
"zstandard>=0.20.0", # Decompress zstd request bodies (Codex, etc.)
|
||||
"websockets>=13.0", # WebSocket proxy for /v1/responses (Codex gpt-5.4+)
|
||||
@@ -225,7 +225,7 @@ autogen = [
|
||||
]
|
||||
# MCP server for Claude Code integration
|
||||
mcp = [
|
||||
"mcp>=1.28.1,<2.0.0",
|
||||
"mcp>=1.28.1,<3.0.0",
|
||||
"httpx>=0.24.0",
|
||||
"starlette>=0.27.0",
|
||||
"uvicorn>=0.23.0,<1.0",
|
||||
|
||||
Reference in New Issue
Block a user