■ @forge-registry/cli v0.2

La CLI

Vérifiez la confiance, auditez vos configurations MCP et publiez des paquets — depuis le terminal ou directement dans Claude Code, Cursor et tout client d’IA compatible MCP.

$ npx @forge-registry/cli verify @modelcontextprotocol/server-memory
Ou ajoutez Forge à votre client d’IA une fois et ne quittez plus votre éditeur :
{ "mcpServers": { "forge": { "command": "npx", "args": ["-y", "@forge-registry/cli", "mcp"] } } }

forge mcp

Exécute la CLI Forge comme serveur MCP sur stdio. Une fois configuré, les clients d’IA comme Claude Code et Cursor peuvent chercher dans le registre, contrôler des paquets, auditer vos configurations MCP, installer des skills et publier — le tout dans la conversation, sans passer par un terminal.

Endpoint hébergé — rien à installer

Forge fonctionne aussi comme serveur MCP distant https://forgeregistry.com/api/mcp. Les clients qui prennent en charge les serveurs distants se connectent avec une simple URL — pas de npx, pas de processus local, aucun paquet à qui faire confiance sur votre machine. Il parle le transport MCP Streamable HTTP, ne demande aucune authentification et limite le débit par appelant.

Claude Code · terminal
claude mcp add --transport http forge https://forgeregistry.com/api/mcp
Any client · .mcp.json
{
  "mcpServers": {
    "forge": {
      "type": "http",
      "url": "https://forgeregistry.com/api/mcp"
    }
  }
}

L’endpoint hébergé sert les outils du registre. Les trois qui agissent sur votre machine — auditer vos configurations MCP, écrire une skill dans votre projet, signer une publication avec vos clés — nécessitent le serveur stdio local ci-dessous ; un serveur hébergé ne peut pas voir votre système de fichiers. Le tableau plus bas indique lesquels sont lesquels.

Installation — ajoutez le serveur local à la configuration de votre client

Claude Code · .mcp.json
{
  "mcpServers": {
    "forge": {
      "command": "npx",
      "args": ["-y", "@forge-registry/cli", "mcp"]
    }
  }
}
Cursor · .cursor/mcp.json
{
  "mcpServers": {
    "forge": {
      "command": "npx",
      "args": ["-y", "@forge-registry/cli", "mcp"]
    }
  }
}
VS Code · .vscode/mcp.json
{
  "servers": {
    "forge": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@forge-registry/cli", "mcp"]
    }
  }
}
Antigravity · ~/.gemini/config/mcp_config.json
{
  "mcpServers": {
    "forge": {
      "command": "npx",
      "args": ["-y", "@forge-registry/cli", "mcp"]
    }
  }
}

Dans Antigravity, ouvrez le menu … du panneau de l’agent → Manage MCP Servers → View raw config pour modifier ce fichier ; il se recharge automatiquement à l’enregistrement.

Outils exposés

OutilDescription
forge_searchCherche des serveurs MCP, des agents A2A et des skills avec des filtres de vérificationhébergé + local
forge_get_packageProfil de confiance complet : vérification, révocation, analyse CVE OSV en direct, analyse des scripts d’installationhébergé + local
forge_alternativesRemplaçants fonctionnels d’une entrée — serveurs observés exposant les mêmes outils, les plus fiables d’abord, avec ce que le changement ne couvre pashébergé + local
forge_auditAudite chaque serveur MCP configuré dans les fichiers de configuration du projetlocal uniquement
forge_get_skillRécupère le prompt complet et les métadonnées d’une skillhébergé + local
forge_add_skillInstalle une skill dans la configuration client du projetlocal uniquement
forge_inspectExtrait statiquement la surface d’outils MCP d’un paquet (sans jamais l’exécuter) ; signale les outils privilégiéshébergé + local
forge_submit_packageIndique à Forge un paquet qui n’est pas encore indexé, pour vérification et référencementhébergé + local
forge_publishEnregistre ou revendique un paquet dans le registre Forge (nécessite forge login au préalable)local uniquement

Exemple de flux de travail

Demandez à votre client d’IA : « Il me faut un MCP pour le web scraping — trouve quelque chose de fiable et configure-le. » Le client enchaîne trois appels sans que vous quittiez la conversation :

  1. forge_searchtrouve des serveurs de web scraping vérifiés, classés par confiance et téléchargements
  2. forge_get_packagerécupère le profil de confiance en direct du premier résultat : éditeur vérifié, zéro CVE, scripts d’installation propres
  3. forge_auditréaudite la configuration du projet après l’ajout pour confirmer que rien n’est signalé

Le contrôle de la chaîne d’approvisionnement cesse d’être une étape dont il faut se souvenir et devient ce que votre client d’IA fait par défaut chaque fois qu’un nouvel outil entre dans le projet.

forge verify

Vérifie un paquet avant que vous ne l’utilisiez. Interroge le registre Forge sur son statut de confiance et l’identité de l’éditeur, lance une analyse de vulnérabilités OSV en direct sur la version exacte, et inspecte les scripts de cycle de vie npm à la recherche de motifs suspects.

bash
forge verify <package>
forge verify @modelcontextprotocol/server-memory
forge verify @upstash/context7-mcp
forge verify sam-rivera/my-mcp-server     # GitHub shorthand

Exemple de sortie

  $ forge verify @modelcontextprotocol/server-memory

  @modelcontextprotocol/server-memory · v2026.1.26
  ──────────────────────────────────────────────────────

  PACKAGE
    Author            Anthropic, PBC
    License           MIT

  REGISTRY
    Forge index       ✓  Listed
    Publisher         ✓  @modelcontextprotocol  (verified)
    forge.json        ·  Not present
    Signature         ✓  Valid  @modelcontextprotocol · Ed25519

  SECURITY  (scanned 2026-05-27)
    Vulnerabilities   ✓  None found
    Scripts           ✓  No suspicious lifecycle scripts

  ──────────────────────────────────────────────────────
  ✓  CLEAN & VERIFIED
  ──────────────────────────────────────────────────────

Options

OptionDescription
--jsonSort du JSON brut — utile pour les scripts et les pipelines CI

Codes de sortie

CodeSignification
0Propre ou vérifié (les avertissements ne font pas échouer)
1Vulnérabilités critiques ou élevées détectées

forge install

Une surcouche de npm install consciente de la confiance. Elle effectue les mêmes contrôles que forge verify, puis bloque en cas de vulnérabilités critiques et demande confirmation avant d’installer des paquets non vérifiés. Accepte les noms de paquets npm et les URL GitHub.

bash
forge install <package>

# npm packages
forge install @modelcontextprotocol/server-memory
forge install @upstash/context7-mcp --save-dev

# GitHub sources (all equivalent)
forge install sam-rivera/my-mcp-server
forge install github.com/sam-rivera/my-mcp-server
forge install https://github.com/sam-rivera/my-mcp-server

Options

OptionDescription
-f, --forcePasse les confirmations (bloque toujours en cas de CVE critique)
-g, --globalInstalle globalement via npm install -g
--save-devInstalle comme dépendance de développement
Sources GitHub : les analyses OSV et de scripts sont ignorées pour les URL GitHub, faute de métadonnées npm versionnées à interroger. Le contrôle de confiance du registre Forge s’exécute quand même si le dépôt est indexé.

forge publish

Enregistre un paquet dans le registre Forge sous votre identité GitHub. Génère une paire de clés Ed25519 à la première exécution, signe le manifeste du paquet et l’envoie au registre. Le serveur vérifie que vous êtes propriétaire ou collaborateur du dépôt avant de référencer le paquet.

bash
# Run from your package directory
forge publish

# Preview — validates and signs but does not submit
forge publish --dry-run

# Different directory
forge publish --dir ./packages/my-mcp-server

Ce qu’il fait

  1. Lit package.json et forge.json dans le répertoire du paquet
  2. Génère une paire de clés Ed25519 dans ~/.forge/keys/ si elle n’existe pas encore
  3. Signe le triplet (packageName, githubUrl, publisherLogin)
  4. Envoie au registre Forge — le serveur effectue la vérification de collaborateur GitHub
  5. Vérifié automatiquement si vous êtes propriétaire ou collaborateur du dépôt. Sinon, mis en file d’attente pour examen.

Prérequis

Votre package.json doit comporter un champ repository pointant vers une URL GitHub, et vous devez être connecté via forge login.

package.json
{
  "name": "@your-scope/my-mcp-server",
  "version": "1.0.0",
  "repository": {
    "url": "https://github.com/your-username/my-mcp-server"
  }
}

forge login

S’authentifie auprès de GitHub via le flux par appareil. Enregistre votre jeton dans ~/.forge/config.json. Obligatoire avant d’exécuter forge publish.

bash
forge login            # authenticate
forge login --logout   # remove stored credentials
  $ forge login

  Forge uses GitHub to verify publisher identity.

  AUTHORIZE
    URL     https://github.com/login/device
    Code    ABCD-1234

  Open the URL above and enter the code to continue.

  ──────────────────────────────────────────────────────
  ✓  Logged in as @sam-rivera
  ──────────────────────────────────────────────────────

Installer la CLI

La CLI s’utilise sans installation via npx, ou s’installe globalement pour disposer du raccourci forge.

npx (sans installation)

bash
npx @forge-registry/cli verify @modelcontextprotocol/server-memory
npx @forge-registry/cli install @upstash/context7-mcp

Installation globale

bash
npm install -g @forge-registry/cli

# then use the forge shorthand
forge verify @modelcontextprotocol/server-memory
forge login
forge publish

Prérequis

Node.js 18 ou plus récent.

Configuration

La CLI stocke identifiants et réglages dans ~/.forge/config.json, écrit par forge login. Toutes les valeurs peuvent être surchargées par des variables d’environnement.

~/.forge/config.json
{
  "githubToken":  "gho_...",
  "githubLogin":  "sam-rivera",
  "registryUrl":  "https://forgeregistry.com"
}

Variables d’environnement

VariableDescription
FORGE_GITHUB_TOKENJeton d’accès GitHub — prend le pas sur le jeton enregistré
FORGE_REGISTRY_URLURL du registre (par défaut : https://forgeregistry.com). Mettez http://localhost:3000 pour le développement local.
FORGE_GITHUB_CLIENT_IDIdentifiant client de l’application OAuth — utile uniquement si vous exploitez votre propre registre

Clés d’éditeur

Une paire de clés Ed25519 est générée lors de votre premier forge publish et stockée dans ~/.forge/keys/. La clé privée (private.pem) est écrite avec les droits 0600 — lisible par vous seul. La clé publique est enregistrée dans le registre Forge et sert à vérifier votre signature chaque fois que quelqu’un exécute forge verify sur votre paquet.