Skip to main content
Glama
TOOLS-REFERENCE.it.md13.1 kB
# Riferimento Strumenti Documentazione completa per tutti gli strumenti MCP forniti da Spec Workflow MCP. ## Panoramica Spec Workflow MCP fornisce strumenti specializzati per lo sviluppo software strutturato. Questi strumenti sono accessibili agli assistenti AI tramite il Model Context Protocol. ## Categorie Strumenti 1. **Guide Workflow** - Documentazione e guida 2. **Gestione Specifiche** - Crea e gestisci specifiche 3. **Strumenti Contesto** - Recupera informazioni progetto 4. **Strumenti Steering** - Guida a livello progetto 5. **Strumenti Approvazione** - Flusso approvazione documenti ## Strumenti Guide Workflow ### spec-workflow-guide **Scopo**: Fornisce guida completa per il processo workflow basato su specifiche. **Parametri**: Nessuno **Ritorna**: Guida markdown che spiega workflow completo **Esempio Uso**: ``` "Mostrami la guida al workflow specifiche" ``` **Risposta Contiene**: - Panoramica workflow - Processo passo-passo - Best practice - Esempi prompt ### steering-guide **Scopo**: Guida per creare documenti steering progetto. **Parametri**: Nessuno **Ritorna**: Guida markdown per creazione documenti steering **Esempio Uso**: ``` "Mostrami come creare documenti steering" ``` **Risposta Contiene**: - Tipi documenti steering - Processo creazione - Linee guida contenuto - Esempi ## Strumenti Gestione Specifiche ### create-spec-doc **Scopo**: Crea o aggiorna documenti specifica (requisiti, design, task). **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica (kebab-case) | | docType | string | Sì | Tipo: "requirements", "design" o "tasks" | | content | string | Sì | Contenuto markdown del documento | | revision | boolean | No | Se è una revisione (default: false) | **Esempio Uso**: ```typescript { specName: "user-authentication", docType: "requirements", content: "# Requisiti Autenticazione Utente\n\n## Panoramica\n...", revision: false } ``` **Ritorna**: ```typescript { success: true, message: "Documento requisiti creato con successo", path: ".spec-workflow/specs/user-authentication/requirements.md", requestedApproval: true } ``` **Note**: - Crea directory specifica se non esiste - Richiede automaticamente approvazione per nuovi documenti - Valida formato markdown - Preserva documenti esistenti quando si creano nuovi tipi ### spec-list **Scopo**: Elenca tutte le specifiche con il loro stato corrente. **Parametri**: Nessuno **Ritorna**: Array di riassunti specifiche **Struttura Risposta**: ```typescript [ { name: "user-authentication", status: "in-progress", progress: 45, documents: { requirements: "approved", design: "pending-approval", tasks: "not-created" }, taskStats: { total: 15, completed: 7, inProgress: 1, pending: 7 } } ] ``` **Esempio Uso**: ``` "Elenca tutte le mie specifiche" ``` ### spec-status **Scopo**: Ottiene informazioni stato dettagliate per una specifica specifica. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica da controllare | **Ritorna**: Stato specifica dettagliato **Struttura Risposta**: ```typescript { exists: true, name: "user-authentication", documents: { requirements: { exists: true, approved: true, lastModified: "2024-01-15T10:30:00Z", size: 4523 }, design: { exists: true, approved: false, pendingApproval: true, lastModified: "2024-01-15T14:20:00Z", size: 6234 }, tasks: { exists: true, taskCount: 15, completedCount: 7, inProgressCount: 1, progress: 45 } }, overallProgress: 45, currentPhase: "implementation" } ``` **Esempio Uso**: ``` "Mostrami stato specifica user-authentication" ``` ### manage-tasks **Scopo**: Gestione task completa inclusi aggiornamenti, cambi stato e tracciamento progressi. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica | | action | string | Sì | Azione: "update", "complete", "list", "progress" | | taskId | string | A volte | ID task (richiesto per update/complete) | | status | string | No | Nuovo stato: "pending", "in-progress", "completed" | | notes | string | No | Note aggiuntive per task | **Azioni**: 1. **Aggiorna Stato Task**: ```typescript { specName: "user-auth", action: "update", taskId: "1.2.1", status: "in-progress", notes: "Implementazione iniziata" } ``` 2. **Completa Task**: ```typescript { specName: "user-auth", action: "complete", taskId: "1.2.1" } ``` 3. **Elenca Task**: ```typescript { specName: "user-auth", action: "list" } ``` 4. **Ottieni Progressi**: ```typescript { specName: "user-auth", action: "progress" } ``` **Ritorna**: Informazioni task o conferma aggiornamento ## Strumenti Contesto ### get-template-context **Scopo**: Recupera template markdown per tutti i tipi documento. **Parametri**: Nessuno **Ritorna**: Oggetto contenente tutti i template **Struttura Risposta**: ```typescript { requirements: "# Template Requisiti\n\n## Panoramica\n...", design: "# Template Design\n\n## Architettura\n...", tasks: "# Template Task\n\n## Task Implementazione\n...", product: "# Template Steering Prodotto\n...", tech: "# Template Steering Tecnico\n...", structure: "# Template Steering Struttura\n..." } ``` **Esempio Uso**: ``` "Ottieni tutti i template documenti" ``` ### get-steering-context **Scopo**: Recupera documenti steering progetto e guida. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | docType | string | No | Doc specifico: "product", "tech", "structure" o "all" | **Ritorna**: Contenuto documento steering **Esempio Uso**: ```typescript { docType: "tech" // Ritorna solo steering tecnico } ``` **Struttura Risposta**: ```typescript { product: "# Steering Prodotto\n\n## Visione\n...", tech: "# Steering Tecnico\n\n## Architettura\n...", structure: "# Steering Struttura\n\n## Organizzazione\n..." } ``` ### get-spec-context **Scopo**: Recupera contesto completo per una specifica specifica. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica | | includeContent | boolean | No | Includi contenuto documento (default: true) | **Ritorna**: Contesto specifica completo **Struttura Risposta**: ```typescript { name: "user-authentication", exists: true, documents: { requirements: { exists: true, content: "# Requisiti\n\n...", approved: true }, design: { exists: true, content: "# Design\n\n...", approved: false }, tasks: { exists: true, content: "# Task\n\n...", stats: { total: 15, completed: 7, progress: 45 } } }, relatedSpecs: ["user-profile", "session-management"], dependencies: ["database-setup", "auth-library"] } ``` **Esempio Uso**: ``` "Ottieni contesto completo per specifica user-authentication" ``` ## Strumenti Documenti Steering ### create-steering-doc **Scopo**: Crea documenti steering progetto (product, tech, structure). **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | docType | string | Sì | Tipo: "product", "tech" o "structure" | | content | string | Sì | Contenuto markdown documento | **Esempio Uso**: ```typescript { docType: "product", content: "# Steering Prodotto\n\n## Visione\nCostruire il migliore..." } ``` **Ritorna**: ```typescript { success: true, message: "Documento steering prodotto creato", path: ".spec-workflow/steering/product.md" } ``` **Note**: - Crea directory steering se necessario - Sovrascrive documenti steering esistenti - Nessuna approvazione richiesta per documenti steering - Dovrebbe essere creato prima delle specifiche ## Strumenti Sistema Approvazione ### request-approval **Scopo**: Richiede approvazione utente per un documento. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica | | docType | string | Sì | Tipo documento da approvare | | documentId | string | Sì | ID unico per tracciamento | | content | string | Sì | Contenuto documento per revisione | **Esempio Uso**: ```typescript { specName: "user-auth", docType: "requirements", documentId: "user-auth-req-v1", content: "# Requisiti\n\n..." } ``` **Ritorna**: ```typescript { success: true, approvalId: "user-auth-req-v1", message: "Approvazione richiesta. Controlla dashboard per revisionare." } ``` ### get-approval-status **Scopo**: Controlla stato approvazione di un documento. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica | | documentId | string | Sì | ID documento da controllare | **Ritorna**: ```typescript { exists: true, status: "pending" | "approved" | "rejected" | "changes-requested", feedback: "Aggiungi più dettagli su gestione errori", timestamp: "2024-01-15T10:30:00Z", reviewer: "user" } ``` **Esempio Uso**: ``` "Controlla stato approvazione per requisiti user-auth" ``` ### delete-approval **Scopo**: Rimuove richieste approvazione completate per pulire coda approvazione. **Parametri**: | Parametro | Tipo | Richiesto | Descrizione | |-----------|------|----------|-------------| | specName | string | Sì | Nome specifica | | documentId | string | Sì | ID documento da rimuovere | **Ritorna**: ```typescript { success: true, message: "Record approvazione eliminato" } ``` **Esempio Uso**: ``` "Pulisci approvazioni completate per user-auth" ``` ## Pattern Integrazione Strumenti ### Workflow Sequenziale Gli strumenti sono progettati per funzionare in sequenza: 1. `steering-guide` → Impara su steering 2. `create-steering-doc` → Crea documenti steering 3. `spec-workflow-guide` → Impara workflow 4. `create-spec-doc` → Crea requisiti 5. `request-approval` → Richiedi revisione 6. `get-approval-status` → Controlla stato 7. `create-spec-doc` → Crea design (dopo approvazione) 8. `manage-tasks` → Traccia implementazione ### Operazioni Parallele Alcuni strumenti possono essere usati simultaneamente: - `spec-list` + `spec-status` → Ottieni panoramica e dettagli - `get-spec-context` + `get-steering-context` → Contesto progetto completo - Multipli `create-spec-doc` → Crea specifiche multiple ### Gestione Errori Tutti gli strumenti ritornano strutture errore consistenti: ```typescript { success: false, error: "Specifica non trovata", details: "Nessuna specifica chiamata 'invalid-spec' esiste", suggestion: "Usa spec-list per vedere specifiche disponibili" } ``` ## Best Practice ### Selezione Strumenti 1. **Raccolta Informazioni**: - Usa `spec-list` per panoramica - Usa `spec-status` per specifica specifica - Usa `get-spec-context` per implementazione 2. **Creazione Documenti**: - Crea sempre requisiti per primi - Aspetta approvazione prima del design - Crea task dopo approvazione design 3. **Gestione Task**: - Aggiorna stato quando inizi task - Segna completo immediatamente dopo completamento - Usa note per contesto importante ### Considerazioni Prestazioni - **Operazioni Batch**: Richiedi specifiche multiple in una conversazione - **Caching**: Gli strumenti cachano letture file per prestazioni - **Caricamento Selettivo**: Usa `includeContent: false` per controlli stato più veloci ### Sicurezza - **Validazione Percorso**: Tutti i percorsi sono validati e sanitizzati - **Isolamento Progetto**: Gli strumenti accedono solo directory progetto - **Sanitizzazione Input**: Contenuto markdown è sanitizzato - **Nessuna Esecuzione**: Gli strumenti non eseguono mai codice ## Estendere Strumenti ### Sviluppo Strumento Personalizzato Per aggiungere nuovi strumenti: 1. Crea modulo strumento in `src/tools/` 2. Definisci schema parametri 3. Implementa funzione handler 4. Registra con server MCP 5. Aggiungi a export Esempio struttura: ```typescript export const customTool = { name: 'custom-tool', description: 'Descrizione', parameters: { // JSON Schema }, handler: async (params) => { // Implementazione } }; ``` ## Versionamento Strumenti Gli strumenti mantengono compatibilità retroattiva: - Aggiunte parametri sono opzionali - Strutture risposta si estendono, non sostituiscono - Funzionalità deprecate mostrano avvisi - Guide migrazione fornite ## Documentazione Correlata - [Guida Utente](USER-GUIDE.it.md) - Usare strumenti efficacemente - [Processo Workflow](WORKFLOW.it.md) - Uso strumenti nel workflow - [Guida Prompting](PROMPTING-GUIDE.it.md) - Esempio uso strumenti - [Guida Sviluppo](DEVELOPMENT.it.md) - Aggiungere nuovi strumenti

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Pimzino/spec-workflow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server