Skip to main content
Glama

SendGrid MCP Server

by deyikong
mail.ts1.66 kB
import { z } from "zod"; import { makeRequest } from "../shared/api.js"; import { EmailAddressSchema, ToolResult } from "../shared/types.js"; import { checkReadOnlyMode } from "../shared/env.js"; export const mailTools = { send_mail: { config: { title: "Send Mail", description: "Send an email using SendGrid Mail Send API", inputSchema: { personalizations: z.array(z.object({ to: z.array(EmailAddressSchema), cc: z.array(EmailAddressSchema).optional(), bcc: z.array(EmailAddressSchema).optional(), subject: z.string().optional(), substitutions: z.record(z.any()).optional(), })).describe("Personalization settings for recipients"), from: EmailAddressSchema, subject: z.string().optional().describe("Default subject if not set in personalizations"), content: z.array(z.object({ type: z.string().describe("Content type (text/plain, text/html)"), value: z.string().describe("Content body"), })).describe("Email content"), reply_to: EmailAddressSchema.optional(), }, }, handler: async (mailData: any): Promise<ToolResult> => { const readOnlyCheck = checkReadOnlyMode(); if (readOnlyCheck.blocked) { return { content: [{ type: "text", text: readOnlyCheck.message! }] }; } const result = await makeRequest("https://api.sendgrid.com/v3/mail/send", { method: "POST", body: JSON.stringify(mailData), }); return { content: [{ type: "text", text: `Email sent successfully. Response: ${JSON.stringify(result, null, 2)}` }] }; }, }, };

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/deyikong/sendgrid-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server