LibreOffice MCP
quellesÉtatsontaules possibilités MCP permises pour la suite logicielle LibreOffice pour interagir avec une IA - rédiger ou mettre à jour des paragraphes, controler le sens du texte,créer des tableurs, des présentations ?
En juin 2026, les possibilités offertes par leModel Context Protocol (MCP)pour interagir avec la suite LibreOffice (Writer, Calc, Impress, etc.) via une IA sont déjà bien avancées et permettent une intégration poussée. Voici ce que tu peux faire concrètement :
1. Édition et création de documents (Writer)Rédiger ou mettre à jour des paragraphes2026-08-05 :Lesinstalléserveurset opérationnel sur le PC Windows eliob. Extension Nelson MCPpour0.7.1, LibreOfficepermettent26.2.5.2,àserveuruneHTTPIAactifdesur127.0.0.1:8766,lire,110écrire, modifier et formateroutilsdesexposés,documentsMCPWriternelson(ODT). Tu peux demander à l'IA d'ajouter des titres, des paragraphes, des tableaux, des images, ou d'effectuer des recherches/remplacements automatiquesenregistré dansleClaudetexte.CodePar exemple, un outil commelibreoffice-mcpouNelson MCPexpose ces fonctionnalités via des appels d'outils standardisés.Contrôlerpour lesensprojetduD:\Syncthing\Jux_univers\Claude-pcelio+jux.texteCette
:pageL'IAapeutétéanalyserréécrite lecontenu, suggérer des reformulations, vérifier la cohérence ou la grammaire, et même générer du texte contextuel en fonction du document ouvert.
2. Gestion de tableurs (Calc)Créer et manipuler des tableurs: Les serveurs MCP permettent decréer, lire, modifier des feuilles de calcul(ODS), y compris la manipulation de cellules, l'insertion de formules, la création de graphiques, et l'automatisation de tâches répétitives (ex : mise à jour de données, tri, filtrage).Appeler une IA directement depuis une cellule: Certains projets, comme Nelson MCP, intègrent une fonction=PROMPT()dans Calc, qui permet d'interroger une IA (ex : Claude, Gemini) directement depuis une formule Excel, pour générer des données ou des analyses en temps réel.
3. Présentations (Impress)Créer ou modifier des diapositives: Les outils MCP permettent d'automatiser la création de présentations, d'ajouter du texte, des images, des formes, ou de restructurer des diapositives existantes. L'IA peut aussi suggérer des mises en page ou du contenu en fonction d'un brief.
4. Automatisation et workflowsAutomatiser des workflows: Tu peux configurer despresets(ex : minimal, writer-edit, calc) pour exposer uniquement les outils nécessaires à ton agent IA. Par exemple, lancer un script qui génère un rapport dans Writer, extrait des données de Calc, et les insère dans une présentation Impress, le tout piloté par une IA.Intégration avec des clients MCP: Les serveurs MCP pour LibreOffice sont compatibles avec des clients commeClaude Desktop, Cursor, ou des outils personnalisés. Ils fonctionnent en local (via une extension LibreOffice ou un serveur HTTP) et permettent une interaction fluide entre l'IA et tes documents.
5. Exemples concrets d'outilslibreoffice-mcp: Extension et serveur MCP pour LibreOffice, permettant une intégration complète avec des IA comme Claude ou Gemini. Fonctionne avec LibreOffice 24.2+ et expose une API HTTP pour les appels d'outils.Nelson MCP: Extension qui transforme tes documents LibreOffice en serveur MCP, avec des launchers intégrés pour Claude Code, Gemini CLI, etc. Permet de lire/éditer des documents ouverts et d'utiliser des fonctions avancées comme=PROMPT()dans Calc.OooDev: Bibliothèque Python qui simplifie l'accès à l'API UNO de LibreOffice, utilisée par plusieurs serveurs MCP pour manipuler des documents, des bases de données (Base), ou des graphiques.
6. Prérequis techniquesLibreOffice24.2 ou supérieur(pour la plupart des serveurs MCP).Installation d'uneextension LibreOffice(ex :libreoffice-mcp-extension.oxt) ou d'un serveur MCP local (Python/Node.js).Connexion viasocket(port 2083 ou 8765 selon les outils) ou HTTP pour les appels d'API.
7. Cas d'usage avancésVeille territoriale: Tu peux combiner MCP avec des alertes (ex : Google Alerts) et une IA pourfiltrer, classer et résumerdes informations dans des documents LibreOffice, comme tu l'envisageais pour ton projet de gestion de veilles.Gestion de bibliothèque: Automatiser la création de fiches ou de rapports2026-08-05 à partir detesl'installationdonnéesréelle.(exLa:versionKavita)précédente reposait sur une recherche web et contenait plusieurs erreurs — voir la section « Erreurs de la version précédente » enutilisantfindesdetemplatespage.Writer
Comment démarrer ?
Nelson MCP
Code
ModalitésLe techniques de mise en placeprincipe
Option retenue : Nelson MCP
Nelson MCP n'est l'option la plus directement compatible avec Claude Code — il exposepas un serveur MCP depuisséparé LibreOfficequ'on vialance à côté de LibreOffice. C'est une extension .oxt, avecqui desembarque launchersun natifsserveur pourHTTP dans le process soffice.bin. Claude Code s'y connecte en HTTP et Geminipilote CLI.les documents ouverts dans la fenêtre LibreOffice, en direct, via l'API UNO.
Conséquences
1.pratiques Installation de l'extension LibreOffice
:
Téléchargerpas de commande à lancer, pas de service à installer — LibreOffice ouvert = serveur disponible
toutes les opérations UNO tournent sur le thread principal de LibreOffice (sécurité thread)
on voit les modifications apparaître à l'extensionécran depuispendant que l'IA travaille
fermer LibreOffice ferme le serveur
Projet : quazardous/nelson-mcp (lobehub n'est qu'un annuaire de serveurs MCP, pas la pagesource)
Auteur : David Berlioz — licence MPL 2.0
Version installée : 0.7.1
Dépendance déclarée : LibreOffice ≥ 4.1 (fichierle .oxt) embarque son propre Python 3.12 et ses libs)
Installation
1. Extension
Outils → Gestionnaire des extensions → Ajouter
nelson.oxt, puis redémarrer LibreOffice.
Emplacement après installation (Windows) :
%APPDATA%\LibreOffice\4\user\uno_packages\cache\uno_packages\<hash>.tmp_\nelson.oxt\
Le sous-dossier <hash>.tmp_ est généré par LibreOffice — sur eliob : lu3692afhf.tmp_. Ne pas le coder en dur dans un script, le retrouver par Get-ChildItem ...\uno_packages -Recurse -Filter nelson.oxt.
2. Démarrage du serveur
Valeurs par défaut : host localhost, port 8766. Modifiables dans Outils → Options → Nelson, ainsi que TLS (use_ssl, ssl_cert, ssl_key).
Vérifier :
netstat -ano | Select-String ":8766"
Le PID retourné doit être celui de soffice.bin.
3. Enregistrement dans Claude Code
claude mcp add --transport http nelson http://127.0.0.1:8766/mcp
Écrit dans C:\Users\eliob\.claude.json, section projects > <projet> > mcpServers. Vérifier avec claude mcp list → nelson: ✔ Connected.
Relancer la session Claude Code : les outils d'un MCP ajouté en cours de session ne sont pas chargés.
Endpoints HTTP
/mcp
MCP Streamable HTTP (transport actuel) — c'est celui à utiliser
POST/GET
/sse, /messages
ancien transport SSE, pour clients qui ne gèrent pas Streamable HTTP
GET
/health
état du serveur
GET
/api/tools
référence HTML de tous les outils
GET
/
page d'info
GET/POST
/api/config
lecture/écriture de la configuration — désactivé par défaut (http.enable_config_api)
Test de connexion en une commande :
curl -s -X POST http://127.0.0.1:8766/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}'
Réponse attendue : serverInfo: {"name":"Nelson MCP","version":"0.7.1"} + un en-tête Mcp-Session-Id.
Ce que ça permet réellement — 110 outils
Writer
Lecture et écriture par paragraphe (read_paragraphs, insert_at_paragraph, set_paragraph_text, delete_paragraph, duplicate_paragraph, insert_paragraphs_batch), styles, plan/outline, tableaux, images, cadres, hyperliens, commentaires, statistiques, recherche/remplacement, suivi des modifications (accept/reject), navigation (signets, titres, proximité), et un index plein texte avec stemming (33 langues embarquées via snowballstemmer, base SQLite embarquée).
Calc
Cellules, lignes, feuilles, formules, graphiques, formatage conditionnel, commentaires, navigation, recherche, et un détecteur d'erreurs de feuille.
Draw / Impress
Pages, formes, masques, notes, transitions, espaces réservés.
Transversal
execute_batch (plusieurs appels en une requête, avec chaînage de variables entre opérations), undo/redo, document_health_check (titres vides, sauts de niveau de titre, images orphelines…), ouverture/création/sauvegarde/export/impression, jobs asynchrones (list_jobs, get_job).
Galeries et images IA
generate_image, edit_image) via AI Horde, OpenAI-compatible, ou Stable Diffusion WebUI Forge local
Fournisseur LLM Ollama pour l'indexation/description automatique
Fonction =PROMPT() dans Calc
Fournie par XPromptFunction.rdb — interroge un fournisseur IA directement depuis une formule de feuille de calcul.
Deux garde-fous activés par défaut
Ce sont les réglages les plus importants de la page Options (core) :
force_track_changes
activé
active l'enregistrement des modifications avant toute mutation venant du MCP — toutes les modifications de l'IA sont visibles et réversibles
follow_activity
activé
fait défiler la vue vers l'endroit modifié, en temps réel
À ne pas désactiver sans raison : c'est ce qui rend une session d'édition par IA relisable.
Le panneau latéral Nelson (deck NelsonDeck, visible dans Writer et Calc) affiche le journal des actions MCP et les jobs en cours.
Presets — réduire la surface d'outils
110 outils, c'est beaucoup de contexte. Nelson permet de créer des endpoints filtrés : Options → Nelson → MCP → preset puis bouton de création. L'endpoint apparaît sur /mcp/<preset>.
minimal
8 outils — lister/ouvrir/créer/sauver, lire et insérer des paragraphes, insérer une image
writer-read
14 outils, lecture seule
writer-edit
24 outils d'édition Writer
calc
13 outils tableur
gallery
10 outils images/documents
Utile pour un modèle plus petit, ou pour interdire les mutations (writer-read).
Launchers intégrés — l'autre façon de faire
Nelson sait lancer lui-même Claude Code (aussi Gemini CLI et OpenCode), depuis LibreOffice. Le module launcher.claude crée alors un espace de travail dans :
~/.local/share/nelson/cli/claude
et y génère automatiquement :
.oxtmcp.json pointant sur <url>/mcp
.claude/settings.json avec "allow": ["mcp__nelson__*"] — auto-approbation de tous les outils Nelson
CLAUDE.md (méta-prompt fourni par l'extension)
.claude/skills/nelson/SKILL.md
puis lance claude --resume dans ce dossier.
Choix retenu sur eliob : ne pas utiliser le launcher, et brancher le MCP sur les projets existants. Raisons — l'espace de travail du launcher est isolé et perd le CLAUDE.md du Jux_univers ; et l'auto-approbation globale mcp__nelson__* inclut les outils de mutation et de sauvegarde de fichiers.
Tunnels — accès distant
Modules tunnel.cloudflare, tunnel.ngrok, tunnel.tailscale (Funnel), tunnel.bore : exposent le serveur HTTP local à l'extérieur, pour piloter LibreOffice depuis un client MCP distant (l'aide embarquée documente le cas ChatGPT via Tailscale).
À manier avec prudence : cela publie sur internet un endpoint qui peut lire, modifier et enregistrer des fichiers locaux. Le serveur écoute par défaut sur localhost uniquement — c'est le bon réglage. Voir l'incident du 2026-06-09 sur l'API RC rclone exposée en 0.0.0.0 (VPS Jux), même schéma de risque.
Aide embarquée
L'extension embarque sa propre documentation HTML, consultable directement :
<...>\nelson.oxt\help\index.html
Fichiers utiles : writer.html (33 Ko), calc.html (20 Ko), draw.html, batch.html, documents.html, ai_images.html, et des how-to (howto_connect-chatgpt-tailscale, howto_setup-ollama-indexation, howto_setup-image-gallery, howto_setup-forge-images).
Points de vigilance
<hash>.tmp_ variable : ne jamais le figer dans un script
Le port par défaut est 8766, pas 8765
/api/config (écriture de configuration en HTTP) est désactivé par défaut : le laisser ainsi
L'extension embarque pysqlite3 compilé (_sqlite3.cp312-win_amd64.pyd) — l'installation est liée à Python 3.12 de LibreOffice
2. Lancement du serveur MCP
Depuis LibreOffice via le menu dédié (Outils → Nelson MCP → Démarrer le serveur), ou en ligne
Erreurs de commandela version précédente de cette page
La version antérieure de cette page avait été rédigée à partir d'une recherche web, avant installation. Corrections :
cfg.get("port") or 8766 dans modules/http/__init__.py)
python3 -m nelson_mcp --port 8765
Cette Lecommande serveurn'existe écoutepas sur localhost:8765.
3. Configuration dans Claude Code
Ajouter dans C:\Users\eliob\.claude.json (section mcpServers du projet concerné) :
"libreoffice": {
"type": "http",
"url": "http://localhost:8765/mcp"
}
Si— le serveur utiliseest embarqué dans soffice.bin
stdio
"libreoffice": {
"type": "stdio",
"command": "python3",
"args": ["-m", "nelson_mcp"]
}
.oxt4. Points à vérifiertélécharger lors« dedepuis lobehub »
lobehub est un annuaire ; la libreofficequazardous/nelson-mcp
netstatest -ano4.1 | findstr 87655. Alternative : libreoffice-mcp (KeithCu)
Si Nelson MCP pose problème,
libreoffice-mcp (OooDev
Sans objet une .oxt
"libreoffice": {
"type": "http",
"url": "http://localhost:2083"
}