# Sendgrid邮件管理工具
## 基本信息
- Slug: `garoth-sendgrid-mcp`
- Source: modelscope
- Publisher: @Garoth/sendgrid-mcp
- Categories: marketing / communication / customer-support
- Hosted: No
- License: Unknown
- Source URL: https://www.modelscope.cn/mcp/servers/@Garoth/sendgrid-mcp
## 简介
提供了一个通过SendGrid的API管理电子邮件营销、联系人列表、动态模板和电子邮件分析的接口。
## 安装提示

```bash
#### 添加联系人 向您的 SendGrid 营销联系人中添加一个联系人。 ```typescript { email: string; // Required: Contact email address first_name?: string; // Optional: Contact first name last_name?: string; // Optional: Contact last name custom_fields?: object; // Optional: Custom field values } ``` #### 删除联系人 从您的 SendGrid 账户中删除联系人。 ```typescript { emails: string[]; // Required: Array of email addresses to delete } ``` #### 根据列表获取联系人 获取 SendGrid 列表中的所有联系人。 ```typescript { list_id: string; // Required: ID of the contact list } ``` ### 列表管理 #### 列出联系人列表 列出您的 SendGrid 账户中的所有联系人列表。 ```typescript // No parameters required ``` #### 创建联系人列表 在 SendGrid 中创建一个新的联系人列表。 ```typescript { name: string; // Required: Name of the contact list } ``` #### 删除列表 从 SendGrid 中删除一个联系人列表。 ```typescript { list_id: string; // Required: ID of the contact list to delete } ``` #### 将联系人添加到列表 将联系人添加到现有的 SendGrid 列表中。 ```typescript { list_id: string; // Required: ID of the contact list emails: string[]; // Required: Array of email addresses to add } ``` #### 从列表中移除联系人 从 SendGrid 列表中移除联系人而不删除它们。 ```typescript { list_id: string; // Required: ID of the contact list emails: string[]; // Required: Array of email addresses to remove } ``` ### 发送邮件 #### 发送邮件 使用 SendGrid 发送邮件。 ```typescript { to: string; // Required: Recipient email address subject: string; // Required: Email subject line text: string; // Required: Plain text content from: string; // Required: Verified sender email address html?: string; // Optional: HTML content template_id?: string; // Optional: Dynamic template ID dynamic_template_data?: object; // Optional: Template vari…
```

## MCP Server 详情

# SendGrid MCP 服务器

<img src="assets/sendgrid-logo.png" width="256" height="256" alt="SendGrid Logo" />

这是一个提供访问 SendGrid 营销 API 的模型上下文协议 (MCP) 服务器，用于电子邮件营销和联系人管理。[https://docs.sendgrid.com/api-reference/how-to-use-the-sendgrid-v3-api](https://docs.sendgrid.com/api-reference/how-to-use-the-sendgrid-v3-api)

## 演示

在这个演示中，我们要求 Cline SendGrid 代理创建一个新的联系人列表，将我的电子邮件添加到其中，自动生成一个关于 Lost Cities 事实的模板，并将邮件发送给列表中的联系人。在此过程中，Cline 会自动意识到它需要知道我们已验证的发件人以及要使用的退订组。一封漂亮的邮件被发送到了我的收件箱，让我对 Lost Cities 感到惊喜！

<img src="assets/1.png" width="760" alt="SendGrid MCP Demo 1" />
<img src="assets/2.png" width="760" alt="SendGrid MCP Demo 2" />
<img src="assets/3.png" width="760" alt="SendGrid MCP Demo 3" />
<img src="assets/4.png" width="760" alt="SendGrid MCP Demo 4" />
<img src="assets/5.png" width="760" alt="SendGrid MCP Demo 5" />
<img src="assets/6.png" width="760" alt="SendGrid MCP Demo 6" />
<img src="assets/7.png" width="760" alt="SendGrid MCP Demo 7" />
<img src="assets/8.png" width="760" alt="SendGrid MCP Demo 8" />
<img src="assets/9.png" width="760" alt="SendGrid MCP Demo 9" />

## 关于 API 支持的重要说明

该服务器仅支持 SendGrid 的 v3 APIs 并不提供对旧版功能的支持。这包括：

- 仅支持动态模板 - 不支持旧版模板
- 使用 Marketing API v3 进行所有联系人及联系人列表操作
- 使用 Single Sends API 发送批量邮件

## 可用工具

### 联系人管理

#### 列出联系人
列出您的 SendGrid 账户中的所有联系人。
```typescript
// No parameters required
```


#### 添加联系人
向您的 SendGrid 营销联系人中添加一个联系人。
```typescript
{
  email: string;           // Required: Contact email address
  first_name?: string;     // Optional: Contact first name
  last_name?: string;      // Optional: Contact last name
  custom_fields?: object;  // Optional: Custom field values
}
```


#### 删除联系人
从您的 SendGrid 账户中删除联系人。
```typescript
{
  emails: string[];  // Required: Array of email addresses to delete
}
```


#### 根据列表获取联系人
获取 SendGrid 列表中的所有联系人。
```typescript
{
  list_id: string;  // Required: ID of the contact list
}
```


### 列表管理

#### 列出联系人列表
列出您的 SendGrid 账户中的所有联系人列表。
```typescript
// No parameters required
```


#### 创建联系人列表
在 SendGrid 中创建一个新的联系人列表。
```typescript
{
  name: string;  // Required: Name of the contact list
}
```


#### 删除列表
从 SendGrid 中删除一个联系人列表。
```typescript
{
  list_id: string;  // Required: ID of the contact list to delete
}
```


#### 将联系人添加到列表
将联系人添加到现有的 SendGrid 列表中。
```typescript
{
  list_id: string;    // Required: ID of the contact list
  emails: string[];   // Required: Array of email addresses to add
}
```


#### 从列表中移除联系人
从 SendGrid 列表中移除联系人而不删除它们。
```typescript
{
  list_id: string;    // Required: ID of the contact list
  emails: string[];   // Required: Array of email addresses to remove
}
```


### 发送邮件

#### 发送邮件
使用 SendGrid 发送邮件。
```typescript
{
  to: string;                             // Required: Recipient email address
  subject: string;                        // Required: Email subject line
  text: string;                          // Required: Plain text content
  from: string;                          // Required: Verified sender email address
  html?: string;                         // Optional: HTML content
  template_id?: string;                  // Optional: Dynamic template ID
  dynamic_template_data?: object;        // Optional: Template variables
}
```


#### 向列表发送邮件
使用 SendGrid Single Sends 向联系人列表发送邮件。
```typescript
{
  name: string;                          // Required: Name of the single send
  list_ids: string[];                    // Required: Array of list IDs to send to
  subject: string;                       // Required: Email subject line
  html_content: string;                  // Required: HTML content
  plain_content: string;                 // Required: Plain text content
  sender_id: number;                     // Required: ID of the verified sender
  suppression_group_id?: number;         // Required if custom_unsubscribe_url not provided
  custom_unsubscribe_url?: string;       // Required if suppression_group_id not provided
}
```


### 模板管理（仅限动态模板）

#### 创建模板
创建一个新的动态电子邮件模板。
```typescript
{
  name: string;           // Required: Name of the template
  subject: string;        // Required: Default subject line
  html_content: string;   // Required: HTML content with handlebars syntax
  plain_content: string;  // Required: Plain text content with handlebars syntax
}
```


#### 列出模板
列出所有动态电子邮件模板。
```typescript
// No parameters required
```


#### 获取模板
通过 ID 检索模板。
```typescript
{
  template_id: string;  // Required: ID of the template to retrieve
}
```


#### 删除模板
删除一个动态模板。
```typescript
{
  template_id: string;  // Required: ID of the template to delete
}
```


### 分析与验证

#### 获取统计信息
获取 SendGrid 邮件统计数据。

```typescript
{
  start_date: string;                          // Required: Start date (YYYY-MM-DD)
  end_date?: string;                           // Optional: End date (YYYY-MM-DD)
  aggregated_by?: 'day' | 'week' | 'month';    // Optional: Aggregation period
}
```


#### validate_email
使用 SendGrid 验证电子邮件地址。
```typescript
{
  email: string;  // Required: Email address to validate
}
```


### 账户管理

#### list_verified_senders
列出所有已验证的发件人身份。
```typescript
// No parameters required
```


#### list_suppression_groups
列出所有退订组。
```typescript
// No parameters required
```


## 安装

```bash
git clone https://github.com/Garoth/sendgrid-mcp.git
cd sendgrid-mcp
npm install
```


## 配置

1. 获取您的 SendGrid API 密钥：
   - 登录您的 SendGrid 账户
   - 转到设置 > API 密钥
   - 创建一个新的具有完全访问权限的 API 密钥
   - 安全保存该 API 密钥，因为它不会再次显示

2. 将其添加到 VSCode 设置中的 Cline MCP 设置文件中（例如：~/.config/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json）：

```json
{
  "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",
      …

