Forge MCP Server - MCP Server sécurisé par ALMC Security 2025

Forge MCP Server

Voir sur GitHub

Serveur MCP Forge

Il s'agit d'un serveur MCP (Model Context Protocol) pour l'intégration de Laravel Forge. Il fournit un accès complet à l'API officielle de Laravel Forge par le biais d'outils compatibles MCP, permettant une gestion transparente du serveur et du site.

Pour plus d'informations sur l'API de Laravel Forge, voir la documentation officielle de l'API.

Caractéristiques

  • Serveur compatible MCP
  • Intégration complète de l'API Laravel Forge
  • Outil de contrôle de santé : test_connection
  • Couverture étendue d'outils pour la gestion du serveur et du site
  • Construit sur l'API officielle de Laravel Forge

Conditions préalables

  • Node.js (v18+ recommandé)
  • npm (v9+ recommandé)

Configuration et utilisation

Une clé API Forge est nécessaire pour toutes les invocations de l'outil Forge. Vous devez la fournir sous la forme

  • la variable d'environnement FORGE_API_KEY, ou
  • l'argument de ligne de commande --api-key

Utilisation avec Claude Desktop

Ajoutez ce qui suit à votre fichier claude_desktop_config.json. Voir ici pour plus de détails.

Option 1 : Utiliser npx (Recommandé)

Utiliser la variable d'environnement :

{ "mcpServers" : { "forge-mcp" : { "command" : "npx", "args" : [ "-y", "@ranium/forge-mcp" ], "env" : { "FORGE_API_KEY" : "your_forge_api_key_here" } } } }

Utilisation de l'argument de ligne de commande :

{ "mcpServers" : { "forge-mcp" : { "command" : "npx", "args" : [ "-y", "@ranium/forge-mcp", "--api-key=votre_clé_api_forge_ici" ] } } }

Option 2 : Utiliser node directement

Tout d'abord, clonez le dépôt et construisez le projet :

git clone https://github.com/ranium/forge-mcp-server cd forge_mcp npm install npm run build

Ajoutez ensuite ce qui suit à votre fichier claude_desktop_config.json:

Utilisation de la variable d'environnement :

{ "mcpServers" : { "forge-mcp" : { "command" : "node", "args" : [ "/path/to/forge_mcp/dist/server.js" ], "env" : { "FORGE_API_KEY" : "your_forge_api_key_here" } } } }

Utilisation de l'argument de ligne de commande :

{ "mcpServers" : { "forge-mcp" : { "command" : "node", "args" : ["/path/to/forge_mcp/dist/server.js", "--api-key=your_forge_api_key_here" ] } } }

Remarque : vous pouvez utiliser la variable d'environnement FORGE_API_KEY ou l'argument --api-key. Si les deux sont fournis, l'argument de la ligne de commande est prioritaire. Ne livrez jamais vos clés d'API réelles au contrôle de version. Utilisez des variables d'environnement ou la gestion des secrets en production.

Catégories d'outils et contrôle d'accès

Tous les outils sont regroupés en deux catégories :

  • Lecture seule: Opérations sûres et non modificatrices (par exemple, énumération, visualisation, vérification de l'état).
  • Écriture: Opérations qui créent ou modifient des ressources (par exemple, création, mise à jour, redémarrage, activation/désactivation de fonctions).

Par défaut, seuls les outils en lecture seule sont activés. Pour activer les outils d'écriture, utilisez l'option --tools:

  • --tools=readonly (par défaut)
  • --tools=readonly,write (active les outils en lecture seule et en écriture)

Exemple :

npx -y @ranium/forge-mcp --api-key=votre_clé_api_forge_ici -tools=readonly,write

Ou dans claude_desktop_config.json:

{ "mcpServers" : { "forge-mcp" : { "command" : "npx", "args" : [ "-y", "@ranium/forge-mcp", "--api-key=your_forge_api_key_here", "--tools=readonly,write" ] } } }

Outils disponibles (par catégorie)

Outils en lecture seule

  • list_servers - Liste tous les serveurs
  • list_static_php_versions - Liste les versions statiques de PHP
  • list_php_versions - Liste les versions de PHP
  • get_user - Obtenir des informations sur l'utilisateur
  • show_server - Obtenir des informations détaillées sur un serveur spécifique
  • list_sites - Affiche la liste de tous les sites d'un serveur
  • show_site - Obtenir des informations détaillées sur un site spécifique
  • list_daemons - Affiche la liste des démons
  • show_daemon - Obtenir des informations détaillées sur les démons
  • list_deployments - Liste des déploiements
  • get_deployment_log - Obtenir les journaux de déploiement
  • get_deployment - Obtenir les détails du déploiement
  • get_deployment_output - Obtenir la sortie du déploiement
  • get_server_logs - Obtenir les journaux du serveur
  • list_providers - Liste des fournisseurs de nuages
  • list_database_types - Liste des types de bases de données
  • list_credentials - Liste des informations d'identification
  • list_regions - Liste des régions disponibles
  • list_ubuntu_versions - Liste des versions Ubuntu
  • get_composer_packages_auth - Obtenir l'authentification Composer
  • check_laravel_maintenance_status - Vérifie le mode de maintenance de Laravel
  • check_pulse_daemon_status - Vérifie l'état du démon Pulse
  • check_inertia_daemon_status - Vérifie l'état du démon Inertia
  • check_laravel_scheduler_status - Vérifie l'état du planificateur Laravel
  • list_sizes - Liste les tailles des serveurs
  • list_project_types - Liste les types de projets
  • list_databases - Liste toutes les bases de données
  • get_database - Obtenir les détails de la base de données
  • list_database_users - Liste des utilisateurs de la base de données
  • get_database_user - Obtenir les détails de l'utilisateur de la base de données
  • list_certificates - Liste des certificats SSL
  • get_certificate - Obtenir les détails du certificat
  • get_site_env - Lit le fichier d'environnement du site (.env)
  • get_site_log - Obtenir les journaux du site

Outils d'écriture

  • create_server - Créer un nouveau serveur
  • create_database - Créer une nouvelle base de données
  • sync_database - Synchroniser la base de données
  • create_database_user - Créer un nouvel utilisateur de base de données
  • reboot_server - Redémarrer un serveur
  • reboot_nginx - Redémarrer le service Nginx
  • reboot_php - Redémarre le service PHP
  • reboot_mysql - Redémarre le service MySQL
  • reboot_postgres - Redémarre le service PostgreSQL
  • create_site - Créer un nouveau site
  • install_or_update_site_git - Installer ou mettre à jour le dépôt Git
  • enable_quick_deployment - Activer le déploiement rapide
  • disable_quick_deployment - Désactiver le déploiement rapide
  • deploy_now - Déploiement immédiat
  • change_site_php_version - Modifier la version PHP du site
  • add_site_aliases - Ajouter des alias de site
  • clear_site_log - Efface les journaux du site
  • create_lets_encrypt_certificate - Créer un certificat Let's Encrypt
  • activate_certificate - Activer un certificat

Captures d'écran

Création d'un serveur

Creating a ServerDémonstration du processus de création d'un serveur via l'interface MCP

Création d'un site

Creating a SiteMontre comment créer un nouveau site sur un serveur existant

Redémarrage d'un serveur

Rebooting a ServerIllustre la fonctionnalité de redémarrage du serveur

Structure du projet

  • src/server.ts - Point d'entrée principal du serveur MCP
  • src/tools/forge/ - Toutes les définitions et le registre des outils Forge
  • src/core/types/ - Définitions de types et protocoles
  • package.json - Scripts et dépendances
  • .gitignore - Ignore les fichiers de construction, d'environnement et de dépendance

Extension (ajout de nouveaux outils)

  1. Exporter une ForgeToolDefinition à partir du nouveau fichier.
  2. Importez et ajoutez l'outil au tableau forgeTools dans src/tools/forge/index.ts.
  3. Les outils seront enregistrés au démarrage du serveur.

Pour plus d'informations sur le MCP, voir la documentation Model Context Protocol.

Avis de non-responsabilité

Le serveur Forge MCP est un produit indépendant et n'est pas officiellement affilié à, endossé par, ou sponsorisé par Laravel ou Taylor Otwell. laravel est une marque déposée appartenant à Taylor Otwell. Forge MCP server est développé et maintenu indépendamment du projet officiel Laravel.

Licence

Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.

Liés dans Service en nuage - MCP Servers sécurisés

ServeurRésuméActions
Serveur Lodgify MCPServeur MCP (Model Context Protocol) pour l'API de location de vacances Lodgify. Il expose des outil...Voir
Tableau CloudUn serveur MCP (Model Context Protocol) complet pour l'administration de Tableau Cloud construit ave...Voir
BrexUn serveur Model Context Protocol (MCP) pour l'intégration avec l'API Brex, permettant aux agents d'...Voir
fal-ai/minimax/image-01Un serveur Model Context Protocol (MCP) qui fournit un accès au modèle de génération d'images fal-ai...Voir
OpenAIInterroger les modèles OpenAI directement à partir de Claude en utilisant le protocole MCP.Voir
CISA M365 MCP ServeurServeur MCP (Model Context Protocol) mettant en œuvre les contrôles de sécurité de la directive opér...Voir