@nova-mind-cloud/meeting-analyser
v1.0.3
Published
MCP Server for audio transcription and meeting analysis using OpenAI Whisper
Downloads
23
Maintainers
Readme
Nova Meeting Analyser MCP Server
MCP Server pour la transcription audio utilisant l'API OpenAI Whisper. Prêt à l'emploi "out of the box" - aucun build requis !
📄 License
Nova-Mind Cloud License (NMCL) - Free for personal use, commercial use requires subscription.
✓ Free for personal projects
⚠️ Commercial use requires Nova-Mind Cloud subscription
See LICENSE for full terms.
🎯 Fonctionnalités
- Transcription audio/vidéo via OpenAI Whisper API
- Support audio : MP3, WAV, M4A, FLAC, AAC
- Support vidéo : MP4, AVI, MKV, MOV, WebM, WMV, FLV
- Extraction audio automatique des vidéos via FFmpeg
- Validation robuste des fichiers (taille, format, existence)
- Gestion d'erreurs complète (API, fichiers, quotas)
- Timestamps optionnels avec segmentation du texte
⚡ Installation Express
Prérequis
- Node.js 18+
- FFmpeg installé sur le système
- Clé API OpenAI avec accès Whisper
Installation FFmpeg
Windows :
# Via Chocolatey
choco install ffmpeg
# Via Scoop
scoop install ffmpegmacOS :
brew install ffmpegUbuntu/Debian :
sudo apt update
sudo apt install ffmpegSetup Rapide
# Installation des dépendances
npm install
# Configuration de l'environnement
cp .env.example .env
# Editer .env avec votre clé OpenAI API
# Test du serveur
npm test
# C'est tout ! Prêt à utiliser⚙️ Configuration
Créer un fichier .env basé sur .env.example :
# Obligatoire
OPENAI_API_KEY=sk-your-openai-api-key-here
# Optionnel
MAX_FILE_SIZE_MB=25
TEMP_DIR=./temp
SUPPORTED_FORMATS=mp3,wav,m4a,flac,aac
DEFAULT_LANGUAGE=auto
DEFAULT_TEMPERATURE=0
DEFAULT_RESPONSE_FORMAT=verbose_json🚀 Utilisation
Démarrage du serveur
# Mode développement
npm run dev
# Mode production
npm startConfiguration Claude Desktop
Ajouter dans claude_desktop_config.json :
{
"mcpServers": {
"nova-meeting-analyser": {
"command": "node",
"args": ["C:/path/to/nova-meeting-analyser/index.js"],
"env": {
"OPENAI_API_KEY": "sk-your-api-key"
}
}
}
}Utilisation dans Claude
// Transcription audio basique
await transcribe_audio({
filePath: "/path/to/reunion.mp3"
});
// Transcription vidéo (extraction audio automatique)
await transcribe_audio({
filePath: "/path/to/presentation.mp4",
language: "fr",
prompt: "Présentation commerciale",
response_format: "verbose_json"
});
// Transcription avancée
await transcribe_audio({
filePath: "/path/to/reunion.wav",
language: "fr",
prompt: "Réunion d'équipe technique avec jargon IT",
response_format: "verbose_json",
temperature: 0
});📊 Format de réponse
Succès (verbose_json)
{
"success": true,
"transcription": "Texte transcrit complet...",
"duration": 3600,
"language": "fr",
"segments": [
{
"start": 0.0,
"end": 5.2,
"text": "Bonjour et bienvenue..."
}
],
"metadata": {
"file_path": "/path/to/file.mp3",
"response_format": "verbose_json",
"processing_options": {...}
}
}Erreur
{
"success": false,
"error": "File not found: /path/to/file.mp3",
"file_path": "/path/to/file.mp3"
}🔧 Workflow Nova-Mind
Ce MCP s'intègre dans le workflow complet Nova :
- Upload audio →
transcribe_audio() - Analyse Nova → Extraction thématiques/actions
- Stockage Notion → Pages structurées
- Indexation Pinecone → Mémoire Nova
- Email récap → Synthèse automatique
🚨 Gestion d'erreurs
Le serveur gère automatiquement :
- Fichiers inexistants ou corrompus
- Formats non supportés (conversion automatique)
- Fichiers trop volumineux (>25MB)
- Échecs API OpenAI (quota, authentification)
- Erreurs de conversion FFmpeg
💰 Coûts
- Whisper API : $0.006 par minute d'audio
- Réunion 1h : ~$0.36
- 100h/mois : ~$36
🧪 Tests
# Test avec fichier exemple
node -e "
const { transcribe_audio } = require('./dist');
transcribe_audio({filePath: './test-audio.mp3'})
.then(console.log)
.catch(console.error);
"📝 Formats supportés
Formats Audio (Direct)
| Format | Extension | Traitement | |--------|-----------|------------| | MP3 | .mp3 | Direct | | WAV | .wav | Direct | | M4A | .m4a | Direct | | FLAC | .flac | Direct | | AAC | .aac | Direct |
Formats Vidéo (Extraction Audio)
| Format | Extension | Traitement | |--------|-----------|------------| | MP4 | .mp4 | FFmpeg → MP3 → Whisper | | AVI | .avi | FFmpeg → MP3 → Whisper | | MKV | .mkv | FFmpeg → MP3 → Whisper | | MOV | .mov | FFmpeg → MP3 → Whisper | | WebM | .webm | FFmpeg → MP3 → Whisper | | WMV | .wmv | FFmpeg → MP3 → Whisper | | FLV | .flv | FFmpeg → MP3 → Whisper |
🔒 Sécurité
- Variables d'environnement pour les clés API
- Suppression automatique des fichiers temporaires
- Transmission HTTPS uniquement (OpenAI)
- Pas de stockage côté OpenAI (selon leurs ToS)
🛠 Développement
# Watch mode
npm run watch
# Build
npm run build
# Développement
npm run dev📞 Support
Pour toute question ou support, contacter Charles Annoni - GDM-Pixel.
Nova Meeting Analyser - Transcription intelligente pour l'écosystème Nova-Mind 🔥
