Translates a lockfile diff into a human-readable upgrade plan for npm, PyPI, and GitHub Actions.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Given one package and two versions (from -> to), returns a structured upgrade analysis: semver classification, GitHub release notes summary, detected breaking changes, security advisories fixed in the range, migration guide links, and a clear recommendation. Use when the user asks about a specific package upgrade ('what changed between react 18 and 19', 'is it safe to bump axios from 0.27 to 1.0', 'what does upgrading lodash 4.17.20 to 4.17.21 fix'). Supports npm, pypi, and github-actions (use the action reference as the name, e.g. actions/checkout). For analyzing many packages at once or a Dependabot batch, use analyze_packages_bulk instead.
Package name (e.g. 'react', 'requests')
Package ecosystem
Target version (e.g. '19.0.0')
Current version (e.g. '18.2.0')
Given one package and two versions (from -> to), returns a structured upgrade analysis: semver classification, GitHub release notes summary, detected breaking changes, security advisories fixed in the range, migration guide links, and a clear recommendation. Use when the user asks about a specific package upgrade ('what changed between react 18 and 19', 'is it safe to bump axios from 0.27 to 1.0', 'what does upgrading lodash 4.17.20 to 4.17.21 fix'). Supports npm, pypi, and github-actions (use the action reference as the name, e.g. actions/checkout). For analyzing many packages at once or a Dependabot batch, use analyze_packages_bulk instead.
| Argument | Type | Description |
|---|---|---|
| name* | string | Package name (e.g. 'react', 'requests') |
| ecosystem* | string | Package ecosystem |
| toVersion* | string | Target version (e.g. '19.0.0') |
| fromVersion* | string | Current version (e.g. '18.2.0') |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"ecosystem",
"name",
"fromVersion",
"toVersion"
],
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Package name (e.g. 'react', 'requests')"
},
"ecosystem": {
"enum": [
"npm",
"pypi",
"github-actions"
],
"type": "string",
"description": "Package ecosystem"
},
"toVersion": {
"type": "string",
"minLength": 1,
"description": "Target version (e.g. '19.0.0')"
},
"fromVersion": {
"type": "string",
"minLength": 1,
"description": "Current version (e.g. '18.2.0')"
}
}
}Analyzes a list of package upgrades in parallel and returns a unified risk report with packages ranked by recommendation level (security > caution > review > likely-safe > safe). Use when the user provides many dependency changes from a Dependabot PR, npm outdated output, lockfile diff, or batch upgrade. Returns: total count, breakdown by semver class, total security fixes found, packages with breaking changes, and per-package details. Limit 50 packages per call (chunk larger lists).
| Argument | Type | Description |
|---|---|---|
| changes* | array | List of package changes to analyze |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"changes"
],
"properties": {
"changes": {
"type": "array",
"items": {
"type": "object",
"required": [
"ecosystem",
"name",
"fromVersion",
"toVersion"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"ecosystem": {
"enum": [
"npm",
"pypi",
"github-actions"
],
"type": "string",
"description": "Package ecosystem"
},
"toVersion": {
"type": "string",
"minLength": 1
},
"fromVersion": {
"type": "string",
"minLength": 1
}
}
},
"maxItems": 50,
"minItems": 1,
"description": "List of package changes to analyze"
}
}
}