Skip to main content
Glama
djodjonx

Dependency Checker MCP Server

by djodjonx
README.md
# Dependency Checker MCP Server

Ce serveur MCP (Model Context Protocol) fournit des outils pour vérifier la sécurité des dépendances npm en utilisant des bases de données de vulnérabilités reconnues : [OSV.dev](https://osv.dev) et [Socket.dev](https://socket.dev).

## 🚀 Installation & Utilisation

Ce serveur peut être utilisé directement via `npx` sans installation préalable, ou installé globalement.

### Configuration pour les clients MCP

#### Claude Desktop / Gemini CLI

Ajoutez la configuration suivante à votre fichier de configuration MCP (généralement `claude_desktop_config.json` ou similaire) :

```json
{
  "mcpServers": {
    "dependency-checker": {
      "command": "npx",
      "args": ["-y", "@djodjonx/dependency-checker-mcp@latest"]
    }
  }
}
```

**Note importante** : L'ajout de `@latest` garantit que `npx` télécharge et exécute toujours la dernière version stable du serveur. Sans cela, `npx` pourrait utiliser une version en cache ou obsolète.

Si vous travaillez en local sur le projet :

```json
{
  "mcpServers": {
    "dependency-checker-local": {
      "command": "node",
      "args": ["/chemin/vers/dependency-checker-mcp/dist/index.mjs"]
    }
  }
}
```

## 🛠 Outils disponibles

### `scan_file`
Analyse un fichier de manifeste (package.json, lockfiles) pour détecter les vulnérabilités.

*   **Entrée :** `file_path` (chemin absolu du fichier).
*   **Supporte :** `package.json`, `package-lock.json`, `yarn.lock`, `pnpm-lock.yaml`.

### `check_vulnerabilities`
Vérifie une liste spécifique de dépendances. Utile pour les agents qui extraient des dépendances d'autres sources.

*   **Entrée :** Liste d'objets `{ name, version }`.

### `get_vulnerability_details`
Récupère les détails techniques complets d'une vulnérabilité via son ID (CVE, GHSA, etc.).

*   **Entrée :** `vuln_id`.

## 🤝 Contribuer

Les contributions sont les bienvenues ! Voici comment configurer votre environnement de développement.

### Prérequis
*   Node.js (v20+)
*   npm

### Installation
```bash
git clone https://github.com/djodjonx/dependency-checker-mcp.git
cd dependency-checker-mcp
npm install
```

### Développement
*   **Build :** `npm run build` (génère les fichiers dans `dist/`)
*   **Dev (Watch) :** `npm run dev` (recompile à chaque changement)
*   **Tests :** `npm test` (lance Vitest)
*   **Linting :** `npm run lint` (vérifie le code avec oxlint)

### Workflow de Commit
Ce projet utilise **Conventional Commits** pour générer automatiquement le changelog et gérer les versions.

Au lieu d'utiliser `git commit`, utilisez la commande suivante pour être guidé :

```bash
npm run commit
```

Cela lancera un assistant interactif pour formater votre message de commit correctement (feat, fix, docs, etc.).

### Release (Mainteneurs)
Consultez le fichier [RELEASE.md](./RELEASE.md) pour la procédure détaillée de publication.

## 📄 Licence

Ce projet est sous licence MIT.

TDQS

B3.1/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a distinct action: checking dependencies by list, retrieving vulnerability details by ID, and scanning a manifest file. No overlap in purpose.

Naming Consistency5/5

All tool names follow a clear verb_noun pattern in snake_case (check_vulnerabilities, get_vulnerability_details, scan_file), with descriptive verbs that match the operation.

Tool Count5/5

Three tools cover the core workflow of checking dependencies and retrieving details, which is appropriate for a focused dependency checker without unnecessary bloat.

Completeness4/5

The set covers the main use cases (checking via list or file, getting details), but might benefit from a tool to list all known vulnerabilities or update databases, though not essential.

Maintenance

ActivityInactive
ResponsivenessNo issues