返回 MCP 目录
public公开dns本地运行

MCP 包版本推荐

MCP服务器是一个用于检查多个软件包注册表中最新稳定版本的工具,支持包括npm、PYPI、Maven Central、Docker Hub、GitHub容器注册表等平台。它帮助开发者在编写代码时确保推荐最新的软件包版本,从而提升代码的稳定性和安全性。MCP服务器可以通过Go安装或Docker容器运行,支持STDIO和SSE两种传输模式,并提供了详细的命令行选项和配置方法。此外,它还集成了CI/CD流程,自动化构建、测试和发布。

article

README

Package Version MCP Server

smithery badge

An MCP server that provides tools for checking latest stable package versions from multiple package registries:

  • npm (Node.js/JavaScript)
  • PyPI (Python)
  • Maven Central (Java)
  • Go Proxy (Go)
  • Swift Packages (Swift)
  • AWS Bedrock (AI Models)
  • Docker Hub (Container Images)
  • GitHub Container Registry (Container Images)
  • GitHub Actions

This server helps LLMs ensure they're recommending up-to-date package versions when writing code.

IMPORTANT: I'm slowly moving across this tool to a component of my mcp-devtools server

https://github.com/sammcj/mcp-package-version MCP server

Screenshot

tooling with and without mcp-package-version

Installation

Requirements:

Using go install (Recommended for MCP Client Setup):

go install github.com/sammcj/mcp-package-version/v2@HEAD

Then setup your client to use the MCP server. Assuming you've installed the binary with go install github.com/sammcj/mcp-package-version/v2@HEAD and your $GOPATH is /Users/sammcj/go/bin, you can provide the full path to the binary:

{
  "mcpServers": {
    "package-version": {
      "command": "/Users/sammcj/go/bin/mcp-package-version"
    }
  }
}
  • For the Cline VSCode Extension this will be ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  • For Claude Desktop ~/Library/Application\ Support/Claude/claude_desktop_config.json
  • For GoMCP ~/.config/gomcp/config.yaml

Other Installation Methods

Or clone the repository and build it:

git clone https://github.com/sammcj/mcp-package-version.git
cd mcp-package-version
make

You can also run the server in a container:

docker run -p 18080:18080 ghcr.io/sammcj/mcp-package-version:main

Note: If running in a container, you'll need to configure the client to use the URL instead of command, e.g.:

{
  "mcpServers": {
    "package-version": {
      "url": "http://localhost:18080",
    }
  }
}

Tip: Go Path

If $GOPATH/bin is not in your PATH, you'll need to provide the full path to the binary when configuring your MCP client (e.g. /Users/sammcj/go/bin/mcp-package-version).

If you haven't used go applications before and have only just installed go, you may not have a $GOPATH set up in your environment. This is important for any go install command to work correctly.

Understanding $GOPATH

The go install command downloads and compiles Go packages, placing the resulting binary executable in the bin subdirectory of your $GOPATH. By default, $GOPATH is > usually located at $HOME/go on Unix-like systems (including macOS). If you haven't configured $GOPATH explicitly, Go uses this default.

The location $GOPATH/bin (e.g., /Users/your_username/go/bin) needs to be included in your system's PATH environment variable if you want to run installed Go binaries directly by name from any terminal location.

You can add the following line to your shell configuration file (e.g., ~/.zshrc, ~/.bashrc) to set $GOPATH to the default if it's not already set, and ensure $GOPATH/bin is in your PATH:

[ -z "$GOPATH" ] && export GOPATH="$HOME/go"; echo "$PATH" | grep -q ":$GOPATH/bin" || export PATH="$PATH:$GOPATH/bin"

After adding this line, restart your terminal or MCP client.

Usage

The server supports two transport modes: stdio (default) and SSE (Server-Sent Events).

STDIO Transport (Default)

mcp-package-version

SSE Transport

mcp-package-version --transport sse --port 18080 --base-url "http://localhost:18080"

This would make the server available to clients at http://localhost:18080/sse (Note the /sse suffix!).

Command-line Options

  • --transport, -t: Transport type (stdio or sse). Default: stdio
  • --port: Port to use for SSE transport. Default: 18080
  • --base-url: Base URL for SSE transport. Default: http://localhost

Docker Images

Docker images are available from GitHub Container Registry:

docker pull ghcr.io/sammcj/mcp-package-version:main

You can also see the example docker-compose.yaml.

Tools

NPM Packages

Check the latest versions of NPM packages:

{
  "name": "check_npm_versions",
  "arguments": {
    "dependencies": {
      "react": "^17.0.2",
      "react-dom": "^17.0.2",
      "lodash": "4.17.21"
    },
    "constraints": {
      "react": {
        "majorVersion": 17
      }
    }
  }
}

Python Packages (requirements.txt)

Check the latest versions of Python packages from requirements.txt:

{
  "name": "check_python_versions",
  "arguments": {
    "requirements": [
      "requests==2.28.1",
      "flask>=2.0.0",
      "numpy"
    ]
  }
}

Python Packages (pyproject.toml)

Check the latest versions of Python packages from pyproject.toml:

{
  "name": "check_pyproject_versions",
  "arguments": {
    "dependencies": {
      "dependencies": {
        "requests": "^2.28.1",
        "flask": ">=2.0.0"
      },
      "optional-dependencies": {
        "dev": {
          "pytest": "^7.0.0"
        }
      },
      "dev-dependencies": {
        "black": "^22.6.0"
      }
    }
  }
}

Java Packages (Maven)

Check the latest versions of Java packages from Maven:

{
  "name": "check_maven_versions",
  "arguments": {
    "dependencies": [
      {
        "groupId": "org.springframework.boot",
        "artifactId": "spring-boot-starter-web",
        "version": "2.7.0"
      },
      {
        "groupId": "com.google.guava",
        "artifactId": "guava",
        "version": "31.1-jre"
      }
    ]
  }
}

Java Packages (Gradle)

Check the latest versions of Java packages from Gradle:

{
  "name": "check_gradle_versions",
  "arguments": {
    "dependencies": [
      {
        "configuration": "implementation",
        "group": "org.springframework.boot",
        "name": "spring-boot-starter-web",
        "version": "2.7.0"
      },
      {
        "configuration": "testImplementation",
        "group": "junit",
        "name": "junit",
        "version": "4.13.2"
      }
    ]
  }
}

Go Packages

Check the latest versions of Go packages from go.mod:

{
  "name": "check_go_versions",
  "arguments": {
    "dependencies": {
      "module": "github.com/example/mymodule",
      "require": [
        {
          "path": "github.com/gorilla/mux",
          "version": "v1.8.0"
        },
        {
          "path": "github.com/spf13/cobra",
          "version": "v1.5.0"
        }
      ]
    }
  }
}

Docker Images

Check available tags for Docker images:

{
  "name": "check_docker_tags",
  "arguments": {
    "image": "nginx",
    "registry": "dockerhub",
    "limit": 5,
    "filterTags": ["^1\\."],
    "includeDigest": true
  }
}

AWS Bedrock Models

List all AWS Bedrock models:

{
  "name": "check_bedrock_models",
  "arguments": {
    "action": "list"
  }
}

Search for specific AWS Bedrock models:

{
  "name": "check_bedrock_models",
  "arguments": {
    "action": "search",
    "query": "claude",
    "provider": "anthropic"
  }
}

Get the latest Claude Sonnet model:

{
  "name": "get_latest_bedrock_model",
  "arguments": {}
}

Swift Packages

Check the latest versions of Swift packages:

{
  "name": "check_swift_versions",
  "arguments": {
    "dependencies": [
      {
        "url": "https://github.com/apple/swift-argument-parser",
        "version": "1.1.4"
      },
      {
        "url": "https://github.com/vapor/vapor",
        "version": "4.65.1"
      }
    ],
    "constraints": {
      "https://github.com/apple/swift-argument-parser": {
        "majorVersion": 1
      }
    }
  }
}

GitHub Actions

Check the latest versions of GitHub Actions:

{
  "name": "check_github_actions",
  "arguments": {
    "actions": [
      {
        "owner": "actions",
        "repo": "checkout",
        "currentVersion": "v3"
      },
      {
        "owner": "actions",
        "repo": "setup-node",
        "currentVersion": "v3"
      }
    ],
    "includeDetails": true
  }
}

Releases and CI/CD

This project uses GitHub Actions for continuous integration and deployment. The workflow automatically:

  1. Builds and tests the application on every push to the main branch and pull requests
  2. Creates a release when a tag with the format v* (e.g., v1.0.0) is pushed
  3. Builds and pushes Docker images to GitHub Container Registry

License

MIT

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端