MCP Notmuch Sendmail

local-only server

The server can only run on the client’s local machine because it depends on local resources.

Integrations

  • Uses LaTeX-inspired styling for email formatting, allowing users to create beautiful, professionally formatted emails with LaTeX aesthetics.

  • Supports composing email content in Markdown format, which is then converted to HTML for sending styled emails with inline images.

MCP Notmuch Sendmail

状态:运行良好,日常使用中没有任何已知错误。

状态2:我刚刚把这个包添加到PyPI,并更新了使用说明。如有任何问题,请报告 :)

让 Claude 成为您的电子邮件助手!MCP Notmuch Sendmail 将 Claude Desktop 连接到您的 notmuch 电子邮件数据库,使其能够:

  • 搜索和浏览您的电子邮件主题
  • 以干净的文本格式查看对话
  • 使用 markdown 撰写新电子邮件
  • 使用智能重复数据删除功能回复主题引用内容
  • 使用 LaTeX 风格的样式创建精美的电子邮件
  • 通过运行配置的脚本来同步您的电子邮件数据库

使用 html2text 呈现 HTML 电子邮件,使用 markdown-it 撰写带有内嵌图像的丰富 HTML 电子邮件。

安装

确保已安装 uv:

# Install uv if you haven't already curl -LsSf https://astral.sh/uv/install.sh | sh

与 Claude Desktop 一起使用

添加到您的claude_desktop_config.json

{ "mcpServers": { "email": { "command": "uvx", "args": ["--from", "mcp-notmuch-sendmail==2025.04.09.174710", "--python", "3.10", "--refresh", "mcp-notmuch-sendmail"] "env": { "NOTMUCH_DATABASE_PATH": "/path/to/your/notmuch/db", "NOTMUCH_REPLY_SEPARATORS": "Pipe|Separated|Phrases", "SENDMAIL_FROM_EMAIL": "your.email@example.com", "SENDMAIL_EMAIL_SIGNATURE_HTML": "<p>Optional HTML signature</p>", "NOTMUCH_SYNC_SCRIPT": "/path/to/your/sync/script.sh", "LOG_FILE_PATH": "/path/to/log/file.log", "DRAFT_DIR": "/path/for/email/drafts" } } } }

环境变量

  • NOTMUCH_DATABASE_PATH :notmuch 数据库的路径(必需)
  • NOTMUCH_REPLY_SEPARATORS :用管道分隔的文本标记列表 - 保留电子邮件内容,直到以任何这些标记开头的第一行,删除引用的回复(必需)
  • SENDMAIL_FROM_EMAIL :发件人:字段的电子邮件地址(必填)
  • SENDMAIL_EMAIL_SIGNATURE_HTML :附加到电子邮件的 HTML 签名(可选)
  • NOTMUCH_SYNC_SCRIPT :同步电子邮件脚本的路径(可选)
  • LOG_FILE_PATH :日志文件的路径(可选)
  • DRAFT_DIR :存储电子邮件草稿的目录(可选,默认为 /tmp/mcp-notmuch-sendmail)

API

工具

  • 查找电子邮件线程
    • 在 notmuch 数据库中查找电子邮件主题
    • 输入: notmuch_search_query (字符串)
    • 返回以制表符分隔的线程列表,格式为:GXP3
  • 查看电子邮件线程
    • 查看电子邮件线程的所有消息
    • 输入: thread_id (字符串)
    • 使用 HTML->文本转换 GXP4 以文本格式返回对话
  • 撰写新电子邮件
    • 使用 Markdown 撰写新的邮件草稿。如果设置了 SENDMAIL_EMAIL_SIGNATURE_HTML,则会自动添加签名。
    • 输入:
      • subject (字符串):电子邮件主题
      • body_as_markdown (字符串): markdown 格式的电子邮件正文
      • to (列表):收件人电子邮件地址
      • cc (列表,可选):抄送收件人
      • bcc (列表,可选):密件抄送收件人
    • 创建草稿文件并返回路径:GXP5
  • 撰写电子邮件回复
    • 撰写对现有电子邮件主题的回复。如果设置了 SENDMAIL_EMAIL_SIGNATURE_HTML,则会自动添加签名。
    • 输入:
      • thread_id (string): 要回复的线程 ID
      • subject (字符串):电子邮件主题
      • body_as_markdown (字符串): markdown 格式的电子邮件正文
      • to (列表):收件人电子邮件地址
      • cc (列表,可选):抄送收件人
      • bcc (列表,可选):密件抄送收件人
    • 创建草稿文件并返回路径:GXP6
  • 发送电子邮件
    • 发送撰写的电子邮件草稿
    • 无需输入
    • 返回成功/错误消息
  • 同步电子邮件
    • 通过运行配置的脚本同步电子邮件
    • 无需输入
    • 返回脚本的输出,包括 stdout 和 stderr
    • 仅当配置了 NOTMUCH_SYNC_SCRIPT 时才可用

回复分隔符

NOTMUCH_REPLY_SEPARATORS环境变量控制电子邮件回复检测。查看主题时,每封电子邮件的内容都会从以任何已配置的分隔符开头的第一行开始截断。这有效地删除了引用的回复,同时保留了新的内容。

以下是针对不同语言的推荐分隔符模式:

英语

On|wrote:|From:|Sent:|To:|Subject:|Date:|Cc:|Best regards|Kind Regards|Thanks,|Thank you,|Best,|All the best|regards,|Sent from my|Get Outlook for|CAUTION:|Disclaimer:|Warning:|Confidential:|CONFIDENTIALITY:|---------- Original Message ----------

德语

Am.*schrieb|Von:|Gesendet|An:|Betreff:|Datum:|Cc:|Organisation:|Mit freundlichen Grüßen|Beste Grüße|Viele Grüße|Hinweis:|Achtung:|Gesendet von

法语

Le.*a écrit|De |Envoyé |À |Objet |Cc |cordialement|salutations|bonne réception|bonne journée|Envoyé depuis

荷兰语

Op.*schreef:|Van:|Verzonden|Aan:|Onderwerp:|Datum:|Cc:|Met vriendelijke groet|Hartelijke groeten|Bedankt,|Dank u,|Verzonden vanaf

意大利语

Il.*ha scritto:|Da:|Inviato|A:|Oggetto:|Data:|Cc:|Cordiali saluti|Inviato da

注意:使用 |(竖线)分隔模式。这些是从常用电子邮件客户端派生的简化模式 - 您可能需要根据具体需求进行调整。

贡献

热烈欢迎大家贡献代码!无论是错误报告、功能请求、文档改进还是代码贡献,所有意见都弥足珍贵。欢迎:

  • 打开问题报告错误或建议功能
  • 提交带有改进的拉取请求
  • 增强文档或分享您的使用示例
  • 提出问题并分享您的经验

我们的目标是让 Claude 的电子邮件管理变得更好,您的见解和贡献有助于实现这一目标。

致谢

该项目建立在其他人的出色工作基础之上:

执照

Mozilla 公共许可证版本 2.0

我的其他法学硕士项目

  • MCP Alchemy - 将 Claude Desktop 连接到数据库以探索模式和运行 SQL。
  • MCP Redmine - 让 Claude Desktop 管理您的 Redmine 项目和问题。
  • Diffpilot - 具有文件分组和标记功能的多列 git diff 查看器。
  • Claude 本地文件- 访问 Claude Desktop 工件中的本地文件。
-
security - not tested
A
license - permissive license
-
quality - not tested

一个电子邮件助手服务器,将 Claude Desktop 连接到 notmuch 电子邮件数据库,允许用户搜索电子邮件、查看线程、撰写新消息以及使用 markdown 格式回复对话。

  1. Installation
    1. Usage with Claude Desktop
      1. Environment Variables
        1. API
          1. Tools
        2. Reply Separators
          1. English
          2. German
          3. French
          4. Dutch
          5. Italian
        3. Contributing
          1. Acknowledgments
            1. License
              1. My Other LLM Projects
                ID: vzg5i81fa1