Skip to main content
Glama

MCP Server for LimeSurvey

by Guiraud
LISEZ-MOI.md4.16 kB
# Serveur MCP pour LimeSurvey Ce serveur MCP permet d'interagir avec l'API LimeSurvey en respectant les spécifications du [Model Context Protocol](https://modelcontextprotocol.io/specification/2025-06-18). Il expose les fonctionnalités principales de LimeSurvey sous forme d'endpoints MCP standardisés. ## Fonctionnalités - 🚀 Création de questionnaires - ❓ Ajout de questions et réponses - 📋 Gestion des groupes de questions - ✅ Activation des sondages - 📊 Export des réponses - 🔍 Liste des sondages disponibles ## Prérequis - Python 3.7+ - Accès à une instance LimeSurvey (version 3.X+) - Compte administrateur sur LimeSurvey ## Installation 1. Clonez le dépôt : ```bash git clone https://gitlab.com/mehdi_guiraud/mcp-limesurvey.git cd mcp-limesurvey ``` 2. Configurez les variables d'environnement : ```bash cp .env.example .env # Éditez .env avec vos identifiants LimeSurvey nano .env ``` 3. Installez les dépendances : ```bash python -m venv .venv source .venv/bin/activate pip install -r requirements.txt ``` ## Démarrage du serveur ```bash ./start_server.sh ``` Le serveur sera accessible sur `http://localhost:8080` ## Intégration avec Claude Desktop ### Étape 1: Ajouter le serveur MCP dans Claude Desktop 1. Ouvrez Claude Desktop 2. Allez dans **Settings** → **Model Context Protocol** 3. Cliquez sur **Add Custom Server** 4. Renseignez les informations : - **Server Name**: LimeSurvey MCP - **Base URL**: `http://localhost:8080/mcp` - **Specification URL**: `http://localhost:8080/spec` ### Étape 2: Utilisation avec Claude Desktop Interagissez avec LimeSurvey directement depuis Claude Desktop en utilisant la syntaxe MCP : #### Créer un nouveau questionnaire ```json { "model": "limesurvey", "action": "create_survey", "parameters": { "survey_title": "Sondage Client", "survey_language": "fr" } } ``` #### Ajouter une question ```json { "model": "limesurvey", "action": "add_question", "parameters": { "survey_id": 123456, "group_id": 1, "question_text": "Êtes-vous satisfait de notre service ?", "question_type": "5", "question_options": { "subquestions": ["Très satisfait", "Satisfait", "Neutre", "Insatisfait", "Très insatisfait"] } } } ``` #### Activer un questionnaire ```json { "model": "limesurvey", "action": "activate_survey", "parameters": { "survey_id": 123456 } } ``` #### Exporter les réponses ```json { "model": "limesurvey", "action": "export_responses", "parameters": { "survey_id": 123456, "format": "json" } } ``` ## Endpoints MCP disponibles | Action | Paramètres requis | Description | |--------|-------------------|-------------| | `create_survey` | `survey_title`, `survey_language` | Crée un nouveau questionnaire | | `add_question` | `survey_id`, `group_id`, `question_text`, `question_type` | Ajoute une question à un questionnaire | | `add_group` | `survey_id`, `group_title`, `group_description` | Ajoute un groupe de questions | | `activate_survey` | `survey_id` | Active un questionnaire | | `list_surveys` | Aucun | Liste tous les questionnaires | | `export_responses` | `survey_id` | Exporte les réponses d'un questionnaire | ## Spécification technique Le serveur implémente complètement la spécification MCP du 2025-06-18. Vous pouvez accéder à la spécification complète via : ```http GET http://localhost:8080/spec ``` ## Sécurité 1. **Authentification** : Utilise les identifiants stockés dans `.env` 2. **Validation** : Toutes les requêtes sont validées contre le schéma MCP 3. **Gestion de session** : Cache et recycle automatiquement les sessions LimeSurvey ## Personnalisation Pour ajouter de nouvelles méthodes à l'API : 1. Ajoutez le endpoint dans `config/config.yaml` 2. Implémentez la méthode dans `app/main.py` 3. Ajoutez la documentation dans la fonction `get_mcp_spec` ## Licence Ce projet est sous licence MIT. Voir le fichier [LICENSE](LICENSE) pour plus de détails. --- **Note** : Assurez-vous que l'API RPC est activée dans votre LimeSurvey (`Configuration → Interfaces → Activer l'API RPC`).

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Guiraud/mcp-limesurvey'

If you have feedback or need assistance with the MCP directory API, please join our Discord server