Skip to main content

LibreOffice MCP

quellesÉtat sontau les 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 le Model 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 MCP pour0.7.1, LibreOffice permettent26.2.5.2, àserveur uneHTTP IAactif desur 127.0.0.1:8766, lire,110 écrire, modifier et formateroutils desexposés, documentsMCP Writernelson (ODT). Tu peux demander à l'IA d'ajouter des titres, des paragraphes, des tableaux, des images, ou d'effectuer des recherches/remplacements automatiquesenregistré dans leClaude texte.Code Par exemple, un outil comme libreoffice-mcp ou Nelson MCP expose ces fonctionnalités via des appels d'outils standardisés. Contrôlerpour le sensprojet duD:\Syncthing\Jux_univers\Claude-pcelio+jux. texte

    Cette :page L'IAa peutété analyserréécrite le contenu, 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 de cré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 workflows

          Automatiser des workflows : Tu peux configurer des presets (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 comme Claude 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'outils

            libreoffice-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 techniques

              LibreOffice 24.2 ou supérieur (pour la plupart des serveurs MCP). Installation d'une extension LibreOffice (ex : libreoffice-mcp-extension.oxt) ou d'un serveur MCP local (Python/Node.js). Connexion via socket (port 2083 ou 8765 selon les outils) ou HTTP pour les appels d'API.

              7. Cas d'usage avancés

                Veille territoriale : Tu peux combiner MCP avec des alertes (ex : Google Alerts) et une IA pour filtrer, classer et résumer des 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 de tesl'installation donnéesréelle. (exLa :version Kavita)précédente reposait sur une recherche web et contenait plusieurs erreurs — voir la section « Erreurs de la version précédente » en utilisantfin desde templatespage. Writer
                ou Calc.

                Comment démarrer ?

                  Installe un serveur MCP : Par exemple,

                  Nelson MCP

                  ou— libreoffice-mcp. Configure ton client IA (Claude, Cursor, etc.) pour qu'il se connecte au serveur MCP. Ouvre un documentpiloter LibreOffice etdepuis demandeClaude à ton IA de l'éditer ou de créer du contenu.
                  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écharger

                    pas 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)

                  lobehub.com/mcp/quazardous-nelson-mcp

                  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)

                  Dans LibreOffice
                  :

                  Installation

                  1. Extension

                  Outils → Gestionnaire des extensions → Ajouter

                  → sélectionner 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

                  Menu Nelson → Start HTTP Server (le libellé bascule en « Stop HTTP Server » quand il tourne, avec icône d'état vert/orange/gris). Le serveur peut aussi démarrer automatiquement si http.enabled est coché dans les options.

                  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

                  Méthode Chemin Rôle POST/GET/DELETE /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

                    Galerie d'images indexée depuis un dossier, avec recherche plein texte et métadonnées XMP en fichier sidecar Galerie de documents indexée depuis un dossier Génération et édition d'images (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) :

                    Réglage Défaut Effet 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>.

                    Preset Contenu 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 Redémarrer.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

                        Un document doit être ouvert dans LibreOffice pour la plupart des outils ; les outils sont filtrés selon le type de document actif (writer / calc / draw) Fermer LibreOffice coupe le MCP — Claude Code affichera le serveur comme déconnecté Le dossier d'installation contient un <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 :

                        Ancienne affirmation Réalité vérifiée Port 8765 Port 8766 (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

                        Variante de configuration stdio plutôtInexistante que— HTTP :uniquement
                        
                        
                        "libreoffice": {
                          "type": "stdio",
                          "command": "python3",
                          "args": ["-m", "nelson_mcp"]
                        }
                        .oxt
                        

                        4. Points à vérifiertélécharger lors« dedepuis lobehub »

                        lobehub est un annuaire ; la misesource enest placele
                          Version LibreOffice :dépôt libreofficequazardous/nelson-mcp --version →doit êtreLibreOffice ≥ 24.2 Portrequis 8765La libredépendance :déclarée netstatest -ano4.1 | findstr 8765 (Windows) Un document; LibreOffice doit26.2.5.2 êtreen ouvertplace avant delancer une requête MCP (le serveur nécessite un document actif) Tester avec une lecture simple du document ouvert pour valider la connexion

                          5. Alternative : libreoffice-mcp (KeithCu)

                          Si Nelson MCP pose problème,

                          Alternatives libreoffice-mcp (github.com/KeithCu/writeragent)KeithCu) exposeport 2083, OooDev Sans objet une APIfois HTTPNelson viaen uneplace extension .oxt sur le port 2083 :
                          "libreoffice": {
                            "type": "http",
                            "url": "http://localhost:2083"
                          }