AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
kindlemcp: an MCP server + CLI that sends documents (Markdown/PDF/EPUB) to your Kindle from Claude, Codex or Gemini. Runs locally; your credentials never leave your machine.
Developer toolsPythonGitHub @zhamanov-seabusOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Loading the full README. The saved excerpt is shown below.
Send any document straight to your Kindle, via Amazon's Send-to-Kindle
email service. Ships as both a command-line tool and an MCP server, so
you can send from a shell or straight from an AI assistant (Claude Desktop,
Claude Code, etc.).
Markdown is converted to EPUB with pandoc; PDF and EPUB files are sent as-is.
No secrets live in the code: the Gmail SMTP credential and your Kindle address
are read from the environment or from local config files that are gitignored.Read the full README ↗Send any document straight to your Kindle, via Amazon's Send-to-Kindle email service. Ships as both a command-line tool and an MCP server, so you can send from a shell or straight from an AI assistant (Claude Desktop, Claude Code, etc.).
Markdown is converted to EPUB with pandoc; PDF and EPUB files are sent as-is.
No secrets live in the code: the Gmail SMTP credential and your Kindle address are read from the environment or from local config files that are gitignored.
Long AI answers, articles and PDFs are tiring to read on a glaring screen. kindlemcp puts them on your Kindle, so you read on calm, eye-friendly e-ink instead of another bright display.
| The problem | The fix |
|---|---|
| Squinting at long text on a bright screen | The same content, on your Kindle |
kindlemcp runs on your own machine. Your AI assistant (or the CLI) calls it, it converts Markdown to a clean EPUB (PDF and EPUB pass through), and emails the document to your Kindle through your own Gmail. Your credentials never leave your computer.
pandoc (only needed for Markdown input) — brew install pandoc.
pandoc is an external binary, not a Python dependency.pipx install kindlemcp # installs `kindlemcp` (MCP) and `kindlemcp-send` (CLI)
# or run without installing:
uvx --from kindlemcp kindlemcp-send --title "Note" report.md
For local development from a checkout:
python -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
Both values can come from the environment or a config file. Copy the examples:
cp .env.example .env # fill in SMTP_URL
cp kindle.conf.example kindle.conf # fill in KINDLE_ADDR (or use ~/.kindle.conf)
.env:
SMTP_URL=smtp://you%40gmail.com:[email protected]:587
kindle.conf (or ~/.kindle.conf):
[email protected]
Both files are gitignored and never committed.
| Setting | Looked up in order |
|---|---|
SMTP_URL | env var → ./.env → ~/.kindle.env → ~/code/aicourse/.env (legacy) |
KINDLE_ADDR | env var → ./kindle.conf → ~/.kindle.conf |
# Markdown -> EPUB -> Kindle
kindlemcp-send --title "My Report" report.md
# PDF or EPUB, sent as-is
kindlemcp-send --title "My Report" report.pdf
# Markdown from stdin
echo "# Hello" | kindlemcp-send --title "Quick Note"
--title becomes the email subject, which Amazon uses as the document name on
the Kindle.
The old ./kindle_send.py script still works — it is now a thin shim that calls
the package.
The kindlemcp command runs an MCP server over stdio exposing a single tool:
send_to_kindle(title, content?, file_path?) — provide exactly one of
content (Markdown text, converted to EPUB) or file_path (an existing
.md / .pdf / .epub file). Returns a human-readable status string..mcp.jsonAdd this to your MCP client config (Claude Desktop claude_desktop_config.json,
or a project .mcp.json for Claude Code):
{
"mcpServers": {
"kindlemcp": {
"command": "uvx",
"args": ["--from", "kindlemcp", "kindlemcp"],
"env": {
"SMTP_URL": "smtp://you%40gmail.com:[email protected]:587",
"KINDLE_ADDR": "[email protected]"
}
}
}
}
If you installed with pipx, use the installed command directly instead:
{
"mcpServers": {
"kindlemcp": {
"command": "kindlemcp",
"env": {
"SMTP_URL": "smtp://you%40gmail.com:[email protected]:587",
"KINDLE_ADDR": "[email protected]"
}
}
}
}
You can omit the env block and rely on the config files above instead. Either
way, the Gmail sender in SMTP_URL must be on your Amazon approved-senders
list, and pandoc must be on PATH for Markdown conversion.
pip install -e ".[dev]"
python -m pytest # tests mock SMTP — they never send a real email
ruff check .
MIT