Skip to content

MCP server should notify user about available updates #125

Description

@crtahlin

Problem

When the swarm-provenance-mcp Docker image has a newer version available, there's no mechanism to notify the user or auto-update. Users can run stale versions indefinitely without knowing.

This is particularly relevant because Claude Code launches MCP servers via .mcp.json config, and users rarely check manually for updates.

Context

During debugging an MCP setup issue (tools not surfacing in Claude Code sessions), we found this is a common gap across all MCP servers. The npx-based servers can use @latest tag as a workaround, but Docker images have no equivalent automatic mechanism.

Proposed Solutions

Option A — Startup version check:
On server startup, query GitHub releases / GHCR tags and log a warning to stderr if a newer version exists. Example:

INFO: swarm-provenance-mcp v0.1.0
WARN: Newer version v0.2.0 available. Pull with: docker pull ghcr.io/datafund/swarm-provenance-mcp:latest

Option B — MCP protocol version response:
Include update info in the initialize response metadata so the client (Claude Code) can surface it.

Option C — Health check endpoint:
Add version info to the health_check tool response, including whether the running version is latest.

Additional Context

  • Current Docker config in .mcp.json doesn't pin a version tag (uses implicit :latest)
  • Docker's :latest tag doesn't auto-pull — it uses whatever was last pulled locally
  • Other MCP servers (plur, datacore) use npx with @latest suffix as a workaround

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions