Repository navigation
deps: consolidated security update and dependency refresh - #61
Merged
SamMorrowDrums merged 1 commit intoOct 2, 2026
Merged
Conversation
- Fix all open Dependabot alerts (pyjwt, cryptography, anyio advisories) by bumping mcp to >=1.30.0 and letting uv resolve its transitive deps (pyjwt 2.13.0 -> 2.15.1, cryptography 48.0.1 -> 50.0.2, anyio 4.13.0 -> 4.15.1, starlette, pydantic, python-multipart, etc.) - Add an upper bound (mcp<2) to prevent an accidental jump to the breaking mcp 2.x line (FastMCP was renamed to MCPServer); this is also what was causing the mcp-diff CI check to fail on every open Dependabot PR, since that workflow installs via 'pip install -e .' and ignores uv.lock, so it previously picked up mcp 2.x and crashed on import. - Bump dev tooling: ruff, pytest, pyright, watchfiles to latest stable. - Bump astral-sh/setup-uv GitHub Action from v7 to v10.2.0 (latest). - Refresh uv.lock accordingly. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Consolidated dependency update to resolve all open Dependabot security alerts and bring dependencies up to date.
Dependabot PRs merged in step 2
None. All three open Dependabot PRs (#58 cryptography, #59 anyio, #60 pyjwt) had a failing
mcp-diffcheck, so per the task instructions they were not merged directly — their updates are folded into this PR instead. Root cause of themcp-difffailures: that workflow installs viapip install -e .(bypassinguv.lock), which resolved the unboundedmcp>=1.28.1constraint to the newmcp2.x line.mcp2.x renamesFastMCPtoMCPServer, so the server crashed on import withModuleNotFoundError. This is fixed here (see below) and verified locally againstpip install -e ..Alerts fixed (18 open alerts, all now resolved)
Fixed by:
mcp:>=1.28.1→>=1.30.0,<2(also adds an explicit upper bound — see root-cause note above)pyjwt(transitive viamcp[crypto]):2.13.0→2.15.1cryptography(transitive):48.0.1→50.0.2anyio:>=4.13.0→>=4.14.2(direct bump), lockfile resolves to4.15.1starlette,pydantic,pydantic-settings,python-multipart, etc. bumped transitively along withmcpVerified with
check_dependency_vulnerabilities: 0 vulnerable out of 18 checked packages/actions.Other updates
ruff0.14.11→0.16.10,pytest9.0.3→9.1.1,pyright1.1.408→1.1.414,watchfiles1.1.1→1.3.0astral-sh/setup-uvGitHub Action:v7→v10.2.0(latest; no floating major tags exist beyond v7 for this action, so pinned to the exact latest release, consistent with howmcp-conformance-action/mcp-server-diffare already pinned in this repo)uv.lockfully refreshedDeferred
mcp2.x (major, breakingFastMCP→MCPServerrename) — deferred. Not required to fix any alert, and migrating the server code is a non-trivial breaking change out of scope for a dependency-hygiene PR. An explicit<2upper bound now prevents accidentally picking it up until a deliberate migration is done.Validation
uv run ruff check .— passuv run ruff format --check .— passuv run pyright— same 4 pre-existing errors as onmain(unrelated to this change, confirmed by running pyright against a clean clone ofmain)python -m mcp_starter.server --httpstarts successfully with the updated lockfilepip install -e .(as used by themcp-diffCI workflow) now resolves tomcp1.x and the server starts, fixing the previously-failing checkDependabot config
.github/dependabot.ymlalready covers both ecosystems in use (github-actionsandpip/uv) — no changes needed there.