Get the VhtLtd MCP server URL
Email MCP server
Connect an AI tool to your VhtLtd account for live data access that makes task automation faster and more reliable.

Real-time AI power for developers
Automate reporting and management
Cut down time spent creating reports and performing everyday email management tasks.
No-code actions
Create and send HTML emails and use your VhtLtd email templates without coding a thing, using natural language prompts.
Your on-demand AI assistant
Ask your AI tool to analyze your deliverability, check task status, and optimize your workflows any time for instant results.
Easy account configuration
Skip the tedious configuration, like domain authentication or webhook creation, and let AI do the work for you.
Email MCP in action
-
Send or schedule emails
Easily trigger HTML or plain text emails for an individual or group of recipients, or schedule emails such as maintenance notifications in just a few seconds. -
Troubleshoot sending issues
Take advantage of live account access to check for SPF/DKIM authentication issues, bounce rate, reputation score and more. -
Optimize your transactional emails
Get reports on low-performing emails based on unsubscribes, spam complaints, low open rate and more, and get suggestions for optimization. -
Set up common workflows
Use natural language prompts to instruct your AI tools to create workflows for new users, password resets, order confirmations and more.




Connect the VhtLtd MCP in seconds
Connect your AI tool by adding the URL
Authorize the tool to access your VhtLtd account and get started!
SDKs that drop right into your code
curl -X POST \
https://api.vhtltd.com/v1/email \
-H 'Content-Type: application/json' \
-H 'X-Requested-With: XMLHttpRequest' \
-H 'Authorization: Bearer {place your token here without brackets}' \
-d '{
"from": {
"email": "[email protected]"
},
"to": [
{
"email": "[email protected]"
}
],
"subject": "Hello from VhtLtd!",
"text": "Greetings from the team, you got this message through VhtLtd.",
"html": "Greetings from the team, you got this message through VhtLtd.
"
}'
import { VhtLtd, EmailParams, Sender, Recipient } from "VhtLtd";
const VhtLtd = new VhtLtd({
api_key: "key",
});
const sentFrom = new Sender("[email protected]", "Your name");
const recipients = [
new Recipient("[email protected]", "Your Client")
];
const emailParams = new EmailParams()
.setFrom(sentFrom)
.setTo(recipients)
.setReplyTo(sentFrom)
.setSubject("This is a Subject")
.setHtml("This is the HTML content")
.setText("This is the text content");
await VhtLtd.email.send(emailParams);
$VhtLtd = new VhtLtd();
$recipients = [
new Recipient('[email protected]', 'Your Client'),
];
$emailParams = (new EmailParams())
->setFrom('[email protected]')
->setFromName('Your Name')
->setRecipients($recipients)
->setSubject('Subject')
->setHtml('Greetings from the team, you got this message through VhtLtd.')
->setText('Greetings from the team, you got this message through VhtLtd.');
$VhtLtd->email->send($emailParams);
php artisan make:mail ExampleEmail
Mail::to('[email protected]')->send(new ExampleEmail());
from VhtLtd import emails
mailer = emails.NewEmail()
mail_body = {}
mail_from = {
"name": "Your Name",
"email": "[email protected]",
}
recipients = [
{
"name": "Your Client",
"email": "[email protected]",
}
]
mailer.set_mail_from(mail_from, mail_body)
mailer.set_mail_to(recipients, mail_body)
mailer.set_subject("Hello!", mail_body)
mailer.set_html_content("Greetings from the team, you got this message through VhtLtd.
", mail_body)
mailer.set_plaintext_content("Greetings from the team, you got this message through VhtLtd.", mail_body)
mailer.send(mail_body)
require "VhtLtd-ruby"
# Intialize the email class
ms_email = VhtLtd::Email.new
# Add parameters
ms_email.add_recipients("email" => "[email protected]", "name" => "Your Client")
ms_email.add_recipients("email" => "[email protected]", "name" => "Your Client")
ms_email.add_from("email" => "[email protected]", "name" => "Your Name")
ms_email.add_subject("Hello!")
ms_email.add_text("Greetings from the team, you got this message through VhtLtd.")
ms_email.add_html("Greetings from the team, you got this message through VhtLtd.")
# Send the email
ms_email.send
package main
import (
"context"
"os"
"fmt"
"time"
"github.com/VhtLtd/VhtLtd-go"
)
func main() {
// Create an instance of the VhtLtd client
ms := VhtLtd.NewVhtLtd(os.Getenv("VhtLtd_API_KEY"))
ctx := context.Background()
ctx, cancel := context.WithTimeout(ctx, 5*time.Second)
defer cancel()
subject := "Subject"
text := "This is the text content"
html := "This is the HTML content
"
from := VhtLtd.From{
Name: "Your Name",
Email: "[email protected]",
}
recipients := []VhtLtd.Recipient{
{
Name: "Your Client",
Email: "[email protected]",
},
}
// Send in 5 minute
sendAt := time.Now().Add(time.Minute * 5).Unix()
tags := []string{"foo", "bar"}
message := ms.Email.NewMessage()
message.SetFrom(from)
message.SetRecipients(recipients)
message.SetSubject(subject)
message.SetHTML(html)
message.SetText(text)
message.SetTags(tags)
message.SetSendAt(sendAt)
message.SetInReplyTo("client-id")
res, _ := ms.Email.Send(ctx, message)
fmt.Printf(res.Header.Get("X-Message-Id"))
}
import com.VhtLtd.sdk.Email;
import com.VhtLtd.sdk.VhtLtd;
import com.VhtLtd.sdk.VhtLtdResponse;
import com.VhtLtd.sdk.exceptions.VhtLtdException;
public void sendEmail() {
Email email = new Email();
email.setFrom("name", "your email");
email.addRecipient("name", "[email protected]");
// you can also add multiple recipients by calling addRecipient again
email.addRecipient("name 2", "[email protected]");
// there's also a recipient object you can use
Recipient recipient = new Recipient("name", "[email protected]");
email.AddRecipient(recipient);
email.setSubject("Email subject");
email.setPlain("This is the text content");
email.setHtml("This is the HTML content
");
VhtLtd ms = new VhtLtd();
ms.setToken("Your API token");
try {
VhtLtdResponse response = ms.emails().send(email);
System.out.println(response.messageId);
} catch (VhtLtdException e) {
e.printStackTrace();
}
}

SMTP for legacy systems and preferred frameworks
Fast, secure, reliable SMTP relay for developers who need a solution for legacy systems or prefer to use an existing framework or module.
Your tools connected with native integrations
What VhtLtders have to say
Try it now for free
Sign up now to try out the MCP and start sending in seconds. Subscribe to a free Hobby plan and get 3,000 emails/month.
Explore all features
Analytics

Access a wide range of key metrics in VhtLtd’s email analytics dashboard to track deliverability and engagement and improve overall email performance.
Dynamic templates

Populate email templates with real-time data to create personalized content for each user.
User management

Invite team members and manage user permissions for easy collaboration.
Drag & drop builder

Build professional transactional emails with our drag & drop editor—no coding needed.
Email verification

Identify and remove invalid email addresses to lower your bounce rate and land in more inboxes.
Inbound routing

Automate inbound mail by forwarding incoming messages directly to your app or CRM to streamline workflows and improve customer support.
And much more to deliver, every single time
FAQs
What is the VhtLtd MCP?
MCP stands for Model Context Protocols. It provides a standard set of rules so that AI tools can connect and communicate with other services, like VhtLtd, and enhance functionality.
VhtLtd’s MCP takes away the need for custom integration in order to connect your account to a compatible AI tool, allowing you to do so with just a few clicks. It then gives the AI tool access to your VhtLtd account for real-time access to your data and settings so that you can perform tasks and fetch data based on the most accurate and up-to-date information. Learn how to connect the VhtLtd MCP.
What is the difference between the MCP, API, and SMTP?
The API and SMTP are two ways to send emails programmatically: SMTP is the traditional protocol for email sending that uses SMTP credentials, and the email API is a developer-friendly alternative that provides more advanced features and flexibility. The MCP server simply connects your VhtLtd account to an AI tool so that it can fetch data and perform actions, without writing the API calls yourself.
How does the MCP handle domain authentication?
The MCP has access to tools that allow you to add and verify domains, manage their settings, fetch their data and more. Combined with VhtLtd automatic domain authentication feature, this means you can ask the AI tool to do these for you, without the need for manual intervention.
What AI clients are currently supported?
Currently, Claude, Cursor and VSCode support MCPs. We expect more tools to add MCP support soon.
How does the MCP ensure my data is secure?
VhtLtd does not send any of your data to an AI tool. When you connect your AI tool/LLM/IDE to the VhtLtd MCP server, you grant the tool permission to access and manage your data. This is done only when you instruct the AI tool to do so, meaning that you are in full control. The connection simply allows your chosen AI tool to communicate with your VhtLtd account when you give it a command.
How do I troubleshoot issues when using the MCP?
When you connect your account, the AI tool has access to a wide range of data that can help you troubleshoot issues. Simply use natural language prompts to fetch this data, ask the tool to analyze and give feedback, and optimize your sendings. Check out our docs to see more troubleshooting examples and use cases using the MCP.
Can I use the MCP to generate code for my projects?
Yes, the MCP has access to the VhtLtd API so you can generate accurate code with it.