MCP Server for n8n
by MCP-Mirror
This project is an MCP (Master Control Program) server for n8n that provides workflow validation tools and best practices for your n8n automation projects. It also offers NextJS integration capabilities.
Last updated: N/A
Serveur MCP pour n8n
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.
Fonctionnalités
- 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
Prérequis
- 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)
Installation
- 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.
Utilisation
Construction du projet
pnpm build
Démarrage du serveur
pnpm start
Le serveur MCP sera accessible à l'adresse http://localhost:3000 (ou le port spécifié dans votre fichier .env).
Utilisation avec Claude Desktop
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"]
}
}
}
Structure du projet
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
Outils disponibles
1. N8nApiTool
Interagit directement avec l'API n8n.
// Exemple d'utilisation
{
"method": "GET",
"endpoint": "/workflows",
"params": "?active=true"
}
2. WorkflowManagerTool
Gère les workflows n8n (liste, récupère, crée, met à jour, supprime, exporte, importe).
// Exemple d'utilisation
{
"action": "list",
"tags": "production"
}
3. NextJSIntegrationTool
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
}
4. WorkflowValidatorTool
Valide les workflows n8n selon différents critères.
// Exemple d'utilisation
{
"workflow": "{...}",
"validators": ["naming", "errorHandling", "security"],
"strictness": "high"
}
Contribution
Les contributions sont les bienvenues ! N'hésitez pas à ouvrir une issue ou une pull request.
Licence
MIT