Skip to content

Commit 2be1b57

Browse files
committed
Address review: roadmap open item, baseline scope, deferral and placement nits
No-Verification-Needed: doc-only change
1 parent bc5bfe8 commit 2be1b57

4 files changed

Lines changed: 7 additions & 7 deletions

File tree

‎CONTRIBUTING.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,6 @@ pre-commit run --all-files
140140
- Follow PEP 8 style guidelines
141141
- Add type hints to all functions
142142
- Include docstrings for public APIs
143-
- Changing a dependency's version bound or adding a runtime dependency follows the [Dependency Policy](DEPENDENCY_POLICY.md)
144143

145144
## Pull Requests
146145

@@ -166,6 +165,7 @@ A few dozen lines can be reviewed in minutes. Hundreds of lines across many file
166165
2. Add tests for new functionality
167166
3. Ensure CI passes
168167
4. Address review feedback
168+
5. Dependency bound changes and new runtime dependencies follow the [Dependency Policy](DEPENDENCY_POLICY.md)
169169

170170
## Code of Conduct
171171

‎DEPENDENCY_POLICY.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Every runtime dependency is a `>=` floor set to the oldest version that provides
88

99
## When a floor moves
1010

11-
A floor is raised only when the SDK starts relying on something that first appeared in that version — not because the dependency published a security advisory. The `>=` bound already lets, and expects, you to run the newest release your other constraints allow, so a higher floor would only shrink the environments the SDK installs into; nor does the SDK add code to work around a dependency's vulnerability, since the fix belongs upstream and in your lockfile ([background](https://github.com/Kludex/uvicorn/discussions/2643), [python-sdk#1552](https://github.com/modelcontextprotocol/python-sdk/issues/1552)). Adding a new runtime dependency, or moving one to its next major version, is decided in an issue before the pull request. Which of these may ship in a minor release is set by the [versioning policy](VERSIONING.md); floor raises are called out in the release notes.
11+
A floor is raised only when the SDK starts relying on functionality or a fix that first appeared in that version — not because the dependency published a security advisory. The `>=` bound already lets, and expects, you to run the newest release your other constraints allow, so a higher floor would only shrink the environments the SDK installs into; nor does the SDK add code to work around a dependency's vulnerability, since the fix belongs upstream and in your lockfile ([background](https://github.com/Kludex/uvicorn/discussions/2643), [python-sdk#1552](https://github.com/modelcontextprotocol/python-sdk/issues/1552)). Floor raises may ship in a minor release under the [versioning policy](VERSIONING.md) and are called out in the release notes. Adding a new runtime dependency, or moving one to its next major version, is decided in an issue before the pull request.
1212

1313
## Automated updates
1414

‎RELEASE.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,9 @@ hand for the same reason as above. Then ask someone to review the release.
111111
Pre-releases of the next version are cut from `main` with a PEP 440
112112
pre-release tag: `aN` for alphas, later `bN`/`rcN` for betas and release
113113
candidates. The PEP 440 suffix is what keeps `pip install mcp` on the stable
114-
version — installers select a pre-release only when it is requested explicitly (an
115-
exact pin, a specifier that names a pre-release version, or `--pre`) or when no
116-
final release satisfies the requirement at all.
114+
version — installers do not pick a pre-release for a plain `mcp` requirement while a
115+
final release satisfies it; a pre-release is opted into with an exact pin, a
116+
specifier that names a pre-release version, or `--pre`.
117117

118118
1. During a pre-release phase the README and docs pin the exact pre-release
119119
version, so update those examples first (grep the outgoing version — the

‎ROADMAP.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ The SDK's work is organized by MCP specification revision, with one GitHub proje
44

55
## The 2026-07-28 revision
66

7-
v2 implements the [2026-07-28 specification](https://modelcontextprotocol.io/specification/2026-07-28) and negotiates back to every earlier revision. Board: **[python-sdk · 2026-07-28 spec](https://github.com/orgs/modelcontextprotocol/projects/42)** (tracking issue [#2891](https://github.com/modelcontextprotocol/python-sdk/issues/2891)); the cross-SDK view is [2026-07-28 Spec Implementation](https://github.com/orgs/modelcontextprotocol/projects/41). Still open there: the capabilities API and `server/discover` handler ([#2896](https://github.com/modelcontextprotocol/python-sdk/issues/2896)).
7+
v2 implements the [2026-07-28 specification](https://modelcontextprotocol.io/specification/2026-07-28) and negotiates back to every earlier revision. Board: **[python-sdk · 2026-07-28 spec](https://github.com/orgs/modelcontextprotocol/projects/42)**; the cross-SDK view is [2026-07-28 Spec Implementation](https://github.com/orgs/modelcontextprotocol/projects/41). Still open there: making advertised capabilities configurable rather than pre-computed ([#2896](https://github.com/modelcontextprotocol/python-sdk/issues/2896)).
88

99
## Not yet implemented
1010

11-
The extensions and optional client-auth mechanisms this SDK does not implement yet are tracked as the entries in the conformance suite's expected-failures baseline, [`.github/actions/conformance/expected-failures.yml`](.github/actions/conformance/expected-failures.yml), which burns down as each lands:
11+
Extensions and optional client-auth mechanisms not yet implemented are tracked in the issue tracker; those the conformance suite already exercises also appear in its expected-failures baseline, [`.github/actions/conformance/expected-failures.yml`](.github/actions/conformance/expected-failures.yml), which burns down as each lands. The main ones:
1212

1313
* **Tasks extension** (`io.modelcontextprotocol/tasks`, [SEP-2663](https://github.com/modelcontextprotocol/modelcontextprotocol/blob/main/seps/2663-tasks-extension.md)) — deferred at 2.0 because the 2026-07-28 design is wire-incompatible with the earlier in-core Tasks; tracked in [#2806](https://github.com/modelcontextprotocol/python-sdk/issues/2806).
1414
* **DPoP-bound access tokens** ([SEP-1932](https://github.com/modelcontextprotocol/modelcontextprotocol/issues/1932)) in the OAuth client.

0 commit comments

Comments
 (0)