trackmcp
Back to directory
sammcj

mcp-package-version

View on GitHub

An MCP server that provides LLMs with the latest stable package versions when coding Go-based implementation.

119 stars GoAI & Machine Learning Updated Oct 24, 2025
aijavascriptllmmcpnodepackagepythonsecuritytooltypescriptversioningversions

Documentation

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**

Screenshot

tooling with and without mcp-package-version

Installation

Requirements:

Using `go install` (Recommended for MCP Client Setup):

bash
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:

json
{
  "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:

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

You can also run the server in a container:

bash
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.:

json
{
  "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`:

>

> ```bash

> [ -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)

bash
mcp-package-version

SSE Transport

bash
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:

bash
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:

json
{
  "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:

json
{
  "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:

json
{
  "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:

json
{
  "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:

json
{
  "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:

json
{
  "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:

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

AWS Bedrock Models

List all AWS Bedrock models:

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

Search for specific AWS Bedrock models:

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

Get the latest Claude Sonnet model:

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

Swift Packages

Check the latest versions of Swift packages:

json
{
  "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:

json
{
  "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

Frequently asked questions

What is mcp-package-version?

mcp-package-version is An MCP server that provides LLMs with the latest stable package versions when coding Go-based implementation.

How do I install mcp-package-version?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is mcp-package-version open source?

Yes — it is hosted on GitHub at https://github.com/sammcj/mcp-package-version and has 119 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP