MCP 邮件通知服务

by fantasy-lotus

2 stars
426 downloads
Not rated
GitHub

About

基于Typescript实现的Notify MCP Server,支持Docker一键部署到remote|local

Details

Author
fantasy-lotus
GitHub stars
2
Downloads
426
Categories
Communication

- 接入 MCP Client 通过 MCP 协议发送邮件通知。
- 兼容旧 SSE 和新 Streamable HTTP 协议通信。
- 支持 Docker 一键部署,使用多阶段构建和 slim Node.js 环境。
- 通过 HTTP 而非 Stdio 进行远程或本地服务通信。

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name MCP 邮件通知服务
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

1. 安装依赖:npm install。2. 在项目根目录创建 .env 文件,配置 SMTP_USER、SMTP_PASS、SMTP_SERVICE、SMTP_HOST 等变量。3. 构建并启动:npm run build && npm start,或直接 npx ts-node src/index.ts。Docker 部署可构建镜像:docker build -t yourname/mcp-email-docker .,然后运行容器:docker run -p 8080:8080 -e SMTP_USER=... yourname/mcp-email-docker

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "mcp \u90ae\u4ef6\u901a\u77e5\u670d\u52a1": {
            "mcp_email_ts": {
                "command": "npx",
                "args": [
                    "ts-node",
                    "src/index.ts"
                ]
            }
        }
    }
}

McpServers

{
    "mcp_email_ts": {
        "command": "npx",
        "args": [
            "ts-node",
            "src/index.ts"
        ]
    }
}

MseeP.ai Security Assessment Badge

mcp-email-docker

基于 Model Context Protocol (MCP) 的邮件通知服务,支持通过Streamable HTTP, SSE(Server-Sent Events)与客户端通信,并通过 SMTP 服务发送通知邮件。已支持 Docker 镜像部署。
本项目也适合作为新手上手学习MCP Server的学习项目

---

功能特性

- 支持接入MCP Client通过 MCP 协议发送邮件或其他通知
- ⭐️ 兼容旧SSE和新Streamable HTTP协议
- ⭐️ 支持 Docker 一键部署到remote or local,通过Http而不是Stdio通信
- Dockerfile使用多阶段构建以及slim nodejs环境降低image打包大小

---

目录结构

.
├── package.json        # 项目依赖与脚本
├── Dockerfile          # Docker 镜像构建文件
├──.dockerignore        # Docker build忽略设置
├── tsconfig.json       # TypeScript 配置
├── src/
│   ├── index.ts        # 服务器入口
│   ├── mcp/
│   │   └── notify.ts   # MCP 通知服务实现
│   └── tool/
│       └── notify.ts   # 邮件发送工具
└── .env.example        # 环境变量示例

---

快速开始

1. 安装依赖

npm install

2. 配置环境变量

在项目根目录下创建 .env 文件,内容示例:

SMTP_USER=你的邮箱账号
SMTP_PASS=你的邮箱SMTP授权码
SMTP_SERVICE=
SMTP_HOST
PORT=

3. 本地开发启动

npm run build
npm start

或直接用 ts-node:

npx ts-node src/index.ts

---

Docker 部署

1. 构建镜像

docker build -t yourname/mcp-email-docker .

2. 运行容器

docker run -p 8080:8080 \
  -e SMTP_USER=你的邮箱账号 \
  -e SMTP_PASS=你的邮箱SMTP授权码 \
  -e SMTP_SERVICE=QQ \
  -e SMTP_HOST=smtp.qq.com \
  yourname/mcp-email-docker

或使用 .env 文件:

docker run --env-file .env -p 8080:8080 yourname/mcp-email-docker

---

API 说明

- GET /sse
建立 SSE 连接,用于实时消息推送。

- POST /messages?sessionId=xxx
客户端发送消息接口,需携带 sessionId

- POST /mcp
通过 Streamable HTTP协议连接mcp server

---

MCP 邮件通知参数

- method:通知方式,目前仅基于nodemailer实现 "email"
- to:收件人邮箱
- content:邮件内容

---

依赖

- @modelcontextprotocol/sdk
- nodemailer
- zod
- dotenv
- express

---

License

MIT

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.