LibreOffice

by patrup

Not rated
GitHub

About

Provides tools and resources for interacting with LibreOffice documents.

Details

Author
patrup
Categories
Productivity

Setup

Install LibreOffice in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/patrup/mcp-libre

Follow the installation instructions in the repository README, then restart your MCP client.

1. LibreOffice Extension (NEW - Recommended!) 🎉

The most powerful and efficient way to use the MCP server:

# Build and install the LibreOffice extension cd plugin/ ./install.sh install # Test the extension ./install.sh test

- 10x Performance: Direct UNO API access (no subprocess overhead)
- Real-time Editing: Live document manipulation in open LibreOffice windows
- Native Integration: Appears in LibreOffice Tools menu
- Multi-document Support: Work with all open documents simultaneously
- Auto-start: Automatically starts with LibreOffice
- Advanced Features: Full access to LibreOffice formatting and capabilities

- The extension provides an HTTP API onhttp://localhost:8765
- Configure your AI assistant to use this endpoint
- Access controls viaTools > MCP Serverin LibreOffice
- Real-time document editing with instant visual feedback

For detailed plugin information, see](https://github.com/patrup/mcp-libre/blob/HEAD/docs/COMPLETE_SOLUTION.md)plugin/README.md.

./generate-config.sh claude # Creates ~/.config/claude/claude_desktop_config.json

Then restart Claude Desktop and start using LibreOffice commands:

- "Create a new Writer document and save it as project-report.odt"
- "Convert my document to PDF format"

./generate-config.sh mcp npx @srbhptl39/mcp-superassistant-proxy@latest --config ~/Documents/mcp/mcp.config.json # Server URL: http://localhost:3006
from mcp.shared.memory import create_connected_server_and_client_session from libremcp import mcp async with client_session(mcp._mcp_server) as client: result = await client.call_tool("create_document", { "path": "/tmp/test.odt", "doc_type": "writer", "content": "Hello, World!" })

- "Create a new Writer document with a project report"
- "Convert my ODT file to PDF format"
- "Search for documents containing 'budget' in my Documents folder"
- "Get statistics for my essay - how many words?"

from libremcp import create_document, read_document_text, convert_document # Create a document doc = create_document("/tmp/report.odt", "writer", "Project Report") # Read content content = read_document_text("/tmp/report.odt") print(f"Words: {content.word_count}") # Convert to PDF result = convert_document("/tmp/report.odt", "/tmp/report.pdf", "pdf")

- LibreOffice:.odt,.ods,.odp,.odg
- Microsoft Office:.doc,.docx,.xls,.xlsx,.ppt,.pptx
- Text:.txt,.rtf

- PDF:.pdf
- Microsoft Office:.docx,.xlsx,.pptx
- Web:.html,.htm
- Text:.txt
- LibreOffice:.odt,.ods,.odp,.odg
- Many others: 50+ formats supported by LibreOffice

# Install and test the plugin cd plugin/ ./install.sh install # Build and install extension ./install.sh test # Test functionality ./install.sh status # Check status ./install.sh interactive # Interactive testing mode
# Show system requirements and installation guides ./mcp-helper.sh requirements # Check dependencies and verify setup ./mcp-helper.sh check # Run built-in functionality tests ./mcp-helper.sh test # Interactive demo of all capabilities ./mcp-helper.sh demo # Test specific functionality directly uv run python libremcp.py --test

Generate personalized configuration files for Claude Desktop and/or Super Assistant:

# Generate both Claude Desktop and Super Assistant configs ./generate-config.sh # Generate only Claude Desktop config ./generate-config.sh claude # Generate only Super Assistant config ./generate-config.sh mcp # Generate Super Assistant config in custom location ./generate-config.sh mcp /path/to/custom/directory

This automatically creates configurations with your actual project paths:

- Claude Desktop:~/.config/claude/claude_desktop_config.json
- Super Assistant:~/Documents/mcp/mcp.config.json(or custom location)

export PYTHONPATH="/path/to/mcp-libre" export LIBREOFFICE_PATH="/usr/bin/libreoffice" # Optional

Editlibremcp.pyto modify document discovery locations:

search_paths = [ Path.home() / "Documents", Path.home() / "Desktop", Path("/custom/path"), Path.cwd() ]

- Local Execution: All operations run locally
- File Permissions: Limited to user's file access
- No Network: No external network dependencies
- Temporary Files: Automatically cleaned up

# Check LibreOffice installation libreoffice --version libreoffice --headless --help # Test conversion manually libreoffice --headless --convert-to pdf document.odt

- Java warnings are usually non-fatal
- Core functionality works without Java
- Install Java for full LibreOffice features

- Check file and directory permissions
- Ensure LibreOffice can access document paths
- Verify write permissions for output directories
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request

This project is licensed under the MIT License - see theLICENSEfile for details.

The MIT License is a permissive license that allows:

- ✅ Commercial use
- ✅ Modification
- ✅ Distribution
- ✅ Private use

For other license options, seeLICENSE_OPTIONS.md.

- MCP Specification:https://spec.modelcontextprotocol.io/
- LibreOffice:
https://www.libreoffice.org/
- FastMCP Framework:
https://github.com/modelcontextprotocol/python-sdk

- Issues: Use GitHub issues for bug reports
- Documentation: See thedocs/folder for detailed guides
- Examples: CheckEXAMPLES.mdfor usage patterns

LibreOffice MCP Server v0.1.0 - Bridging AI and Document Processing

The 1Password MCP server creates a bridge that allows MCP clients such as Codex and Kiro to manage your 1Password Environments with secure authorization prompts.

This is the 1st, easiest, and cheapest PPT, slides, presentation AI generation MCP Server in the world.

Persistent memory for any AI assistant. Zero token cost until recall. Stores memories in local SQLite, ranks by 6-factor scoring, returns results 79% smaller than JSON. Works with Claude, ChatGPT, Grok, Cursor, Windsurf, and any MCP client.

A MCP server that enables AI assistants to interact with Anki, the spaced repetition flashcard application.

Enables LLM clients to interact with macOS applications through AppleScript. Built using the @beyondbetter/bb-mcp-server library, this server provides safe, controlled execution of predefined scripts with optional support for arbitrary script execution.

An MCP server for WordPress plugin audits

Turn your AI assistant into a digital marketing hub that creates, organizes, and analyzes links and QR Codes on demand.

Connect AI clients to Cal.com scheduling through the Model Context Protocol using the hosted server at mcp.cal.com or a local instance.

Sync Calendars, Scheduling Links, AI Executive Scheduling Assistant, Unified Calendar

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.