# Versions-LE [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/nolindnaidoo/versions-le  
**GitHub Stars:** 1  
**npm Downloads (last month):** 1115  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/versions-le

## Description
Find where one dependency is constrained differently across a repository's manifests.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "versions-le": {
    "command": "npx",
    "args": ["-y","versions-le-mcp"]
  }
}
```

## Documentation

## What Versions-LE does

Versions-LE compares version requirements across a repository as a single set. It can inspect `package.json`, `Cargo.toml`, `pyproject.toml`, `go.mod`, and workflow files under `.github/workflows`. The analysis covers dependency declarations, selected runtime or toolchain settings, package manager metadata, Cargo workspace and target variants, Go directives, and GitHub Actions references and version inputs.

The result groups each drifted dependency into one finding and includes every file, key, and constraint involved. It distinguishes a mere difference in requirements from a genuinely unsatisfiable pair. Reports also identify values deliberately excluded from comparison and explain the refusal reason.

Six finding types are available: `disjoint-constraint`, `malformed-constraint`, `constraint-conflict`, `msrv-mismatch`, `prerelease-in-production`, and `floating-pin`. Range compatibility uses interval arithmetic rather than string comparison, so equivalent spellings are not automatically treated as conflicts.

## How it works

The MCP server runs the same comparison engine as the command-line tools and exposes it through the `compare_versions` tool. The stdio transport lets an MCP agent invoke an analysis against a repository tree. The engine examines declared requirements rather than lockfiles or the dependency graph, and it does not contact package registries or other network services.

Comparisons stay within an ecosystem. npm, Cargo, Python, and Go requirements with the same package name are not assumed to refer to the same package. The MSRV check is a separate bridge between declared Rust minimums and CI toolchain pins.

Unsupported syntax is excluded instead of approximated. Examples include unsupported Python, npm, Cargo, and CI constraint forms, ambiguous workflow version expressions, and multiple versions of one CI tool installed by separate jobs. The report records these decisions as refusals. Repository scanning skips `node_modules`, `vendor`, and `.git`, while `.github` is included.

## Setup and configuration

Install and launch the MCP package with Node.js and npm:

```sh
npx versions-le-mcp
```

For Claude Code, register the stdio server with:

```sh
claude mcp add versions-le -- npx -y versions-le-mcp
```

VS Code 1.101 and later can receive `compare_versions` through the Versions-LE extension's agent mode. The extension is also available for Cursor, VSCodium, and Windsurf through Open VSX. The repository also provides separate Rust and Node command-line distributions for terminal or CI use, but those are distinct from the MCP package.

## Tools and capabilities

- Compare dependency constraints across supported manifests.
- Detect unsatisfiable ranges with `disjoint-constraint` findings.
- Report differing requirements without conflating them with unsatisfiable ranges.
- Check Rust minimum-version declarations against CI toolchain pins.
- Flag malformed constraints, production prerelease requirements, and floating pins.
- Show source files, keys, constraints, and explicit comparison refusals.

The server is read-only. It does not edit, pin, update, or automatically select a version. It also does not determine which versions exist, whether releases are yanked, or what a dependency resolver would choose.

_Full upstream README: https://allmcps.com/mcp/versions-le/readme_

