kaeru
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@kaeruconvert this csv to xlsx"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
kaeru
Convert anything. Nothing leaves your machine. One tool your AI agents and you both use.
npx @linno-inc/kaeru --doctor # what can this machine convert?Verified, not claimed
Every conversion listed below was actually run, one by one, on real machines — and the output was re-opened with a second tool to prove it isn't empty. The test suite ships with the code, so you can re-run the count yourself.
OS | Conversions offered | Actually passed | Tools installed |
macOS 26 | 4,778 | 4,752 / 4,752 | all |
Windows 11 | 4,062 | 3,708 / 3,952 | ImageMagick, pandoc |
Debian (Linux) | 3,426 | 3,218 / 3,329 | ImageMagick, pandoc |
npm test # re-run every combination on your machine
npm run list # print the conversion table (this is what the numbers count)Numbers differ per machine on purpose — see below.
Related MCP server: Text-Toolkit
The table adapts to your machine
kaeru doesn't bundle converters. It finds the ones you already have — and asks each one what its version actually supports. A conversion that can't work is never offered.
$ npx @linno-inc/kaeru --doctor
This machine can do: 4,062 conversions
Tools:
✓ magick C:\Program Files\ImageMagick-7.1.2-Q16-HDRI\magick.EXE
✗ ffmpeg not found
...
Install these to unlock more:
ffmpeg +468 conversions winget install Gyan.FFmpegNothing installed? Nothing breaks — you get 0 conversions and a list of one-line installs.
Two doors, one engine
Door | For | Start it |
MCP server | your AI agents | add one line to |
Local web page | you |
|
Both call the same code, so an agent and a human can never disagree about what's possible.
For agents (MCP)
{ "mcpServers": { "kaeru": { "command": "npx", "args": ["-y", "@linno-inc/kaeru"] } } }One tool, convert. Ask for something impossible and it replies with what is possible
from that input — or which tool to install.
For humans
npm run ui opens a single page on 127.0.0.1 only. Drop a file, pick a target, save the
result. It does not stay running — Ctrl-C and it's gone. No Docker, no daemon, no account.
What it converts
Images · video · audio · documents (md, html, tex, docx, odt, epub, and ~30 more) · Office and spreadsheets · PDF · 3D models · Parquet.
PDFs can be merged, split, compressed and rasterised. Images, audio and PDFs can be shrunk without changing format. Pass a URL to pull from video sites.
CJK encodings are detected automatically (a Shift_JIS CSV from Excel just works).
Every result comes with its receipt
Converted: csv>xlsx
Output: /path/to/data.xlsx
Tool: soffice
Command: soffice --headless --convert-to xlsx --outdir /tmp/... /path/to/data.csv
Took: 3,512 msYou can always see which program touched your file, and repeat it by hand.
Install the converters
kaeru calls these; install the ones you need (or none, and add them later).
brew install imagemagick ffmpeg pandoc weasyprint qpdf img2pdf yt-dlp assimp duckdb ghostscript
brew install --cask libreofficewinget install ImageMagick.ImageMagick Gyan.FFmpeg JohnMacFarlane.Pandoc QPDF.QPDF `
yt-dlp.yt-dlp Assimp.Assimp DuckDB.cli ArtifexSoftware.GhostScript TheDocumentFoundation.LibreOffice
pip install weasyprint img2pdfsudo apt install imagemagick ffmpeg pandoc qpdf img2pdf yt-dlp assimp-utils ghostscript libreoffice
pip install weasyprintPrivacy and security
Files are processed by local programs. kaeru makes no network requests (except when you explicitly pass a video-site URL).
The web page binds to
127.0.0.1, rejects non-localhostHostheaders, and hands results back by an unguessable id.Existing files are never overwritten unless you ask for it.
No telemetry. Ever. Not anonymous, not opt-out — none.
Three independent models reviewed the source on 2026-08-18; every exploitable finding was fixed the same day. One known risk is not fixed: converting untrusted HTML or SVG can embed local files in the output. Details, severities and mitigations: SECURITY.md.
Tests
Command | What it checks |
| every listed conversion actually runs, output re-opens |
| images round-trip pixel-for-pixel; text survives |
| documents keep headings, tables, lists, emphasis |
| 12 writing systems keep their characters |
| tool lookup is correct for macOS / Windows / Linux |
Known gaps are written down, not hidden — see docs/.
Support
Issues are welcome. This is a one-person project: no response time is promised. For a bundled installer or a support contract, see the bottom of this file.
License
MIT. The converters it calls have their own licenses.
Need this installed for a team, or with a support contract? Open an issue titled
commercial and I'll get back to you.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityBmaintenanceMCP server for seamless document format conversion using Pandoc, supporting Markdown, HTML, PDF, DOCX (.docx), csv and more.1576MIT
- AlicenseCqualityDmaintenanceAn MCP server that provides text conversion, formatting, and analysis functions, which can be directly integrated into the development workflow.432Apache 2.0
- AlicenseNot gradedqualityAmaintenanceMCP server for converting various file formats (PDF, DOCX, images, audio, etc.) to Markdown using Microsoft MarkItDown, with support for large files and Cyrillic text.1MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for local file conversion, analysis, and image processing across 44 formats with 7 tools, all processed locally.1MIT
Related MCP Connectors
MCP server for the FFmpeg Micro video transcoding API — create, monitor, download transcodes.
Conformance checker for MCP servers. Free, no key, verdicts recomputable and re-measured daily.
An MCP server for deep research or task groups
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/NOGUCHILin/kaeru'
If you have feedback or need assistance with the MCP directory API, please join our Discord server