发送到Kindle MCP服务器
一个模型上下文协议(MCP)服务器,允许Claude Desktop将文档直接发送到您的Kindle电子阅读器。将文本或降价内容转换为格式精美的EPUB文件,并立即将其发送到您的Kindle库。
特性
- 📚 将文本和markdown转换为EPUB格式
- 📧 通过电子邮件将文档直接发送到Kindle
- 📖 从标记标题(H1、H2等)自动创建章节
- 🎨 使用CSS样式正确格式化,以获得最佳阅读效果
- ⚡ 与Claude Desktop快速轻松集成
- 🔒 使用环境变量进行安全电子邮件配置
- 👤 通过环境变量自定义作者姓名
先决条件
- Python 3.10或更高版本
- Kindle电子阅读器或Kindle应用程序
- 具有SMTP访问权限的电子邮件帐户(建议使用Gmail)
- 您的Kindle电子邮件地址(在亚马逊帐户设置中找到)
安装
1.克隆或下载此存储库
cd ~/path/to/your/projects
git clone send-to-kindle-mcp
cd send-to-kindle-mcp2.创建虚拟环境并安装依赖项
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -e .3.配置您的凭据
选项A:创建 .env 文件(用于本地测试)
复制示例环境文件并填写您的详细信息:
cp .env.example .env编辑 .env 您的信息:
# For Gmail users:
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASSWORD=your-app-password # See note below
# Your Kindle email address
KINDLE_EMAIL=your-kindle@kindle.com
# Sender email (usually same as SMTP_USER)
FROM_EMAIL=your-email@gmail.com
# Author name (optional - defaults to "Claude" if not set)
AUTHOR_NAME=Your Name备注:The .env 文件对于本地测试很有用(例如,使用 test_smtp.py)但是 Claude Desktop不会自动加载 .env 文件。您还必须在Claude Desktop配置文件中设置这些值(请参阅步骤4)。
重要提示:
- Gmail用户:您必须使用 应用程序密码,不是您的常规Gmail密码
- Kindle电子邮件:在您的亚马逊帐户中的“管理您的内容和设备”下找到此内容→ “首选项”→ “个人文档设置”
- 认可发件人:确保在亚马逊设置中将您的发送电子邮件地址添加到Kindle的批准电子邮件列表中
4.配置克劳德桌面
将服务器添加到Claude Desktop配置文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"send-to-kindle": {
"command": "/path/to/send-to-kindle-mcp/venv/bin/python",
"args": ["/path/to/send-to-kindle-mcp/server.py"],
"env": {
"SMTP_HOST": "smtp.gmail.com",
"SMTP_PORT": "587",
"SMTP_USER": "your-email@gmail.com",
"SMTP_PASSWORD": "your-app-password",
"KINDLE_EMAIL": "your-kindle@kindle.com",
"FROM_EMAIL": "your-email@gmail.com",
"AUTHOR_NAME": "Your Name"
}
}
}
}替换以下内容:
/path/to/send-to-kindle-mcp此目录的实际路径- 中的所有占位符值
env带有您实际凭证的部分
备注:如果您创建了 .env 在步骤3中,您可以将这些相同的值复制到 env 上面的部分。必须在此处设置这些值,Claude Desktop才能使用它们。
5.重新启动克劳德桌面
退出并重新启动Claude Desktop以使更改生效。
用法
配置后,您可以要求Claude将文档发送到您的Kindle:
"Please send this research paper to my Kindle"
"Create a summary of this conversation and send it to my Kindle as 'Meeting Notes'"
"Convert this markdown document to EPUB and send to Kindle"克劳德将使用 send_to_kindle 工具用于:
- 询问标题和作者(如果没有提供)
- 将您的内容转换为具有章节导航的正确格式的EPUB
- 通过电子邮件发送到您的Kindle地址
- 确认成功交付
第章导航:该工具自动检测markdown标题(H1、H2等),并为每个主要部分创建单独的章节。这使得使用目录在Kindle上浏览较长的文档变得容易。
文档将在几分钟内出现在您的Kindle库中。
故障排除
查看错误日志
服务器记录详细信息以帮助调试问题。要在Claude Desktop中查看日志,请执行以下操作:
macOS:
- 打开控制台.app(应用程序→ 公用事业→ 控制台)
- 按“Claude”筛选或搜索“send to kindle”
- 查找带有时间戳的日志消息
视窗:
- 检查克劳德桌面登录
%APPDATA%\Claude\logs\ - 或在Windows事件查看器中查看日志
日志将显示:
- 尝试连接到SMTP服务器
- 身份验证步骤和错误
- 带有故障排除提示的详细错误消息
- 配置验证问题
电子邮件未发送
- 最常见的问题:Claude Desktop配置文件中未设置环境变量。记得:
.envClaude Desktop不会自动加载文件。您必须在中设置所有变量claude_desktop_config.json文件。 - 验证Claude Desktop配置文件中的SMTP凭据是否正确
- 对于Gmail,请确保您使用的是应用程序密码,而不是常规密码
- 使用测试您的连接
python test_smtp.py验证凭据是否有效 - 检查日志(见上文)以了解具体的错误消息
- 更改配置后重新启动Claude Desktop
文档未出现在Kindle上
- 验证您的Kindle电子邮件地址是否正确
- 检查您的亚马逊批准电子邮件列表是否包括您的发送地址
- 查看您的亚马逊“个人文档”部分,查看是否已收到
- 检查您的垃圾邮件文件夹
导入错误
# Make sure you're in the virtual environment
source venv/bin/activate
# Reinstall dependencies
pip install -e .发展
正在测试SMTP连接
独立于Claude Desktop测试SMTP配置:
source venv/bin/activate
python test_smtp.py这将在与Claude Desktop一起使用之前验证您的凭据和连接是否正常工作。
独立运行服务器
要独立运行服务器进行测试,请执行以下操作:
source venv/bin/activate
python server.py安全说明
- 永远不要承诺你的
.env归档或公开您的凭据 - 将应用程序密码用于支持它们的电子邮件服务
- 保持Kindle批准的发件人列表仅限于受信任的地址
许可证
MIT许可证-可以根据需要自由修改和分发。
贡献
欢迎投稿!请随时提交pull请求或打开bug和功能请求的问题。
