■ @forge-registry/cli v0.2

La CLI

Verifica la fiducia, controlla le tue configurazioni MCP e pubblica pacchetti — dal terminale o direttamente dentro Claude Code, Cursor e qualsiasi client di IA compatibile con MCP.

$ npx @forge-registry/cli verify @modelcontextprotocol/server-memory
Oppure aggiungi Forge al tuo client di IA una volta sola e non lasciare più l’editor:
{ "mcpServers": { "forge": { "command": "npx", "args": ["-y", "@forge-registry/cli", "mcp"] } } }

forge mcp

Esegue la CLI di Forge come server MCP su stdio. Una volta configurato, i client di IA come Claude Code e Cursor possono cercare nel registro, controllare i pacchetti, verificare le tue configurazioni MCP, installare skill e pubblicare — tutto dentro la conversazione, senza passare al terminale.

Endpoint ospitato — niente da installare

Forge funziona anche come server MCP remoto https://forgeregistry.com/api/mcp. I client che supportano i server remoti si collegano con il solo URL — niente npx, nessun processo locale, nessun pacchetto di cui fidarsi sulla tua macchina. Parla il trasporto MCP Streamable HTTP, non richiede autenticazione ed è soggetto a limiti di frequenza per chiamante.

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 ospitato fornisce gli strumenti del registro. I tre che agiscono sulla tua macchina — verificare le tue configurazioni MCP, scrivere una skill nel tuo progetto, firmare una pubblicazione con le tue chiavi — richiedono il server stdio locale qui sotto; un server ospitato non può vedere il tuo filesystem. La tabella più in basso indica quale è quale.

Configurazione — aggiungi il server locale alla configurazione del tuo 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"]
    }
  }
}

In Antigravity, apri il menu … del pannello dell’agente → Manage MCP Servers → View raw config per modificare questo file; si ricarica automaticamente al salvataggio.

Strumenti esposti

StrumentoDescrizioneDove
forge_searchCerca server MCP, agenti A2A e skill con filtri di verificaospitato + locale
forge_get_packageProfilo di fiducia completo: verifica, revoca, analisi CVE OSV in tempo reale, analisi degli script di installazioneospitato + locale
forge_alternativesSostituti funzionali di una voce — server osservati esporre gli stessi strumenti, i più affidabili per primi, con ciò che il cambio non copreospitato + locale
forge_auditVerifica ogni server MCP configurato nei file di configurazione del progettosolo locale
forge_get_skillRecupera il prompt completo e i metadati di una skillospitato + locale
forge_add_skillInstalla una skill nella configurazione client del progettosolo locale
forge_inspectEstrae staticamente la superficie di strumenti MCP di un pacchetto (senza mai eseguirlo); segnala gli strumenti privilegiatiospitato + locale
forge_submit_packageSegnala a Forge un pacchetto non ancora indicizzato, per la verifica e l’inserimentoospitato + locale
forge_publishRegistra o rivendica un pacchetto nel registro Forge (richiede prima forge login)solo locale

Esempio di flusso di lavoro

Chiedi al tuo client di IA: «Mi serve un MCP per il web scraping — trova qualcosa di affidabile e configuralo.» Il client concatena tre chiamate senza che tu lasci la conversazione:

  1. forge_searchtrova server di web scraping verificati, ordinati per fiducia e download
  2. forge_get_packagerecupera il profilo di fiducia in tempo reale del primo risultato: publisher verificato, zero CVE, script di installazione puliti
  3. forge_auditriverifica la configurazione del progetto dopo l’aggiunta per confermare che nulla è segnalato

Controllare la catena di fornitura smette di essere un passaggio da ricordare e diventa qualcosa che il tuo client di IA fa in automatico ogni volta che un nuovo strumento entra nel progetto.

forge verify

Controlla un pacchetto prima che tu lo usi. Interroga il registro Forge sullo stato di fiducia e sull’identità del publisher, esegue un’analisi delle vulnerabilità OSV in tempo reale sulla versione esatta e ispeziona gli script di ciclo di vita npm alla ricerca di schemi sospetti.

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

Esempio di output

  $ 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
  ──────────────────────────────────────────────────────

Opzioni

OpzioneDescrizione
--jsonRestituisce JSON grezzo — utile per script e pipeline CI

Codici di uscita

CodiceSignificato
0Pulito o verificato (gli avvisi non fanno fallire)
1Trovate vulnerabilità critiche o alte

forge install

Un wrapper di npm install consapevole della fiducia. Esegue gli stessi controlli di forge verify, poi blocca in presenza di vulnerabilità critiche e chiede conferma prima di installare pacchetti non verificati. Accetta nomi di pacchetti npm e 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

Opzioni

OpzioneDescrizione
-f, --forceSalta le conferme (blocca comunque in presenza di CVE critici)
-g, --globalInstalla globalmente tramite npm install -g
--save-devInstalla come dipendenza di sviluppo
Sorgenti GitHub: le analisi OSV e degli script vengono saltate per gli URL GitHub, perché non ci sono metadati npm versionati da interrogare. Il controllo di fiducia del registro Forge viene comunque eseguito se il repo è indicizzato.

forge publish

Registra un pacchetto nel registro Forge sotto la tua identità GitHub. Genera una coppia di chiavi Ed25519 alla prima esecuzione, firma il manifest del pacchetto e lo invia al registro. Il server verifica che tu sia proprietario o collaboratore del repo prima di inserire il pacchetto.

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

Cosa fa

  1. Legge package.json e forge.json dalla directory del pacchetto
  2. Genera una coppia di chiavi Ed25519 in ~/.forge/keys/ se non esiste già
  3. Firma la terna (packageName, githubUrl, publisherLogin)
  4. Invia al registro Forge — il server esegue il controllo di collaboratore GitHub
  5. Verificato automaticamente se sei proprietario o collaboratore del repo. Altrimenti messo in coda per la revisione.

Requisiti

Il tuo package.json deve avere un campo repository che punti a un URL GitHub, e devi aver effettuato l’accesso con 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

Si autentica su GitHub tramite il device flow. Salva il tuo token in ~/.forge/config.json. Obbligatorio prima di eseguire 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
  ──────────────────────────────────────────────────────

Installare la CLI

La CLI si può usare senza installarla tramite npx, oppure installare globalmente per avere la scorciatoia forge.

npx (senza installare)

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

Installazione globale

bash
npm install -g @forge-registry/cli

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

Requisiti

Node.js 18 o successivo.

Configurazione

La CLI memorizza credenziali e impostazioni in ~/.forge/config.json, scritto da forge login. Tutti i valori si possono sovrascrivere con variabili d’ambiente.

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

Variabili d’ambiente

VariabileDescrizione
FORGE_GITHUB_TOKENToken di accesso GitHub — prevale sul token salvato
FORGE_REGISTRY_URLURL del registro (predefinito: https://forgeregistry.com). Imposta http://localhost:3000 per lo sviluppo locale.
FORGE_GITHUB_CLIENT_IDClient ID dell’app OAuth — serve solo se gestisci un registro tuo

Chiavi del publisher

Una coppia di chiavi Ed25519 viene generata al tuo primo forge publish e salvata in ~/.forge/keys/. La chiave privata (private.pem) viene scritta con permessi 0600 — leggibile solo da te. La chiave pubblica viene registrata nel registro Forge e serve a verificare la tua firma ogni volta che qualcuno esegue forge verify sul tuo pacchetto.