# license-compliance [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/bighippoman/license-compliance-mcp  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/license-compliance

## Description
Scan npm dependencies for license compliance issues. Catch GPL contamination.

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

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

## Documentation & README

# license-compliance-mcp

MCP server that scans npm project dependencies for license compliance issues. Catch GPL contamination before code ships.

## Tools

### `check-licenses`

Scan a project's npm dependencies against a license policy and get a detailed compliance report.

**Parameters:**
- `path` (required) — Absolute path to the project root
- `policy` (optional, default: `"permissive"`) — Policy preset or custom SPDX expression
  - `"permissive"` — Only MIT, ISC, BSD, Apache-2.0, etc.
  - `"weak-copyleft"` — Adds LGPL, MPL-2.0, EPL-2.0
  - `"copyleft"` — Adds GPL, AGPL
  - Custom: `"(MIT OR Apache-2.0)"` — Any valid SPDX expression

### `explain-license`

Get a plain-language explanation of any SPDX license — permissions, conditions, limitations, compatibility, and gotchas.

**Parameters:**
- `license` (required) — SPDX identifier (e.g., `"MIT"`, `"GPL-3.0-only"`, `"Apache-2.0"`)

## Install

### Claude Code

```bash
claude mcp add license-compliance -- npx -y license-compliance-mcp
```

### Claude Desktop / Cursor

Add to your config (`claude_desktop_config.json` or `.cursor/mcp.json`):

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

## How It Works

1. Scans `node_modules` using `license-checker-rseidelsohn`
2. Normalizes license strings to valid SPDX using `spdx-correct`
3. Evaluates each package against the policy using `spdx-satisfies`
4. Traces dependency chains to show how problematic packages entered the project
5. Generates a markdown report grouped by severity (critical > warning > info)

## Requirements

- Node.js >= 18
- Project must have `node_modules` installed (`npm install`)


