Ce projet est un serveur MCP (Master Control Program) pour n8n qui fournit des outils de validation de workflows et de bonnes pratiques pour vos projets d'automatisation n8n.
- Validation de workflows : Vérifiez que vos workflows respectent les bonnes pratiques
- Conventions de nommage
- Gestion des erreurs
- Sécurité
- Performance
- Documentation
- Intégration NextJS : Générez des intégrations pour vos workflows n8n dans des applications NextJS
- Génération automatique de routes API
- Création de documentation OpenAPI/Swagger
- Génération de types TypeScript
- Client API pour faciliter l'intégration
- Gestion des workflows : Interagissez avec vos workflows n8n (liste, récupération, création, mise à jour, suppression, export, import)
- API n8n : Accédez directement à l'API n8n pour des opérations avancées
- Templates de workflows : Utilisez des templates prêts à l'emploi pour différents cas d'usage, notamment Google Calendar
- Node.js (v16 ou supérieur)
- pnpm (v7 ou supérieur)
- Une instance n8n (locale ou distante comme votre instance Cloudron sur n8n.bienquoi.com)
- Clonez ce dépôt ou naviguez vers le dossier du projet
- Installez les dépendances :
pnpm install
- Configurez les variables d'environnement :
cp .env.example .env
Modifiez le fichier .env
avec vos informations de connexion à l'API n8n.
pnpm build
pnpm start
Le serveur MCP sera accessible à l'adresse
Pour utiliser ce serveur MCP avec Claude Desktop, vous devez configurer le fichier claude_desktop_config.json
dans le dossier %APPDATA%/Claude/
:
{
"mcpServers": {
"n8n-mcp-server": {
"command": "node",
"args": ["/chemin/absolu/vers/mcp-n8n-server/dist/server.js"]
}
}
}
mcp-n8n-server/
├── src/ # Code source
│ ├── tools/ # Outils MCP
│ │ ├── N8nApiTool.ts # Outil pour interagir avec l'API n8n
│ │ ├── WorkflowManagerTool.ts # Outil pour gérer les workflows
│ │ ├── NextJSIntegrationTool.ts # Outil pour générer des intégrations NextJS
│ │ ├── WorkflowValidatorTool.ts # Outil pour valider les workflows
│ │ └── ...
│ ├── validators/ # Validateurs de workflows
│ │ ├── naming.js # Validateur de conventions de nommage
│ │ ├── errorHandling.js # Validateur de gestion des erreurs
│ │ ├── security.js # Validateur de sécurité
│ │ ├── performance.js # Validateur de performance
│ │ └── documentation.js # Validateur de documentation
│ ├── resources/ # Ressources partagées
│ └── server.ts # Point d'entrée du serveur
├── dist/ # Code compilé
├── public/ # Fichiers statiques
├── output/ # Répertoire pour les sorties des outils
├── .env.example # Exemple de fichier de configuration
└── README.md # Documentation
Interagit directement avec l'API n8n.
// Exemple d'utilisation
{
"method": "GET",
"endpoint": "/workflows",
"params": "?active=true"
}
Gère les workflows n8n (liste, récupère, crée, met à jour, supprime, exporte, importe).
// Exemple d'utilisation
{
"action": "list",
"tags": "production"
}
Génère des intégrations NextJS pour les workflows n8n.
// Exemple d'utilisation
{
"workflowId": "123",
"outputDir": "./my-nextjs-app/pages/api",
"generateTypes": true,
"generateOpenAPI": true
}
Valide les workflows n8n selon différents critères.
// Exemple d'utilisation
{
"workflow": "{...}",
"validators": ["naming", "errorHandling", "security"],
"strictness": "high"
}
Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou une pull request.
MIT