Skip to content

build(deps): bump mcp from 1.28.1 to 2.0.0 in /ai/slackbot-mcp-client/slack-identity - #157

Merged
zimeg merged 3 commits into
mainfrom
dependabot/pip/ai/slackbot-mcp-client/slack-identity/mcp-2.0.0
Aug 1, 2026
Merged

build(deps): bump mcp from 1.28.1 to 2.0.0 in /ai/slackbot-mcp-client/slack-identity#157
zimeg merged 3 commits into
mainfrom
dependabot/pip/ai/slackbot-mcp-client/slack-identity/mcp-2.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 29, 2026

Copy link
Copy Markdown
Contributor

Bumps mcp from 1.28.1 to 2.0.0.

Release notes

Sourced from mcp's releases.

v2.0.0

MCP Python SDK v2 Stable Release

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. pip install mcp now installs 2.x.

pip install "mcp[cli]"
# or
uv add "mcp[cli]"

Documentation Rewrite

The documentation has the full tutorial and API reference. Coming from v1? What's new in v2 is the tour of what changed and why, and the migration guide lists every breaking change with before-and-after code.

V1 Maintenance mode

v1.x is in maintenance mode and will only receive security fixes from now on The 1.x line lives on the v1.x branch, continues to receive critical bug fixes and security patches, and is documented at https://py.sdk.modelcontextprotocol.io/v1/. If your project is not ready to migrate, keep a <2 upper bound on your requirement (for example mcp>=1.28,<2).

Highlights

One SDK, both protocol eras

v2 speaks the 2026-07-28 revision (stateless requests with no handshake, server/discover, subscriptions/listen, multi-round-trip requests) and still serves every 2025-era client from the same MCPServer, over Streamable HTTP and stdio, with nothing to configure. Client(target) negotiates the version automatically.

FastMCP is now MCPServer, and there is a first-class Client

The decorator API is unchanged; the low-level Server is rebuilt around a shared dispatcher engine, and one Client object replaces v1's transport-plus-ClientSession-plus-initialize() layering. It connects to a URL, a stdio subprocess, a custom transport, or straight to a server object in memory for tests.

Multi-round-trip requests and resolver dependency injection

At 2026-07-28 the server can no longer call the client, so tools return the question instead. A Resolve(fn) parameter is filled by your function invisibly to the model and can put a question to the user; one tool body serves both eras.

Extension APIs, OpenTelemetry, and a standalone types package

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, mcp-types (imported as mcp_types), published in lock-step with mcp.

Hardened stdio and auth

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.

Coming from a v2 pre-release

Since the last release candidate: the per-version wire packages are private (mcp_types._v*), mcp.types is a permanent alias for mcp_types, 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: Client(cache=False) is now cache=None with CacheConfig() the default; Context.client_id, RFC7523OAuthClientProvider, and OAuthClientProvider(timeout=) are removed; the client-credentials providers take scope=; message_handler receives notifications and exceptions only; FileResource(is_binary=) becomes encoding; MCP_* env vars are gone with pydantic-settings; Streamable HTTP servers reject bodies over 4 MiB with HTTP 413. The migration guide covers all of it.

Known gaps

The tasks extension (SEP-2663) is not part of this release. On the client, the DPoP proof binding (SEP-1932) and the workload-identity jwt-bearer grant are not implemented; both are additive and can land in 2.x.

Feedback

... (truncated)

Commits
  • 6f69a37 Present v2 as the stable release across the README, docs, and policies (#3178)
  • 78e6fbb Serve v2 docs at the site root, with permanent per-major paths (#3176)
  • af06330 Remove unused StreamableHTTPTransport.get_session_id() (#3205)
  • 68ca87e Document the two-line release process for stable v2 (#3179)
  • c9c431b Expose the middleware chain on MCPServer and stop sending unrequested change ...
  • 528e366 Fail fast on server-to-client requests in JSON-response mode instead of hangi...
  • 27f5cc7 Remove unused mcpserver.exceptions.ValidationError (#3199)
  • 89c5e70 Gate log notifications on the per-request log-level opt-in at 2026-07-28 (#3198)
  • b61ce38 docs: fix off-by-one hl_lines in apps.md (#3196)
  • b7c9a91 Add mcp.types as a permanent alias for mcp_types (#3190)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jul 29, 2026
@dependabot
dependabot Bot requested a review from a team as a code owner July 29, 2026 13:24
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file python Pull requests that update python code labels Jul 29, 2026
Bumps [mcp](https://github.com/modelcontextprotocol/python-sdk) from 1.28.1 to 2.0.0.
- [Release notes](https://github.com/modelcontextprotocol/python-sdk/releases)
- [Changelog](https://github.com/modelcontextprotocol/python-sdk/blob/main/RELEASE.md)
- [Commits](modelcontextprotocol/python-sdk@v1.28.1...v2.0.0)

---
updated-dependencies:
- dependency-name: mcp
  dependency-version: 2.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/pip/ai/slackbot-mcp-client/slack-identity/mcp-2.0.0 branch from 6651ef4 to 3e150fa Compare August 1, 2026 01:53
zimeg and others added 2 commits July 31, 2026 19:17
Companion to the mcp 1.28.1 -> 2.0.0 bump on this branch. In addition to
the shared server-API changes (FastMCP -> MCPServer, transport kwargs
moved to streamable_http_app(), ToolAnnotations snake_case), slack-identity
needed the Context/_meta changes:

- Context now comes from mcp.server.mcpserver (the module whose Context the
  framework recognizes and filters from the tool arg schema); importing it
  elsewhere breaks JSON-schema generation for the tool.
- Context is no longer parameterized in the tool signature (ctx: Context).
- Request _meta is a plain dict now: ctx.request_context.meta.model_extra
  -> ctx.request_context.meta.get('slack'); cast the extra to dict[str, Any].

The @mcp_server.tool decorator body is otherwise unchanged. Verified: ruff,
format, mypy, pytest all pass.

Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>
Convert the request _meta (a RequestParamsMeta TypedDict, a dict at
runtime) to a plain dict[str, Any] and read the custom 'slack' field with
ordinary .get() instead of typing.cast. Same behavior, no type-checker
override in the example.

Co-Authored-By: Claude <svc-devxp-claude@slack-corp.com>

@zimeg zimeg left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dependabot LGTM! And thanks for keeping these packages current 🐢 💨

Comment on lines +40 to +41
meta: dict[str, Any] = dict(ctx.request_context.meta or {})
slack = meta.get("slack") or {}

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔬 note: This pattern continues to work without introducing new variables! Unauthenticated requests fail and authenticated requests succeed.

@zimeg
zimeg merged commit db1b41c into main Aug 1, 2026
6 checks passed
@zimeg
zimeg deleted the dependabot/pip/ai/slackbot-mcp-client/slack-identity/mcp-2.0.0 branch August 1, 2026 03:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file python Pull requests that update python code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant