MCP电子邮件服务器
使用SMTP提供电子邮件发送功能的C#模型上下文协议(MCP)服务器。
先决条件
- .NET 6.0或更高版本
- SMTP服务器凭据(例如Gmail、Office 365或您自己的SMTP服务器)
设置
- 克隆存储库
- 为SMTP配置设置以下环境变量:
- SMTP_SERVER (例如。, smtp.gmail.com) - SMTP_PORT (例如。, 587) - SMTP_USERNAME (您的电子邮件地址) - SMTP_PASSWORD (您的应用程序密码)
可以使用以下命令运行Mcp电子邮件服务器:
"mcp-email-server": {
"type": "stdio",
"command": "dotnet",
"args": ["run",
"--project",
"YOUR_PATH/smtp-dotnet-mcp-server/McpEmailServer.csproj"
],
"env": {
"SMTP_SERVER": "localhost",
"SMTP_PORT": "25",
"SMTP_USERNAME": "",
"SMTP_PASSWORD": ""
}
}
或
"mcp-email-server": {
"type": "stdio",
"command": "cmd",
"args": ["/c",
"YOUR_PATH/smtp-dotnet-mcp-server/McpEmailServer.exe"
],
"env": {
"SMTP_SERVER": "localhost",
"SMTP_PORT": "25",
"SMTP_USERNAME": "",
"SMTP_PASSWORD": ""
}
}
Gmail设置(如果使用Gmail)
如果你正在使用Gmail,你需要:
- 在您的Google帐户中启用两步验证
- 生成应用程序密码:
- 转到Google帐户设置 - 安全 - 两步验证 - 应用密码 - 为“邮件”生成新的应用程序密码
运行服务器
dotnet run可用工具
服务器提供以下MCP工具:
SendEmail:发送纯文本电子邮件
- 参数: - to:收件人电子邮件地址 - subject:电子邮件主题 - body:电子邮件正文
SendHtmlEmail:发送HTML电子邮件
- 参数: - to:收件人电子邮件地址 - subject:电子邮件主题 - htmlBody:电子邮件正文的HTML内容
特性
- 使用stdio传输的MCP服务器实现
- SMTP电子邮件发送功能
- 支持纯文本和HTML电子邮件
- SMTP客户端的依赖注入和设置
- 可通过应用程序配置
- 正确的错误处理和记录
安全说明
- 切勿将电子邮件凭据提交到源代码管理
- appsettings文件应添加到.gitignore中
- 尽可能使用应用程序密码而不是主密码
- 考虑在生产中使用环境变量或安全的配置管理系统
