使用说明

项目简介

SendGrid MCP服务器是一个基于Model Context Protocol (MCP) 构建的应用后端,它充当LLM客户端和SendGrid邮件营销服务之间的桥梁。通过此服务器,LLM客户端可以利用SendGrid强大的API功能,实现邮件发送、联系人管理、列表管理和模板管理等任务。该服务器旨在以标准化的MCP协议与LLM客户端通信,简化LLM应用与外部邮件服务的集成过程。

主要功能点

  • 联系人管理: 支持列出、添加和删除联系人,以及获取列表中的联系人。
  • 列表管理: 支持创建、列出、删除联系人列表,以及向列表添加或从中移除联系人。
  • 邮件发送: 支持发送单封邮件和批量邮件(通过Single Sends API发送到列表),可以使用动态模板。
  • 模板管理: 支持动态邮件模板的创建、列出、获取和删除。
  • 数据分析: 支持获取SendGrid邮件统计数据。
  • 邮箱验证: 支持验证邮箱地址的有效性。
  • 账户管理: 支持列出已验证的发件人和退订组。

安装步骤

  1. 克隆仓库
    git clone https://github.com/Garoth/sendgrid-mcp.git
    cd sendgrid-mcp
  2. 安装依赖
    npm install
  3. 配置SendGrid API Key
    • 登录您的SendGrid账户。
    • 进入 "Settings" -> "API Keys"。
    • 创建一个新的API Key,并授予 "Full Access" 权限。
    • 将API Key保存备用。
  4. 复制环境变量示例文件
    cp .env.example .env
  5. 编辑.env文件 打开 '.env' 文件,并将您的SendGrid API Key填入 'SENDGRID_API_KEY' 变量。
    SENDGRID_API_KEY=your-api-key-here
  6. 构建项目
    npm run build

服务器配置

MCP客户端需要配置MCP服务器的启动命令及其参数,以便建立连接。以下是SendGrid MCP服务器的典型配置信息(JSON格式),请将其添加到您的MCP客户端的服务器配置中。

{
  "mcpServers": {
    "sendgrid": {
      "command": "node",
      "args": ["/path/to/sendgrid-mcp/build/index.js"],
      "env": {
        "SENDGRID_API_KEY": "your-api-key-here"
      },
      "disabled": false,
      "autoApprove": [
        "list_contacts",
        "list_contact_lists",
        "list_templates",
        "list_single_sends",
        "get_single_send",
        "list_verified_senders",
        "list_suppression_groups",
        "get_stats",
        "validate_email"
      ]
    }
  }
}

配置参数说明:

  • '"sendgrid"': 服务器名称,可以自定义。
  • '"command": "node"': 启动服务器的命令,这里使用Node.js。
  • '"args": ["/path/to/sendgrid-mcp/build/index.js"]': 启动命令的参数,指向编译后的服务器入口文件 'index.js' 的路径。请将 '/path/to/sendgrid-mcp' 替换为SendGrid MCP服务器在您本地文件系统中的实际路径。
  • '"env": {"SENDGRID_API_KEY": "your-api-key-here"}': 设置环境变量,'SENDGRID_API_KEY' 用于存储您的SendGrid API Key。请将 '"your-api-key-here"' 替换为您在安装步骤中获取的SendGrid API Key。
  • '"disabled": false': 设置为 'false' 表示启用该服务器。
  • '"autoApprove": [...]': 自动批准执行的工具列表,列表中包含的工具在被LLM客户端调用时无需用户手动批准即可自动执行。请注意,修改数据的工具(如发送邮件、删除联系人等)默认未包含在 'autoApprove' 列表中,以确保操作安全性。

基本使用方法

  1. 启动SendGrid MCP服务器: 在安装目录下,使用命令 'npm run start' 启动服务器。服务器将在stdio上运行,并等待MCP客户端的连接和请求。
  2. 配置MCP客户端: 在您的MCP客户端(如Cline)中,添加上述服务器配置信息。确保配置中的 'command' 和 'args' 参数指向SendGrid MCP服务器的正确路径,并已正确设置 'SENDGRID_API_KEY' 环境变量。
  3. 通过LLM客户端调用工具: 在LLM应用中,您可以使用配置好的SendGrid MCP服务器提供的工具来操作SendGrid服务。例如,您可以指示LLM客户端调用 'send_email' 工具来发送邮件,或调用 'list_contacts' 工具来获取联系人列表。具体的工具调用方式取决于您的LLM客户端的接口和使用方法。请参考您的LLM客户端文档,了解如何与MCP服务器交互并调用其提供的工具。

重要提示:

  • 发送邮件到列表时,必须提供 'suppression_group_id' 或 'custom_unsubscribe_url' 以符合邮件法规。
  • 发件人邮箱地址必须在SendGrid中验证后才能用于发送邮件。
  • 所有模板均为动态模板,支持Handlebars语法。
  • 批量邮件操作使用Single Sends API,以提供更好的跟踪和管理功能。
  • SendGrid API具有最终一致性,数据更改可能不会立即生效。

信息

分类

商业系统