turbosmtp
# turbosmtp-mcp-server
A simple Node.js MCP (Model Context Protocol) server for sending emails and view statistics using TurboSMTP, designed for easy integration and testing. This server exposes an MCP-compatible API endpoint to allow other services to send emails via TurboSMTP.
<a href="https://glama.ai/mcp/servers/@debba/turbosmtp-mcp-server">
<img width="380" height="200" src="https://glama.ai/mcp/servers/@debba/turbosmtp-mcp-server/badge" alt="turbosmtp MCP server" />
</a>
## Features
- Send emails and check statistics via TurboSMTP with a simple MCP API
- Easy configuration and setup
- Includes a test script for quick validation
## Requirements
- Node.js (v14 or higher recommended)
- A valid TurboSMTP account and credentials
## Installation
```bash
git clone https://github.com/debba/turbosmtp-mcp-server.git
cd turbosmtp-mcp-server
npm install
```
## Configuration
Set your TurboSMTP credentials in the appropriate configuration section of the code (see `email-service.js`).
You may want to use environment variables or a configuration file for production use.
## Usage
### Start the MCP server
```bash
node mcp-turbosmtp-server.js
```
The server will start and expose an MCP API endpoint for sending emails.
### Send a test email
You can use the provided test script:
```bash
node tests.js
```
Edit `tests.js` to set the recipient and message details.
## Project Structure
- `mcp-turbosmtp-server.js` — Main MCP server file
- `email-service.js` — Email sending logic using TurboSMTP
- `tests.js` — Script to test turboSMTP features via API
- `package.json` — Project dependencies and scripts
## License
MITTDQS
Scored across 3 tools
The tools have some overlap in purpose, as both get_analytics_data and get_analytics_data_by_id retrieve analytics data, which could cause confusion for an agent deciding between them. However, their descriptions clarify that one uses a date range and the other uses a message ID, providing enough distinction to avoid major misselection. The send_email tool is clearly distinct, targeting a different function.
All tool names follow a consistent verb_noun pattern (get_analytics_data, get_analytics_data_by_id, send_email), with clear and predictable naming conventions. There are no deviations in style or format, making it easy for agents to understand and use the tools.
With only 3 tools, this server feels under-scoped for an email service domain like TurboSMTP, which typically involves more operations such as managing contacts, templates, or handling bounces. The count is too low to cover the expected functionality, limiting agent capabilities.
There are significant gaps in the tool surface for an email service. While sending emails and retrieving analytics are covered, essential operations like managing email lists, handling attachments, or configuring settings are missing. This incompleteness will likely cause agent failures in broader email-related tasks.