Serveur MCP Digital Samba Embedded API
Utilisez votre assistant IA pour interagir avec l'API Digital Samba Embedded
Installation - Démarrage rapide - Fonctionnalités - Référence API
Vue d'ensemble
Le serveur MCP Digital Samba Embedded API est un serveur Model Context Protocol complet qui permet aux assistants d'intelligence artificielle comme Claude d'interagir avec l'API embarquée de Digital Samba. Avec la prise en charge de 102 outils et 38 ressources couvrant plus de 100 points de terminaison API, il fournit un contrôle complet sur les salles, les sessions, les enregistrements, les analyses, et plus encore.
Caractéristiques
gestion des salles
- Créez, mettez à jour et supprimez des salles
- Générer des jetons d'accès sécurisés
- Gestion des paramètres par défaut des salles
📊 Analyses et rapports
- Statistiques d'utilisation à l'échelle de l'équipe
- Analyse des salles et des sessions
- Analyse et suivi des participants
- Rapports sur les périodes personnalisées
🎥 Gestion des enregistrements
- Liste et gestion des enregistrements
- Archiver et désarchiver les enregistrements
- Télécharger des liens d'enregistrement
- Opérations d'enregistrement en masse
👥 Contrôle des sessions en direct
- Surveiller les salles avec des participants actifs
- Afficher les listes de participants en temps réel
- Vérifier le nombre de participants et la durée de la session
- Démarrer/arrêter les sessions d'enregistrement
- Démarrer/arrêter la transcription
- Terminer les sessions actives
- Suivi des sessions en temps réel
- Intégration des participants par téléphone
💬 Outils de communication
- Création et gestion de sondages
- Suppression des données de la session (chat, questions-réponses, transcriptions, résumés)
📚 Bibliothèque de contenu
- Création et gestion de bibliothèques
- Téléchargement de fichiers et de documents
- Organiser avec des dossiers
- Créer des applications web et des tableaux blancs
- Opérations de fichiers en masse
- Opérations de déplacement et de copie
🔐 Gestion des rôles et des autorisations
- Créer des rôles personnalisés
- Mettre à jour les permissions des rôles
- Supprimer des rôles
- Liste des permissions disponibles
🔔 Gestion des webhooks
- Liste des événements webhook disponibles
- Créer et configurer des webhooks
- Mettre à jour les paramètres des webhooks
- Supprimer des webhooks
- Afficher les détails des webhooks
📤 Capacités d'exportation
- Exporter l'historique des chats
- Exporter les sessions de questions-réponses
- Exporter les transcriptions
- Exporter les résultats des sondages
Installation
# Installer globalement npm install -g @digitalsamba/embedded-api-mcp-server # Ou utiliser directement avec npx (recommandé) npx @digitalsamba/embedded-api-mcp-server@latest --developer-key YOUR_DEVELOPER_KEY
Démarrage rapide
1. Obtenez votre clé de développeur
Inscrivez-vous sur Digital Samba et obtenez votre clé de développeur à partir du tableau de bord.
2. Configurer Claude Desktop
Ajoutez à votre configuration Claude Desktop(~/Bibliothèque/Application Support/Claude/claude_desktop_config.json
sur Mac) :
{ "mcpServers" : { "digital-samba" : {"command" : "npx", "args" : ["@digitalsamba/embedded-api-mcp-server@latest", "--developer-key", "YOUR_DEVELOPER_KEY"] } } }
3. Démarrer l'utilisation
Redémarrez Claude Desktop et vous pouvez maintenant :
"Créer une salle de réunion pour notre réunion d'équipe" "Afficher les analyses des réunions d'hier"
"Lister tous les enregistrements de la semaine dernière Générer un lien de participation pour john@example.com Créer un sondage sur les préférences de réunion Exporter la transcription du chat de la session d'aujourd'hui Télécharger notre présentation dans la bibliothèque de contenu
Ressources et outils MCP disponibles
Le serveur MCP expose les fonctionnalités de l'API Digital Samba à travers deux types d'interfaces : Les ressources fournissent un accès en lecture seule aux données (comme la liste des salles ou la visualisation des analyses), tandis que les outils permettent des actions qui modifient les données (comme la création de salles ou le lancement d'enregistrements). Ces interfaces sont accessibles via des URI MCP, et non via des points d'extrémité directs de l'API. Pour plus de détails sur les ressources et les outils MCP, consultez la documentation officielle MCP.
Note sur la compatibilité des assistants d'intelligence artificielle: Bien que le protocole MCP prenne en charge à la fois les ressources et les outils, les assistants d'intelligence artificielle actuels (comme Claude Desktop) ne peuvent accéder qu'aux outils, et non aux ressources. Pour contourner cette limitation, nous avons mis en œuvre une approche hybride avec les outils de lecture : toutes les ressources en lecture seule ont également des versions d'outils équivalentes qui fournissent les mêmes données. Par exemple, la ressource
digitalsamba://rooms
est également accessible via l'outillist-rooms
. Les outils de lecture sont clairement identifiés par la mention "mirrors digitalsamba://..." dans leur description. Cela permet d'assurer une fonctionnalité complète dans les assistants d'intelligence artificielle tout en maintenant la compatibilité avec les améliorations futures du client MCP.
Ressources (en lecture seule) - 32 disponibles
Ressources des salles
digitalsamba://rooms
- Liste de toutes les sallesdigitalsamba://rooms/{id}
- Obtenir les détails de la chambredigitalsamba://rooms/live
- Liste des salles avec des participants actifsdigitalsamba://rooms/live/participants
- Liste des salles avec les détails des participantsdigitalsamba://rooms/{id}/live
- Obtenir des informations sur la session en direct d'une salledigitalsamba://rooms/{id}/live/participants
- Obtenir la liste des participants d'une salle
Ressources pour les sessions
digitalsamba://sessions
- Liste de toutes les sessionsdigitalsamba://sessions/{id}
- Obtenir le résumé de la sessiondigitalsamba://sessions/{id}/participants
- Liste des participants à la sessiondigitalsamba://sessions/{id}/statistics
- Obtenir les statistiques de la sessiondigitalsamba://rooms/{id}/sessions
- Liste des sessions d'une salle
Ressources d'enregistrement
digitalsamba://recordings
- Liste de tous les enregistrementsdigitalsamba://recordings/{id}
- Obtenir les détails de l'enregistrementdigitalsamba://recordings/archived
- Liste des enregistrements archivésdigitalsamba://rooms/{id}/recordings
- Liste des enregistrements d'une salle
Ressources analytiques
digitalsamba://analytics/team
- Statistiques pour l'ensemble de l'équipedigitalsamba://analytics/rooms
- Statistiques sur les sallesdigitalsamba://analytics/sessions/{id}
- Analyse des sessionsdigitalsamba://analytics/participants
- Analyse des participantsdigitalsamba://analytics/participants/{id}
- Statistiques spécifiques aux participantsdigitalsamba://analytics/usage
- Statistiques d'utilisation- digitalsamba
://analytics/live
- Analyse des sessions en direct - digitalsamba
://analytics/live/{roomId}
- Statistiques en direct pour une salle spécifique
Ressources de la bibliothèque de contenu
digitalsamba://libraries
- Liste de toutes les bibliothèquesdigitalsamba://libraries/{id}
- Détails de la bibliothèquedigitalsamba://libraries/{id}/hierarchy
- Structure du dossier de la bibliothèquedigitalsamba://libraries/{id}/folders
- Liste des dossiersdigitalsamba://libraries/{id}/folders/{folderId}
- Détails du dossierdigitalsamba://libraries/{id}/files
- Lister les fichiersdigitalsamba://libraries/{id}/files/{fileId}
- Détails du fichier
Exporter des ressources
- digitalsamba
://exports/communications/{roomId}/chat
- Exporter le chat digitalsamba://exports/communications/{roomId}/qa
- Exporter Q&A- digitalsamba
://exports/communications/{sessionId}/transcripts
- Exporter des transcriptions - digitalsamba
://exports/polls/{roomId}
- Exporter des sondages digitalsamba://exports/recordings/{recordingId}
- Exporter des métadonnées d'enregistrementdigitalsamba://exports/sessions/{sessionId}/summary
- Exporter le résumé de la sessiondigitalsamba://exports/sessions/{sessionId}/metadata
- Exporter les métadonnées de la session
Outils (Actions) - 99 disponibles
Gestion des salles
create-room
- Créer une nouvelle salleupdate-room
- Mettre à jour les paramètres d'une salledelete-room
- Supprimer une sallegenerate-token
- Générer un jeton d'accèsget-default-room-settings
- Obtenir les paramètres par défaut pour les nouvelles sallesupdate-default-room-settings
- Mettre à jour les paramètres par défaut des nouvelles salleslist-rooms
- Liste toutes les salles (miroirs digitalsamba://rooms)get-room-details
- Obtenir les détails d'une salle spécifique (miroirs digitalsamba://rooms/{id})list-live-rooms
- Liste les salles avec des participants actifslist-live-participants
- Affiche la liste de tous les participants actifs dans les salles
Gestion des sessions
end-session
- Met fin à une session en directget-session-summary
- Obtenir les détails d'une sessionget-all-room-sessions
- Permet d'obtenir la liste de toutes les sessions d'une sallehard-delete-session-resources
- Supprime définitivement les données d'une sessionbulk-delete-session-data
- Supprimer plusieurs types de données de sessionget-session-statistics
- Obtenir des statistiques détaillées sur les sessionslist-sessions
- Liste toutes les sessions (miroirs digitalsamba://sessions)get-session-details
- Obtenir les détails d'une session spécifique (miroirs digitalsamba://sessions/{id})list-session-participants
- Permet de dresser la liste des participants à une sessionlist-room-sessions
- Liste les sessions d'une salle spécifique
Gestion des enregistrements
get-recordings
- Liste des enregistrements avec filtresdelete-recording
- Pour supprimer un enregistrementget-recording
- Obtenir les détails d'un enregistrementget-recording-download-link
- Obtenir l'URL de téléchargementarchive-recording
- Archiver un enregistrementunarchive-recording
- Désarchiver un enregistrement
Commandes de la session en direct
start-recording
- Démarrer l'enregistrement d'une sessionstop-recording
- Arrêter l'enregistrementstart-transcription
- Démarrer la transcription en directstop-transcription
- Arrêter la transcriptionphone-participants-joined
- Enregistrer l'arrivée de participants par téléphonephone-participants-left
- Enregistrer le départ des participants par téléphone
Outils d'analyse
get-participant-statistics
- Analyse des participantsget-room-analytics
- Analyse de l'utilisation de la salleget-usage-statistics
- Mesures d'utilisation globaleget-usage-analytics
- Analyse de l'utilisation (miroirs digitalsamba://analytics/usage)get-live-analytics
- Analyse des sessions en direct (miroirs digitalsamba://analytics/live)get-live-room-analytics
- Analyses en direct pour une salle spécifiqueget-session-analytics
- Analyse des sessions (miroirs digitalsamba://analytics/sessions/{id})get-participant-analytics
- Analyse d'un participant spécifique
Gestion des communications
delete-session-chats
- Supprimer les messages de chat d'une sessiondelete-room-chats
- Supprimer tous les messages de chat d'une salledelete-session-qa
- Supprimer les questions-réponses d'une sessiondelete-room-qa
- Supprimer toutes les questions-réponses d'une salledelete-session-transcripts
- Supprimer les transcriptionsdelete-room-transcripts
- Supprimer toutes les transcriptions d'une salledelete-session-summaries
- Supprimer les résumés de l'IAdelete-room-summaries
- Supprimer tous les résumés d'une salle
Gestion des sondages
create-poll
- Créer un nouveau sondageupdate-poll
- Mettre à jour les paramètres d'un sondagedelete-poll
- Supprimer un sondagedelete-session-polls
- Supprimer tous les sondages d'une sessiondelete-room-polls
- Supprimer tous les sondages d'une sallepublish-poll-results
- Publier les résultats aux participants
Gestion de la bibliothèque de contenu
create-library
- Créer une bibliothèque de contenuupdate-library
- Mettre à jour les détails d'une bibliothèquedelete-library
- Supprimer une bibliothèquecreate-library-folder
- Créer un dossierupdate-library-folder
- Mettre à jour un dossierdelete-library-folder
- Supprimer un dossiercreate-library-file
- Télécharger un fichierupdate-library-file
- Mettre à jour les détails du fichierdelete-library-file
- Supprimer un fichierget-file-links
- Obtenir les liens de visualisation d'un fichiercreate-webapp
- Créer une application webcreate-whiteboard
- Créer un tableau blancmove-library-file
- Déplacer un fichier d'un dossier à l'autremove-library-folder
- Déplacer un dossierbulk-delete-library-files
- Supprimer plusieurs fichiersbulk-upload-library-files
- Télécharger plusieurs fichierscopy-library-content
- Copier des fichiers/dossierslist-libraries
- Liste toutes les bibliothèques (miroirs digitalsamba://libraries)get-library-details
- Obtenir les détails de la bibliothèque (miroirs digitalsamba://libraries/{id})get-library-hierarchy
- Obtenir la structure des dossiers (miroirs digitalsamba://libraries/{id}/hierarchy)list-library-folders
- Liste tous les dossiers (miroir digitalsamba://libraries/{id}/folders)get-library-folder-details
- Obtenir les détails d'un dossierlist-library-files
- Liste tous les fichiers (miroirs digitalsamba://libraries/{id}/files)get-library-file-details
- Obtenir les détails d'un fichier
Gestion des rôles et des permissions
create-role
- Créer un rôle personnaliséupdate-role
- Mettre à jour les paramètres d'un rôledelete-role
- Supprimer un rôleget-roles
- Liste de tous les rôlesget-role
- Obtenir les détails d'un rôleget-permissions
- Liste des autorisations disponibles
Gestion des webhooks
list-webhook-events
- Liste des événements disponibles auxquels s'abonnerlist-webhooks
- Liste de tous les webhooks configuréscreate-webhook
- Créer un nouveau webhookget-webhook
- Obtenir les détails du webhookupdate-webhook
- Mettre à jour la configuration du webhookdelete-webhook
- Supprimer un webhook
Outils d'exportation
export-chat-messages
- Exporte les messages de chat d'une salle (miroirs digitalsamba://exports/communications/{roomId}/chat)export-qa-data
- Exporte les données des questions-réponses d'une salle (miroirs digitalsamba://exports/communications/{roomId}/qa)export-session-transcripts
- Exporte les transcriptions d'une session (miroir digitalsamba://exports/communications/{sessionId}/transcripts)export-poll-results
- Exporte les résultats d'un sondage d'une salle (miroirs digitalsamba://exports/polls/{roomId})export-recording-metadata
- Exporte les métadonnées d'un enregistrement (miroir digitalsamba://exports/recordings/{recordingId})export-session-summary
- Exporte le résumé de la session (miroirs digitalsamba://exports/sessions/{sessionId}/summary)export-session-metadata
- Exporte les métadonnées de la session (miroir digitalsamba://exports/sessions/{sessionId}/metadata)
Variables d'environnement
DIGITAL_SAMBA_DEVELOPER_KEY
- Votre clé de développeur Digital Samba (optionnel si vous utilisez --developer-key ou le drapeau -k)DIGITAL_SAMBA_API_URL
- URL de base de l'API (optionnel, la valeur par défaut est production)DS_LOG_LEVEL
- Niveau de journalisation (error, warn, info, debug)
Exemples d'application
Création d'une salle de base
créer une salle privée appelée "Executive Meeting" pouvant accueillir 10 personnes
Générer un jeton d'accès
"Générer un jeton de modérateur pour sarah@company.com afin qu'il puisse participer à la réunion de direction
Gestion de la bibliothèque de contenu
"Créer une bibliothèque pour notre matériel de formation et télécharger la présentation d'accueil
Analyses et rapports
"Afficher les statistiques des participants pour les sessions du mois dernier
Développement
# Cloner le dépôt git clone https://github.com/digitalsamba/embedded-api-mcp-server.git cd embedded-api-mcp-server # Installer les dépendances npm install # Exécuter en mode développement npm run dev -- --developer-key YOUR_DEVELOPER_KEY # ou -k YOUR_DEVELOPER_KEY # Construire pour la production npm run build # Exécuter les tests npm test # Exécuter les tests avec couverture npm run test:coverage
Architecture du serveur
Le serveur suit une architecture modulaire :
src/ ├── index.ts # Entrée principale du serveur MCP ├── digital-samba-api.ts # API client wrapper ├─── resources/ # Read-seulement les ressources MCP │ ├── rooms/ # Liste des salles │ ├── sessions/ # Données des sessions │ ├── analytics/ # Données analytiques │ ├── recordings/ # Listes d'enregistrement │ ├── content/ # Bibliothèques de contenu │ └── exports/ # Fonctionnalité d'exportation └── tools/ # Outils MCP (actions) ├── room-management/ ├── session-management/ ├── recording-management/ ├── analytics-tools/ ├── live-session-controls/ ├── communication-management/ ├── poll-management/ ├── library-management/ └─── role-management/
Contribuer
Les contributions sont les bienvenues ! Veuillez consulter notre guide de contribution pour plus de détails.
Licence
Licence MIT - voir LICENSE pour plus de détails.
Support
- 📧 Courriel : support@digitalsamba.com
- 📚 Documentation API
- 🐛 S uivi des problèmes
Construit avec ❤️ par l'équipe Digital Samba