MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

Universal upgrade tool for MCP servers across all AI coding clients

Created 4/25/2026
Updated about 4 hours ago
Repository documentation and setup instructions

mcp-upgrade banner

mcp-upgrade

Universal upgrade tool for MCP (Model Context Protocol) servers across all AI coding clients and package ecosystems.

No AI coding client has built-in MCP server upgrade commands. mcp-upgrade fills that gap — it auto-discovers your servers, checks for updates, and upgrades them.

Features

  • Auto-discovery — finds MCP servers from Claude Code, Claude Desktop, Cursor, Windsurf, VS Code, Cline, Continue, Zed, and Codex CLI
  • Type detection — infers whether each server is npm, pip, Go, Docker, or a GitHub release binary
  • Version checking — queries npm, PyPI, GitHub Releases, and Docker Hub for latest versions
  • Upgrade execution — upgrades servers using the appropriate package manager
  • Deduplication — same binary referenced by multiple clients shows once
  • JSON output — machine-readable output for scripting

Install

Homebrew

brew install GeiserX/mcp-upgrade/mcp-upgrade

Go

go install github.com/GeiserX/mcp-upgrade@latest

From releases

Download the binary for your platform from Releases.

Usage

Scan

Discover all MCP servers across your installed clients:

mcp-upgrade scan
Found 3 client(s), 9 server(s)

Clients:
  Claude Code (~/.claude.json)
  Claude Code (~/.claude/settings.json)
  Cursor (~/.cursor/mcp.json)

┌──────────────────┬────────────────┬──────────────────────────────┬─────────────┐
│      SERVER      │      TYPE      │           PACKAGE            │   CLIENT    │
├──────────────────┼────────────────┼──────────────────────────────┼─────────────┤
│ github-personal  │ github-release │ -                            │ Claude Code │
│ pubmed           │ npx            │ @cyanheads/pubmed-mcp-server │ Claude Code │
│ atlassian        │ pipx           │ mcp-atlassian                │ Claude Code │
│ terraform        │ go-binary      │ -                            │ Claude Code │
│ jenkins          │ uvx            │ mcp-jenkins                  │ Claude Code │
│ kagisearch       │ docker         │ -                            │ Claude Code │
│ datadog          │ npx            │ @winor30/mcp-server-datadog  │ Claude Code │
└──────────────────┴────────────────┴──────────────────────────────┴─────────────┘

Check

Check all servers for available updates:

mcp-upgrade check
  MCP Server Status

┌──────────────────┬────────────────┬─────────┬────────┬────────────┐
│      SERVER      │      TYPE      │ CURRENT │ LATEST │   STATUS   │
├──────────────────┼────────────────┼─────────┼────────┼────────────┤
│ atlassian        │ pipx           │ 0.21.0  │ 0.21.1 │ UPDATE     │
│ github-personal  │ github-release │ 0.31.0  │ v1.0.3 │ UPDATE     │
│ terraform        │ go-binary      │ 0.4.0   │ v0.5.1 │ UPDATE     │
│ jenkins          │ uvx            │ 0.11.7  │ 3.2.0  │ UPDATE     │
│ pubmed           │ npx            │ (auto)  │ 2.6.1  │ AUTO       │
│ datadog          │ npx            │ (auto)  │ 1.7.0  │ AUTO       │
│ kagisearch       │ docker         │ (local) │ latest │ AUTO       │
└──────────────────┴────────────────┴─────────┴────────┴────────────┘

  4 upgradable, 0 up-to-date, 3 auto-latest, 0 skipped

Upgrade

Upgrade all outdated servers:

mcp-upgrade upgrade

Upgrade specific servers:

mcp-upgrade upgrade atlassian terraform

Dry run (show what would happen):

mcp-upgrade upgrade --dry-run

JSON output

All commands support --json for scripting:

mcp-upgrade check --json | jq '.[] | select(.status == "UPDATE")'

Supported server types

| Type | Detection | Version check | Upgrade method | |------|-----------|---------------|----------------| | npx | npx -y <pkg> command | npm registry | Clear npx cache | | pipx | Binary in pipx venvs | PyPI API | pipx upgrade | | uvx | uvx <pkg> command | PyPI API | uv tool upgrade | | go-binary | Binary in GOPATH/bin | GitHub Releases | Download release binary | | github-release | Known binary mapping | GitHub Releases | Download release binary | | docker | docker run <image> | Docker Hub | docker pull | | local | Local scripts/binaries | Skipped | Manual |

Supported clients

| Client | Config location | |--------|----------------| | Claude Code | ~/.claude.json, ~/.claude/settings.json | | Claude Code (project) | .mcp.json | | Claude Desktop | Platform-specific app config | | Cursor | ~/.cursor/mcp.json | | Windsurf | ~/.codeium/windsurf/mcp_config.json | | VS Code | ~/.vscode/mcp.json, .vscode/mcp.json | | Cline | ~/.cline/mcp_settings.json | | Continue | ~/.continue/config.json | | Zed | ~/.config/zed/settings.json | | Codex CLI | ~/.codex/mcp.json |

Status meanings

| Status | Meaning | |--------|---------| | UPDATE | Newer version available, can be upgraded | | UP-TO-DATE | Already on latest version | | AUTO | Server resolves latest on each run (npx/uvx/docker) | | SKIP | Local or unknown type, cannot check | | UNKNOWN | Could not determine version info | | ERROR | Version check failed |

How it works

  1. Scan — reads config files from all supported AI clients, extracts MCP server entries
  2. Detect — analyzes each server's command to determine its type (npm, pip, Go, Docker, etc.)
  3. Resolve — maps known binaries to their GitHub repos, detects pipx-managed binaries
  4. Check — queries package registries concurrently (max 5 parallel) for latest versions
  5. Compare — normalizes version strings (strips v prefix) and determines upgrade status
  6. Upgrade — executes the appropriate upgrade command per server type

License

GPL-3.0

Quick Setup
Installation guide for this server

Install Package (if required)

docker run -i GeiserX/mcp-upgrade

Cursor configuration (mcp.json)

{ "mcpServers": { "geiserx-mcp-upgrade": { "command": "docker", "args": [ "run", "-i", "GeiserX/mcp-upgrade" ] } } }