Server MCP per Codecov
Server Model Context Protocol pronto per la produzione, realizzato in 2 ore con sviluppo assistito da SI/IA: consente a Claude Code di interrogare i dati di copertura di Codecov, con il 100% di copertura dei test al rilascio
Panoramica del progetto
Tempistiche: dicembre 2025 (2 ore in totale)
Il server MCP per Codecov è un server Model Context Protocol (MCP) pronto per la produzione che consente a Claude Code e ad altri assistenti di SI/IA di interrogare direttamente i dati di copertura di Codecov. Realizzato in sole 2 ore con sviluppo assistito da SI/IA, questo progetto dimostra come i moderni strumenti di SI/IA possano accelerare la produttività degli sviluppatori mantenendo standard di qualità da produzione.
Il progetto ha risolto un problema concreto: il server MCP di terze parti esistente per Codecov era stato archiviato e non supportava le istanze self-hosted. Invece di fare il fork di un progetto abbandonato, la scelta di costruirlo da zero ha permesso di offrire funzionalità enterprise, test approfonditi e codice manutenibile in una frazione del tempo richiesto dallo sviluppo tradizionale.
Risultato chiave: pubblicato su npm come mcp-server-codecov con il 100% di copertura dei test al rilascio (v1.0, dicembre 2025), in sostituzione di una soluzione archiviata con uno strumento più completo e pronto per l’uso aziendale.
Contesto del progetto
Il problema
- Il server MCP esistente per Codecov era archiviato (non più manutenuto)
- La soluzione archiviata supportava solo le istanze cloud di codecov.io
- Nessun supporto per le installazioni self-hosted di Codecov Enterprise
- Gli sviluppatori dovevano uscire da Claude Code per consultare i dati di copertura
- Non esisteva un modo affidabile per consentire agli assistenti di SI/IA di accedere alle metriche di copertura dei test
L’opportunità
- Il Model Context Protocol (MCP) è lo standard emergente di Anthropic per l’integrazione di strumenti con la SI/IA
- Realizzare server MCP colloca gli sviluppatori all’avanguardia degli strumenti nativi per la SI/IA
- Lo sviluppo rapido con l’assistenza della SI/IA dimostra il concetto: la SI/IA che costruisce strumenti per la SI/IA
- Contributo open source a un ecosistema MCP in crescita
L’approccio
Realizzare un sostituto pronto per la produzione da zero, in una sessione limitata a 2 ore, con sviluppo assistito da SI/IA (Claude Code), puntando su:
- Velocità: MVP in 30 minuti, pronto per la produzione in 2 ore
- Qualità: 100% di copertura dei test, documentazione completa
- Supporto enterprise: configurabile sia per istanze cloud sia self-hosted
- Manutenibilità: TypeScript con un’architettura chiara, pronto per i contributi della community
Architettura tecnica
Stack tecnologico
- Linguaggio: TypeScript 5.7+ (tipizzazione sicura, async/await moderno)
- Framework: MCP SDK (@modelcontextprotocol/sdk)
- Test: Vitest con il 100% di copertura del codice su tutte le metriche
- Runtime: Node.js 18.0.0+
- Client API:
fetchintegrato di Node.js per le richieste HTTP - Build: compilatore TypeScript (tsc) con target ES2022
Architettura principale
mcp-server-codecov/
├── src/
│ ├── index.ts # MCP server initialization & tool registration
│ ├── codecov-client.ts # Codecov API client with authentication
│ ├── tools.ts # Tool handlers (file, commit, repo coverage)
│ └── types.ts # TypeScript interfaces for API responses
├── tests/
│ ├── index.test.ts # Integration tests for MCP server
│ ├── codecov-client.test.ts # Unit tests with mocked API calls
│ └── tools.test.ts # Tool handler validation
└── package.json # npm package configuration
Dimensioni dell’implementazione: 265 righe di codice principale (esclusi test, configurazione e documentazione)
Integrazione con il protocollo MCP
Il server implementa tre strumenti MCP che Claude Code può richiamare:
- get_file_coverage: recupera la copertura riga per riga di file specifici
- get_commit_coverage: accede alle statistiche di copertura di commit specifici
- get_repo_coverage: ottiene i dati di copertura aggregati di interi repository
Scelte di progettazione dell’API
- URL di base configurabile: la variabile d’ambiente
CODECOV_BASE_URLsupporta sia codecov.io sia le istanze self-hosted - Autenticazione tramite token: gestione sicura del token API tramite la variabile d’ambiente
CODECOV_TOKEN - Orientato a GitHub: l’implementazione attuale è rivolta ai repository GitHub (estendibile a GitLab e Bitbucket)
- Gestione degli errori: messaggi di errore completi per autenticazione fallita, problemi di rete e parametri non validi
Processo di sviluppo
Sviluppo rapido assistito da SI/IA
Questo progetto mette in mostra la SI/IA che costruisce strumenti per la SI/IA: Claude Code è stato usato per realizzare un server MCP che estende le capacità di Claude Code stesso.
Tempo di sviluppo totale: 2 ore
- Sviluppo dell’MVP: 30 minuti (client API di base + handler degli strumenti MCP)
- Test e qualità: 1 ora (100% di copertura raggiunto con Vitest)
- Documentazione e rifinitura: 30 minuti (README di 350 righe con risoluzione dei problemi)
Flusso di lavoro
- Raccolta dei requisiti (5 min): analisi del server MCP archiviato e individuazione delle lacune
- Pianificazione dell’architettura (10 min): progettazione della struttura dei moduli TypeScript con la SI/IA
- Prototipazione rapida (30 min): implementazione iniziale generata dalla SI/IA, con integrazione dell’MCP SDK
- Affinamento guidato dai test (1 ora): scrittura di test approfonditi e iterazioni fino al 100% di copertura
- Documentazione (30 min): stesura del README assistita da SI/IA, con guida alla risoluzione dei problemi
- Pubblicazione (15 min): configurazione del pacchetto npm, versionamento e rilascio nel registry
Ambiente di sviluppo
- IDE: VS Code con il language server di TypeScript
- Assistente SI/IA: Claude Code per generazione del codice, scrittura dei test e documentazione
- Controllo di versione: Git con conventional commits
- CI/CD: GitHub Actions per test automatizzati e pubblicazione su npm
- Gestore di pacchetti: npm per la gestione delle dipendenze e la pubblicazione
Scelte di sviluppo chiave
- TypeScript anziché JavaScript: la tipizzazione sicura previene gli errori a runtime e migliora la manutenibilità
- Vitest anziché Jest: esecuzione dei test più rapida, miglior supporto a ESM, esperienza di sviluppo moderna
- Test con API simulate: i test unitari usano risposte simulate di Codecov per affidabilità e velocità
- README completo: individuati in anticipo i punti critici (token di autenticazione, configurazione dell’URL di base) e documentate le soluzioni
Funzionalità principali
Strumenti di interrogazione della copertura
Copertura a livello di file
- Recupera i dati di copertura riga per riga di file specifici
- Parametri: owner, repo, percorso del file, SHA del commit facoltativo
- Restituisce: una mappa dettagliata della copertura con le righe coperte e non coperte
- Caso d’uso: individuare le sezioni di codice non testate durante la code review
Analisi della copertura per commit
- Accede alle statistiche di copertura di commit specifici
- Parametri: owner, repo, SHA del commit
- Restituisce: percentuali di copertura aggregate e dettaglio per file
- Caso d’uso: monitorare le variazioni di copertura nelle pull request
Panoramica della copertura del repository
- Ottiene le metriche di copertura dell’intero progetto
- Parametri: owner, repo, branch facoltativo
- Restituisce: percentuale di copertura totale, andamenti e dati storici
- Caso d’uso: monitoraggio della copertura in stile dashboard
Funzionalità enterprise
- Supporto self-hosted: URL di base configurabile per le istanze di Codecov Enterprise
- Supporto cloud: funziona subito con codecov.io usando la configurazione predefinita
- Autenticazione sicura: gestione del token API basata su variabili d’ambiente
- Resilienza agli errori: gestione completa degli errori con messaggi che indicano come intervenire
Esperienza dello sviluppatore
- Installazione globale della CLI:
npm install -g mcp-server-codecov - Modelli di configurazione MCP: configurazioni pronte da copiare e incollare per Claude Desktop e Claude Code
- Guida alla risoluzione dei problemi: il README di 350 righe affronta i problemi di configurazione più comuni
- Tipi TypeScript: i tipi esportati per le risposte dell’API consentono integrazioni con tipizzazione sicura
Sfide tecniche risolte
Sfida 1: confusione sui token di autenticazione
Problema: l’implementazione iniziale falliva con errori 401 nonostante credenziali Codecov “valide”.
Individuazione della causa principale: Codecov utilizza due tipi di token distinti:
- Token di upload: usati dalla CI/CD per caricare i report di copertura (si trovano nelle impostazioni dell’interfaccia di Codecov)
- Token API: usati per accedere ai dati tramite l’API REST (vanno generati separatamente)
Inizialmente il team aveva usato i token di upload, che non dispongono dei permessi di accesso all’API.
Soluzione:
- Documentata con chiarezza nel README la differenza tra i tipi di token
- Aggiunta una sezione di risoluzione dei problemi che spiega gli errori di autenticazione
- Fornita una guida passo passo per generare i token API corretti
- Implementati messaggi di errore chiari che distinguono gli errori di autenticazione dai problemi di rete
Risultato: grazie a una documentazione proattiva, i futuri utenti evitano 30 minuti di debug a vuoto.
Sfida 2: supporto enterprise e cloud
Problema: il server MCP archiviato funzionava solo con le istanze cloud di codecov.io. I team che usavano Codecov Enterprise in modalità self-hosted non potevano utilizzare lo strumento.
Soluzione:
- Reso configurabile l’URL di base tramite la variabile d’ambiente
CODECOV_BASE_URL - Valore predefinito
https://codecov.ioper gli utenti cloud (nessuna configurazione necessaria) - Sostituibile con un URL personalizzato per le installazioni enterprise
- Documentati entrambi i casi d’uso con configurazioni di esempio
Risultato: un’unica codebase serve sia gli utenti cloud sia quelli enterprise, senza fork né logica condizionale.
Sfida 3: 100% di copertura dei test in 1 ora
Problema: raggiungere una copertura dei test da produzione entro un limite rigoroso di 2 ore, senza compromettere la qualità del codice.
Soluzione:
- Risposte API simulate: usati i mock di Vitest per simulare l’API di Codecov senza chiamate di rete
- Generazione dei test assistita da SI/IA: Claude Code ha generato casi di test approfonditi che coprono i casi limite
- Iterazione guidata dalla copertura: eseguito
vitest --coverageripetutamente, colmando le lacune fino al 100% - Struttura dei test: separati i test unitari (client API) dai test di integrazione (server MCP)
Risultato: 100% di copertura su istruzioni, branch, funzioni e righe in 1 ora di sviluppo concentrato.
Sfida 4: documentazione rapida per una configurazione complessa
Problema: la configurazione di un server MCP coinvolge più file (configurazione di Claude Desktop, impostazioni di Claude Code) e variabili d’ambiente. Una documentazione carente ne avrebbe ostacolato l’adozione.
Soluzione:
- README generato con la SI/IA: Claude Code ha redatto una guida completa di 350 righe
- Configurazioni da copiare e incollare: forniti gli snippet JSON esatti per i file di configurazione MCP
- Sezione di risoluzione dei problemi: anticipati i problemi più comuni (tipo di token errato, URL di base configurato male)
- Percorsi specifici per piattaforma: documentate le posizioni dei file di configurazione per macOS, Windows e Linux
Risultato: nessuna issue GitHub aperta per problemi di installazione o configurazione dopo il lancio.
Risultati e impatto
Risultati tecnici
- 100% di copertura dei test: tutti i percorsi del codice testati (istruzioni, branch, funzioni, righe)
- Realizzato in 2 ore: MVP in 30 minuti, pronto per la produzione in 2 ore complessive
- Pubblicato su npm: disponibile a livello globale come pacchetto
mcp-server-codecov - Una sola dipendenza a runtime: solo l’SDK MCP; tutto il resto sono dipendenze di sviluppo per test e build
- Tipizzazione sicura con TypeScript: la copertura completa dei tipi previene gli errori a runtime
- Documentazione completa: README di 350 righe con risoluzione dei problemi
Impatto sulla produttività degli sviluppatori
- Eliminato il cambio di contesto: gli sviluppatori possono consultare la copertura senza uscire da Claude Code
- Flusso di lavoro nativo per la SI/IA: Claude può individuare in modo proattivo le lacune nei test durante la code review
- Feedback immediato sulla copertura: nessuna navigazione manuale nell’interfaccia web di Codecov
- Revisione delle PR potenziata: dati di copertura disponibili durante le code review assistite da SI/IA
Contributo open source
- Crescita dell’ecosistema MCP: aggiunto uno strumento pronto per l’uso aziendale alla directory dei server MCP di Anthropic
- Sostituzione di un progetto archiviato: offerta un’alternativa attivamente manutenuta a una soluzione abbandonata
- Adozione in ambito enterprise: il supporto self-hosted ne consente l’uso nei settori regolamentati
- Modello per la community: dimostra un pattern per lo sviluppo rapido di server MCP
Validazione dello sviluppo basato sulla SI/IA
Questo progetto conferma la tesi della SI/IA che costruisce strumenti per la SI/IA:
- MVP in 30 minuti: l’assistenza della SI/IA ha compresso giorni di lavoro in pochi minuti
- Qualità mantenuta: il 100% di copertura dei test dimostra che la SI/IA può rispettare gli standard di produzione
- Documentazione eccellente: README di 350 righe scritto con l’assistenza della SI/IA
- Iterazione rapida: lacune di copertura individuate e colmate in minuti, non in ore
Cronologia dello sviluppo
Sessione 1: realizzazione rapida (2 ore in totale)
Fase 1: sviluppo dell’MVP (30 minuti)
- Analisi dei requisiti e pianificazione dell’architettura (10 min)
- Implementazione del client API di Codecov con autenticazione (10 min)
- Configurazione del server MCP con integrazione dell’SDK (5 min)
- Handler di base degli strumenti per le interrogazioni sulla copertura (5 min)
Fase 2: test e qualità (60 minuti)
- Installazione e configurazione di Vitest (10 min)
- Test unitari del client API con risposte simulate (20 min)
- Test di integrazione degli strumenti del server MCP (20 min)
- Analisi delle lacune di copertura e aggiunta di test fino al 100% (10 min)
Fase 3: documentazione e pubblicazione (30 minuti)
- README completo con guida all’installazione (15 min)
- Sezione di risoluzione dei problemi di autenticazione e configurazione (10 min)
- Configurazione e pubblicazione del pacchetto npm (5 min)
Dopo il lancio: manutenzione
- v1.0.0: rilascio iniziale con le funzionalità principali
- v1.0.1: correzione di un bug in un caso limite di configurazione
- In corso: supporto alla community tramite issue GitHub (minimo, perché un’ottima documentazione previene i problemi)
Strumenti e flusso di lavoro
- Sviluppo con la SI/IA: Claude Code per la generazione rapida del codice e la scrittura dei test
- IDE: VS Code con TypeScript IntelliSense
- Test: Vitest con report di copertura
- Controllo di versione: Git con conventional commits
- Pubblicazione: registry npm per la distribuzione globale
- CI/CD: GitHub Actions per i test automatizzati sulle pull request
Tecnologie utilizzate
- TypeScript 5.7+: sviluppo con tipizzazione sicura e async/await moderno
- MCP SDK: @modelcontextprotocol/sdk per l’implementazione del protocollo
- Vitest: framework di test veloce e moderno con report di copertura
- Node.js 18+: ambiente di runtime per il server MCP
fetchintegrato: client HTTP di Node.js per le richieste all’API di Codecov- npm: gestione dei pacchetti e distribuzione globale della CLI
- GitHub Actions: CI/CD per test automatizzati e pubblicazione
Link e risorse
- Pacchetto pubblicato: npm: mcp-server-codecov
- Codice sorgente: GitHub: egulatee/mcp-server-codecov
- Articolo del blog: Building Codecov MCP Server in 2 Hours
- Documentazione MCP: Anthropic MCP SDK
Punti chiave
Questo progetto dimostra il potenziale trasformativo dello sviluppo assistito da SI/IA nella realizzazione di strumenti per sviluppatori di qualità da produzione:
- Velocità accelerata dalla SI/IA: 2 ore di sviluppo, dall’idea a un pacchetto npm pubblicato con il 100% di copertura dei test
- La SI/IA che costruisce strumenti per la SI/IA: il risultato, quasi meta, di usare Claude Code per realizzare server MCP che estendono le capacità di Claude
- Qualità senza compromessi: l’assistenza della SI/IA consente uno sviluppo rapido senza sacrificare test, documentazione o qualità del codice
- Consegna pronta per l’uso aziendale: il supporto self-hosted e la documentazione completa soddisfano gli standard di produzione
- Competenza su MCP: dimostra la specializzazione nell’ecosistema degli strumenti di SI/IA più all’avanguardia
- Competenze negli strumenti per sviluppatori: capacità di individuare i punti critici e rilasciare soluzioni rapidamente
- Impatto open source: sostituito un progetto archiviato con un’alternativa più completa e attivamente manutenuta
Il futuro dello sviluppo: questo progetto esemplifica il modello emergente in cui l’assistenza della SI/IA comprime progetti di settimane in poche ore, mantenendo standard di qualità professionali. Il risultato: gli sviluppatori possono rilasciare più strumenti, più rapidamente e con una qualità mai vista prima.
Veda su npm → | Veda su GitHub → | Legga l’articolo del blog →