CodeGuard
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CodeGuard analyze impact of modifying src/users.ts"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CodeGuard
Serveur MCP qui analyse le code TypeScript/Prisma d'un projet, construit un graphe de dependances, et protege contre les modifications dangereuses et les regressions silencieuses.
Ecosysteme : TypeScript, JavaScript, Prisma
Ce que ca fait
Protection en temps reel (hooks automatiques)
Guard — avant chaque modification : risques, historique git, fonctions modifiees recemment, couverture tests, hotspot detection
Check — apres chaque modification : imports casses, signatures changees, code mort, incoherence de patterns
Analyse du projet
Impact analysis — "je modifie ce fichier, qu'est-ce qui casse ?"
Health — score de sante global du projet (A-F, scoring adaptatif)
Schema check — coherence Prisma ↔ DTOs backend ↔ types frontend
Route guard — coherence routes frontend ↔ backend
Regression map — quelles pages/routes retester apres un changement
Graph — diagramme Mermaid du graphe de dependances
Search — "qui utilise cette fonction/type/hook ?"
Detection de problemes
Whatsnew — resume des changements depuis le dernier reindex (debut de session)
Silent catch — detection des catches silencieux (catch vides, return sans log, setState default)
External map — carte des connexions externes (packages npm, variables d'env, appels API sortants)
Related MCP server: RepoMind-MCP
Prerequis
Node.js >= 20
Claude Code (pour les hooks MCP)
Installation
npm install -g skhaall-codeguardLes commandes peuvent etre lancees dans un terminal classique ou dans Claude Code avec le prefixe
!(ex:! npm install -g skhaall-codeguard).
Ou depuis les sources :
git clone https://github.com/Skhaaall/codeguard.git
cd codeguard && npm install && npm run buildConfiguration
1. Serveur MCP (connecte CodeGuard a Claude Code)
Ajouter dans le .mcp.json a la racine du projet :
{
"mcpServers": {
"codeguard": {
"command": "node",
"args": ["/chemin/vers/codeguard/dist/index.js"]
}
}
}2. Hooks automatiques (guard + check a chaque modification)
codeguard-setup setupCa installe deux hooks dans ~/.claude/settings.local.json :
guard — se lance automatiquement AVANT chaque Edit/Write dans Claude Code
check — se lance automatiquement APRES chaque Edit/Write dans Claude Code
Pour les retirer :
codeguard-setup unsetup3. Indexer le projet
A la racine du projet :
codeguard-cli initCa cree un dossier .codeguard/ avec l'index du projet (ajouter .codeguard/ au .gitignore).
Utilisation
CLI
codeguard-cli init [project-root] # Indexer le projet
codeguard-cli status [project-root] # Etat de l'index
codeguard-cli health [project-root] # Score de sante (A-F)
codeguard-cli impact <fichier> [project-root] # Analyse d'impact
codeguard-cli regression <fichier> [project-root] # Pages a retester
codeguard-cli graph [fichier] [project-root] # Diagramme Mermaid
codeguard-cli schema [project-root] # Coherence Prisma ↔ TS
codeguard-cli routes [project-root] # Coherence routes F↔B
codeguard-cli whatsnew [since] # Changements recents
codeguard-cli silent_catch [severity] # Catches silencieux
codeguard-cli changelog [project-root] # Diff depuis le snapshot
codeguard-cli external_map [project-root] # Carte des connexions externesOutils MCP (16)
Outil | Description | Quand |
| Fichiers impactes si on modifie un fichier | Avant modification |
| Risques, historique git, hotspot, couverture tests, go/no-go | Avant modification |
| Imports casses, signatures changees, code mort, patterns | Apres modification |
| Score A-F, imports casses, cycles, orphelins | A la demande |
| Coherence Prisma ↔ DTOs ↔ types frontend | Apres modif schema |
| Coherence routes frontend ↔ backend | A la demande |
| Recherche fonctions, types, hooks, routes | A la demande |
| Graphe d'un fichier (importe / importe par) | A la demande |
| Re-indexer le projet (complet ou incremental) | Debut de session |
| Date, nombre de fichiers, fraicheur de l'index | A la demande |
| Pages et routes a retester apres modification | Avant deploy |
| Diagramme Mermaid (complet ou focus sur un fichier) | A la demande |
| Resume des changements depuis le dernier reindex | Debut de session |
| Detection des catches silencieux dans le projet | Audit / review |
| Diff lisible entre ancien et nouvel index | A la demande |
| Packages npm, variables d'env, appels API sortants | A la demande |
Langages supportes
Langage | Parser | Profondeur |
TypeScript/TSX | ts-morph | Complet (types, generics, routes Next.js/NestJS) |
JavaScript/JSX | ts-morph | Imports, exports, fonctions, classes |
Prisma | Parser custom | Modeles, champs, relations, enums |
Path aliases TypeScript (@/ → src/) et barrel exports (from './dir' → dir/index.ts) sont geres automatiquement via la lecture du tsconfig.json.
Stack
TypeScript strict
ts-morph — parsing profond TypeScript
@modelcontextprotocol/sdk — protocole MCP standard (stdio)
Index JSON cache dans
.codeguard/Zero dependance lourde (pas de Docker, pas de base de donnees)
Securite
Path traversal bloque (les chemins doivent rester dans le projet)
Validation des inputs MCP a runtime
Limites DoS (stdin 1 Mo, index 50 Mo)
Liens symboliques ignores
CodeGuard lit le code source mais ne le modifie JAMAIS
Licence
MIT
Available Tools
16 toolschangelogA
Diff lisible entre l'ancien et le nouvel index. Montre les fichiers, exports, routes et types ajoutes/supprimes/modifies depuis le dernier reindex.
Inputs: no named parameters.
checkA
Post-change coherence check — re-indexe le fichier modifie, compare avec l'ancien etat, detecte les exports supprimes, imports casses et types incoherents. A appeler APRES chaque modification.
Inputs: filePath (required).
dependenciesB
Graphe de dependances d'un fichier — qui il importe et qui l'importe.
Inputs: filePath (required).
external_mapA
Cartographie les connexions externes du projet : packages npm (utilises, inutilises, critiques), variables d'environnement (process.env), appels API sortants (fetch/axios). A lancer pour comprendre les dependances externes et detecter les risques.
Inputs: no named parameters.
graphA
Genere un diagramme Mermaid du graphe de dependances. Sans filePath = graphe complet, avec filePath = graphe centre sur ce fichier (2 niveaux).
Inputs: filePath.
guardA
Pre-change safety check — "est-ce safe de modifier ce fichier ?" Retourne les risques, les fichiers a verifier apres, et une recommandation go/no-go. A appeler AVANT toute modification.
Inputs: filePath (required).
healthA
Score de sante global du projet — imports casses, fichiers orphelins, dependances circulaires, fichiers a haut risque. Note de A (excellent) a F (critique).
Inputs: no named parameters.
impactA
Analyse d'impact — "je modifie ce fichier, qu'est-ce qui casse ?" Retourne les fichiers impactes, les routes API affectees, et un score de risque.
Inputs: filePath (required).
regression_mapA
Regression map — "je modifie ce fichier, quelles pages/routes retester ?" Liste les pages, routes API et entry points impactes en cascade.
Inputs: filePath (required).
reindexA
Re-indexe le projet. Par defaut complet, avec incremental=true ne re-parse que les fichiers modifies.
Inputs: incremental.
route_guardB
Coherence routes frontend ↔ backend. Detecte les routes backend non appelees, les appels frontend vers des routes inexistantes, et les routes sensibles sans auth.
Inputs: no named parameters.
schema_checkA
Coherence Prisma ↔ DTOs backend ↔ types frontend. Detecte les champs manquants et les enums desynchronises. A lancer apres modification du schema Prisma ou des DTOs.
Inputs: no named parameters.
searchA
Recherche dans la carte — "qui utilise cette fonction/type/hook ?" Cherche dans les imports, exports, fonctions, classes, types et routes.
Inputs: query (required).
silent_catchA
Detecte les blocs catch qui avalent les erreurs silencieusement — catch vides, return sans log, .catch(() => default). A lancer lors d'un audit ou apres /review.
Inputs: severity.
statusB
Etat de l'index : date, nombre de fichiers, fraicheur.
Inputs: no named parameters.
whatsnewA
Resume des changements dans le projet depuis le dernier reindex. A lancer en debut de session pour comprendre le contexte. Montre les fichiers modifies, les signatures changees, les nouvelles routes et les fichiers les plus actifs.
Inputs: since.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 16 tools
Plusieurs outils se recouvrent fortement : impact, regression_map et guard répondent tous à la question « que casse si je modifie ce fichier ? » avec des angles légèrement différents. changelog et whatsnew résument aussi tous deux les changements depuis le dernier reindex, et dependencies/graph/search se chevauchent comme outils de requête sur le graphe. Un agent peut facilement choisir le mauvais outil sans lire les descriptions en détail.
Les noms sont presque tous en minuscules, soit en un mot unique soit en snake_case (schema_check, route_guard, external_map), ce qui donne un style cohérent. Il manque cependant un vrai motif verbe_nom : certains noms sont des noms (dependencies, health, graph) et d'autres des verbes (search, reindex, check), avec whatsnew qui sort de la convention underscore.
Avec 16 outilis, le set se situe exactement dans la zone où une collection commence à sembler lourde, surtout que plusieurs outils (impact/regression_map/guard, changelog/whatsnew) pourraient être fusionnés. Ce n'est pas excessive mais le compte semble gonflé plutôt que réellement justifié par 16 responsabilités distinctes.
Le server couvre un cycle d'analyse cohérent : indexation (status/reindex), recherche et dépendances, impact et régresion, guard/check avant/après modification, santé globale, et vérifications spécialisées schéma/routes/externe. Il n'y a pas de zone morte flagrante pour un outil d'analyse et de sécurisation de code, même si certains opérations se recouvrent.
Maintenance
Related MCP Connectors
Zero-log MCP server with 49 tools for AI guardrails, secret scanning, MCP linting & EU compliance.
491Monitor MCP servers, API contracts and AI outputs for schema drift. Alerts on breaking changes.
One MCP server for all your MCP servers: code mode, per-tool permissions, approvals and audit.
A MCP server built for developers enabling Git based project management with project and personal…
Related MCP Servers
- FlicenseBqualityDmaintenanceMCP server for TypeScript type resolution and dependency graph analysis using ts-morph and madge.82-
- FlicenseAqualityDmaintenanceMCP server for repository mapping, dependency analysis, and architecture diagram generation for JavaScript, TypeScript, and Python projects.412 npm-
- AlicenseAqualityDmaintenanceMCP server that analyzes TypeScript/JavaScript codebases via AST parsing and dependency graph tracing to identify affected tests, detect dead code, circular dependencies, and trace import chains, enabling AI agents to run only relevant tests.1557 npmMIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides tools to query a TypeScript/JavaScript/Vue codebase's dependency graph, enabling agents to find impacted files, hubs, orphans, and symbol relationships through natural language.306 npmMIT