
harshithb3304/libre-office-mcp
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
A cross-platform LibreOffice MCP server for AI assistants. Create, read, edit, and automate Writer documents, Calc spreadsheets, and Impress presentations.
Обзор
An MCP server that lets AI assistants (Claude Code, Claude Desktop, and any other MCP client) : text documents, spreadsheets and presentations — no GUI, no copy-paste. That's it. The first build takes a few minutes (it downloads LibreOffice); after that the server starts in seconds. Your files live in the workspace/ folder next to docker-compose.yml (see The workspace folder). Create notes.docx with the heading "Groceries" and a bullet list of milk, eggs and bread. Then read the file back and tell me what is in it. It writes the document (writer_add_content), reads it back (writer_get_text), and workspace/notes.docx appears on your computer. Spreadsheets and slides work the same way: "Make budget.xlsx with 4 months of income and expenses and a chart", or "Make a 3-slide deck about our Q3 plan and export it to PDF." Any client that accepts an MCP server URL works. In the standard MCP JSON: (Some clients also want "type": "http" next to the url.
README
Показан фрагмент оригинального README. Открыть оригинал.
LibreOffice MCP
An MCP server that lets AI assistants (Claude Code, Claude Desktop, and any other MCP client) create, read and edit documents with LibreOffice: text documents, spreadsheets and presentations — no GUI, no copy-paste.
| Tools | |
|---|---|
Writer — text documents (.odt .docx .rtf .txt) |
✅ 55 |
Calc — spreadsheets (.ods .xlsx .csv) |
✅ 51 |
Impress — presentations (.odp .pptx) |
✅ 42 |
| Create, info, copy, convert / export to PDF, batch edits | ✅ 8 |
Quick start
All you need is Docker. Three commands:
git clone https://github.com/harshithb3304/libre-office-mcp.git
cd libre-office-mcp
docker compose up -d --build # builds the image and starts the server
claude mcp add --transport http libreoffice http://localhost:8000/mcp
That’s it. Every tool is enabled out of the box. The first build takes a few minutes (it
downloads LibreOffice); after that the server starts in seconds. Your files live in the
workspace/ folder next to docker-compose.yml (see The workspace folder).
Try it — one write, one read
Ask your AI:
Create
notes.docxwith the heading “Groceries” and a bullet list of milk, eggs and bread. Then read the file back and tell me what is in it.
It writes the document (writer_add_content), reads it back (writer_get_text), and
workspace/notes.docx appears on your computer. Spreadsheets and slides work the same way:
“Make budget.xlsx with 4 months of income and expenses and a chart”, or “Make a 3-slide
deck about our Q3 plan and export it to PDF.”
Using another MCP client
Any client that accepts an MCP server URL works. In the standard MCP JSON:
{
"mcpServers": {
"libreoffice": { "url": "http://localhost:8000/mcp" }
}
}
(Some clients also want "type": "http" next to the url. Where the file lives depends on the
client — Claude Desktop, Cursor, Windsurf, Cline and others each document it. A few clients, e.g.
VS Code, name the top-level key servers instead of mcpServers.)
Prefer no background server?
Let your MCP client start the container itself instead. Build the image once, then give the client this command (standard MCP JSON; on Windows double the backslashes in the folder path):
docker build -t libreoffice-mcp .
{
"mcpServers": {
"libreoffice": {
"command": "docker",
"args": ["run", "-i", "--rm", "-v", "/path/to/my-workspace:/data", "libreoffice-mcp"]
}
}
}
For Claude Code: claude mcp add libreoffice -- docker run -i --rm -v /path/to/my-workspace:/data libreoffice-mcp.
-i is required; do not add -t.
Everyday commands
| Task | Command |
|---|---|
| See logs | docker compose logs -f |
| Stop | docker compose down |
| Start again | docker compose up -d |
Установка
docker run -i --rm -v /path/to/my-workspace:/data libreoffice-mcpКонфигурация
{
"mcpServers": {
"libreoffice": { "url": "http://localhost:8000/mcp" }
}
}