Serveur MCP Infactory
Serveur MCP (Model Context Protocol) permettant d'interagir avec les API d'Infactory à l'aide de Claude et d'autres LLM. Ce serveur permet aux modèles de langage d'accéder aux données et de les manipuler dans votre environnement Infactory.
Fonctionnalités
- Gestion de projet: Liste, recherche et création de projets
- Programmes de requête: Liste et exécution des programmes de requête
- Sources de données: Liste, récupération et création de sources de données
- Gestion des utilisateurs et des équipes: Obtenir des informations sur les utilisateurs actuels et dresser la liste des équipes
Pour commencer
Conditions préalables
- Une clé API Infactory
- Node.js 18+ (pour une installation locale)
Installation
Utilisation de NPX (recommandé)
npx -y @infactory/infactory-mcp
Utilisation de Docker
docker run -i --rm \e -e NF_API_KEY="your_api_key_here" \e @infactory/infactory-mcp
Variables d'environnement
NF_API_KEY
(obligatoire) : Votre clé d'API InfactoryNF_BASE_URL
(optionnel) : Point d'accès personnalisé à l'API si vous utilisez un environnement différent
Outils disponibles
Outils de projet
list_projects: Liste tous les projets disponibles
- Aucun paramètre n'est requis
get_project: Obtenir les détails d'un projet spécifique
- Paramètres
project_id
(chaîne) : ID du projet à récupérer
- Paramètres
create_project: Créer un nouveau projet
- Paramètres
name
(chaîne) : Nom du projetdescription
(chaîne, optionnel) : Description du projetteam_id
(chaîne) : ID de l'équipe
- Paramètres
Outils d'interrogation des programmes
list_query_programs: Liste les programmes d'interrogation d'un projet
- Paramètres
project_id
(chaîne) : ID du projet
- Paramètres
execute_query_program: Exécuter un programme d'interrogation
- Paramètres
queryprogram_id
(chaîne) : ID du programme de requête à exécuterinput_data
(objet, facultatif) : Données d'entrée pour le programme d'interrogation
- Paramètres
Outils de source de données
list_datasources: Liste les sources de données d'un projet
- Paramètres
project_id
(chaîne) : ID du projet
- Paramètres
get_datasource: Obtenir les détails d'une source de données spécifique
- Paramètres
datasource_id
(chaîne) : ID de la source de données
- Paramètres
create_datasource: Créer une nouvelle source de données
- Paramètres
name
(string) : Nom de la source de donnéesproject_id
(chaîne) : ID du projettype
(chaîne) : Type de la source de données
- Paramètres
Outils pour les utilisateurs et les équipes
get_current_user: Obtenir des informations sur l'utilisateur actuel
- Aucun paramètre n'est requis
list_teams: Liste les équipes d'une organisation
- Paramètres
organization_id
(chaîne) : ID de l'organisation
- Paramètres
Utilisation avec Claude Desktop + Windsurf + Cursor
Voici l'emplacement probable de votre fichier de configuration MCP :
- Claude Desktop - Ajoutez-le à votre
fichier claude_desktop_config.json
: - Windsurf - Ajoutez ceci à votre
~/.codeium/windsurf/mcp_config.j
son : - Cursor - Ajoutez ceci à votre
~/.cursor/mcp.json
:
Ajoutez ceci à votre configuration MCP :
{"version" : "0.1", "mcpServers" : { "infactory-mcp" : {"command" : "npx", "args" : ["-y", "@infactory/infactory-mcp"], "env" : { "NF_API_KEY" : "nf-************************" } } }
{ "version" : "0.1", "mcpServers" : { "infactory-mcp" : { "command" : "npx", "args" : ["-y", "@infactory/infactory-mcp@0.6.1"], "env" : { "NF_API_KEY" : "nf-2FEUOhBAeMOtzyTqK1VEMFc7D-AMsL89gQOTsDURJn0", "NF_BASE_URL" : "http://localhost:8000" } } }
Ou si vous faites du développement :
{"version" : "0.1", "mcpServers" : { "infactory-mcp" : { "command" : "node", "args" : ["FULL_PATH_TO/infactory-mcp/dist/index.js"], "env" : { "NF_API_KEY" : "nf-************************" } } }
Exemples d'invites
Une fois que votre serveur MCP est configuré, vous pouvez utiliser des invites comme celles-ci avec Claude :
- "Montrez-moi une liste de tous mes projets Infactory"
- "Obtenir les détails du projet proj-123abc"
- "Créer un nouveau projet appelé 'Analyse de données' dans l'équipe team-456xyz"
- "Liste de tous les programmes de requête dans le projet proj-123abc"
- "Exécuter le programme de requête qp-789def"
- "Parlez-moi de moi (mon compte d'utilisateur)"
Construire à partir des sources
# Cloner le dépôt git clone https://github.com/yourusername/mcp-server-infactory.git cd mcp-server-infactory # Installer les dépendances npm install # Build npm run build # Démarrer le serveur npm start # Optionnel - démarrer l'inspecteur (pour le débogage) npx @modelcontextprotocol/inspector -e "NF_API_KEY=$NF_API_KEY" node -- dist/index.js
Licence
Licence MIT