Paketversion MCP-Server
Ein MCP-Server, der Tools zum Überprüfen der neuesten stabilen Paketversionen aus mehreren Paketregistern bereitstellt:
npm (Node.js/JavaScript)
PyPI (Python)
Maven Central (Java)
Go-Proxy (Go)
Swift-Pakete (Swift)
AWS Bedrock (KI-Modelle)
Docker Hub (Container-Images)
GitHub Container Registry (Container-Images)
GitHub-Aktionen
Dieser Server hilft LLMs sicherzustellen, dass sie beim Schreiben von Code aktuelle Paketversionen empfehlen.
WICHTIG: Ich baue dieses Tool langsam zu einer Komponente meines
Screenshot

Related MCP server: Coding Standards MCP Server
Installation
Anforderungen:
Eine moderne Go-Version ist installiert (siehe Go-Installation )
Verwenden von go install (empfohlen für die Einrichtung des MCP-Clients):
go install github.com/sammcj/mcp-package-version/v2@HEADRichten Sie anschließend Ihren Client für die Verwendung des MCP-Servers ein. Vorausgesetzt, Sie haben die Binärdatei mit go install github.com/sammcj/mcp-package-version/v2@HEAD installiert und Ihr $GOPATH lautet /Users/sammcj/go/bin , können Sie den vollständigen Pfad zur Binärdatei angeben:
{
"mcpServers": {
"package-version": {
"command": "/Users/sammcj/go/bin/mcp-package-version"
}
}
}Für die Cline VSCode-Erweiterung ist dies
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.jsonFür Claude Desktop
~/Library/Application\ Support/Claude/claude_desktop_config.jsonFür GoMCP
~/.config/gomcp/config.yaml
Andere Installationsmethoden
Oder klonen Sie das Repository und erstellen Sie es:
git clone https://github.com/sammcj/mcp-package-version.git
cd mcp-package-version
makeSie können den Server auch in einem Container ausführen:
docker run -p 18080:18080 ghcr.io/sammcj/mcp-package-version:mainHinweis: Wenn Sie in einem Container arbeiten, müssen Sie den Client so konfigurieren, dass er die URL anstelle des Befehls verwendet, z. B.:
{
"mcpServers": {
"package-version": {
"url": "http://localhost:18080",
}
}
}Tipp: Gehe zu Pfad
Wenn sich $GOPATH/bin nicht in Ihrem PATH befindet, müssen Sie beim Konfigurieren Ihres MCP-Clients den vollständigen Pfad zur Binärdatei angeben (z. B. /Users/sammcj/go/bin/mcp-package-version ).
Wenn Sie Go-Anwendungen noch nicht verwendet haben und Go gerade erst installiert haben, ist in Ihrer Umgebung möglicherweise kein $GOPATH eingerichtet. Dies ist wichtig, damit alle go install korrekt funktionieren.
$GOPATHDer Befehl
go installlädt Go-Pakete herunter, kompiliert sie und platziert die resultierende ausführbare Binärdatei im UnterverzeichnisbinIhres$GOPATH. Standardmäßig befindet sich$GOPATHauf Unix-ähnlichen Systemen (einschließlich macOS) normalerweise unter$HOME/go. Wenn Sie$GOPATHnicht explizit konfiguriert haben, verwendet Go diese Standardeinstellung.Der Speicherort
$GOPATH/bin(z. B./Users/your_username/go/bin) muss in die UmgebungsvariablePATHIhres Systems aufgenommen werden, wenn Sie installierte Go-Binärdateien direkt über den Namen von einem beliebigen Terminalspeicherort aus ausführen möchten.Sie können Ihrer Shell-Konfigurationsdatei (z. B.
~/.zshrc,~/.bashrc) die folgende Zeile hinzufügen, um$GOPATHauf den Standardwert zu setzen, falls dies nicht bereits der Fall ist, und sicherzustellen, dass$GOPATH/binin IhremPATHenthalten ist:[ -z "$GOPATH" ] && export GOPATH="$HOME/go"; echo "$PATH" | grep -q ":$GOPATH/bin" || export PATH="$PATH:$GOPATH/bin"Starten Sie Ihr Terminal oder Ihren MCP-Client neu, nachdem Sie diese Zeile hinzugefügt haben.
Verwendung
Der Server unterstützt zwei Transportmodi: stdio (Standard) und SSE (Server-Sent Events).
STDIO-Transport (Standard)
mcp-package-versionSSE Transport
mcp-package-version --transport sse --port 18080 --base-url "http://localhost:18080"Dadurch würde der Server für Clients unter http://localhost:18080/sse verfügbar (beachten Sie das Suffix /sse !).
Befehlszeilenoptionen
--transport,-t: Transporttyp (stdio oder sse). Standard: stdio--port: Für den SSE-Transport zu verwendender Port. Standard: 18080--base-url: Basis-URL für SSE-Transport. Standard: http://localhost
Docker-Bilder
Docker-Images sind im GitHub Container Registry verfügbar:
docker pull ghcr.io/sammcj/mcp-package-version:mainSie können sich auch das Beispiel docker-compose.yaml ansehen.
Werkzeuge
NPM-Pakete
Überprüfen Sie die neuesten Versionen der NPM-Pakete:
{
"name": "check_npm_versions",
"arguments": {
"dependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2",
"lodash": "4.17.21"
},
"constraints": {
"react": {
"majorVersion": 17
}
}
}
}Python-Pakete (requirements.txt)
Überprüfen Sie die neuesten Versionen der Python-Pakete in der Datei „requirements.txt“:
{
"name": "check_python_versions",
"arguments": {
"requirements": [
"requests==2.28.1",
"flask>=2.0.0",
"numpy"
]
}
}Python-Pakete (pyproject.toml)
Überprüfen Sie die neuesten Versionen der Python-Pakete von 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-Pakete (Maven)
Überprüfen Sie die neuesten Versionen der Java-Pakete von 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-Pakete (Gradle)
Überprüfen Sie die neuesten Versionen der Java-Pakete von 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-Pakete
Überprüfen Sie die neuesten Versionen der Go-Pakete von 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-Bilder
Überprüfen Sie die verfügbaren Tags für Docker-Images:
{
"name": "check_docker_tags",
"arguments": {
"image": "nginx",
"registry": "dockerhub",
"limit": 5,
"filterTags": ["^1\\."],
"includeDigest": true
}
}AWS Bedrock-Modelle
Listen Sie alle AWS Bedrock-Modelle auf:
{
"name": "check_bedrock_models",
"arguments": {
"action": "list"
}
}Suchen Sie nach bestimmten AWS Bedrock-Modellen:
{
"name": "check_bedrock_models",
"arguments": {
"action": "search",
"query": "claude",
"provider": "anthropic"
}
}Holen Sie sich das neueste Claude Sonnet-Modell:
{
"name": "get_latest_bedrock_model",
"arguments": {}
}Swift-Pakete
Überprüfen Sie die neuesten Versionen der Swift-Pakete:
{
"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-Aktionen
Überprüfen Sie die neuesten Versionen von GitHub Actions:
{
"name": "check_github_actions",
"arguments": {
"actions": [
{
"owner": "actions",
"repo": "checkout",
"currentVersion": "v3"
},
{
"owner": "actions",
"repo": "setup-node",
"currentVersion": "v3"
}
],
"includeDetails": true
}
}Releases und CI/CD
Dieses Projekt nutzt GitHub Actions für kontinuierliche Integration und Bereitstellung. Der Workflow führt automatisch Folgendes aus:
Erstellt und testet die Anwendung bei jedem Push zum Hauptzweig und bei Pull-Anfragen
Erstellt eine Version, wenn ein Tag im Format
v*(z. B.v1.0.0) gepusht wirdErstellt und überträgt Docker-Images in die GitHub Container Registry