- Home
- MCP servers
- Elastic Email
Elastic Email
- other
0
GitHub Stars
other
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
This MCP server enables programmatic control of Elastic Email campaigns, lists, templates, and contacts through a centralized machine-accessible API. It lets you perform actions such as creating campaigns, sending bulk or transactional emails, managing recipients and lists, fetching templates, and querying statistics from Elastic Email in an automated, repeatable way.
How to use
You connect to the MCP server from your MCP client (or Copilot-enabled tooling) over HTTP. Use the server URL and an authentication token to authorize requests. You can manage campaigns, templates, contacts, and lists, and you can trigger sending either in bulk or transactionally. Start by configuring your client with the server URL and your API key, then enable the tools you need for your workflow. When you start, you should see the server registered under your list of MCP servers and be able to select the available tools to run actions.
In your MCP client, add the MCP server connection with the following details: the URL of the HTTP MCP endpoint and the authentication header containing your API key. For best results, ensure the server’s port is reachable (default port in this setup is 5001 for HTTP). You can then choose tools such as creating campaigns, listing campaigns, getting campaign details, pausing campaigns, updating campaigns, getting statistics, managing lists and segments, fetching templates, and sending both bulk and transactional emails.
How to install
Prerequisites you need already installed on your system:
- dotnet --version (verify you have 10+)
- Install the .NET 10+ SDK from the official installation package and follow the guidance for your operating system.
Make sure the server can reach Elastic Email API and that port 5001 is open for HTTP traffic. This ensures the MCP server can communicate with Elastic Email services and respond to client requests.
If you already have the MCP server files ready, start the server by running the runtime entry point from your project directory. The common approach is to start the application using the standard .NET run command for your project setup. For example:
dotnet run
Configuration and usage notes
Copilot integration with the MCP server is supported in VS Code. You can connect to the MCP server using a settings file in your workspace. In the agent setup, you configure the server connection with a URL and an authentication header. You typically add the server details under a unique key (for example, an identifier like my-server-unique-number) in the settings file, including the server URL and the X-Auth-Token header. When you start the agent, you will see a list of tools available for that server, and you can select all the tools you intend to use.
Example configuration for the agent connection in your settings file:
"my-server-unique-number": {
"url": "http://localhost:5001/",
"headers": {
"X-Auth-Token": <api_key>
}
}
Available tools
HealthCheck.IsReady
Checks that the Elastic Email API server is available and responding.
CampaignManagement.CreateCampaign
Creates a new email campaign in the system.
CampaignManagement.ListCampaigns
Lists existing campaigns.
CampaignManagement.GetCampaign
Retrieves details for a specific campaign.
CampaignManagement.Pause
Pauses campaign processing.
CampaignManagement.UpdateCampaign
Updates campaign data; can be resumed by changing status.
CampaignManagement.GetAllCampaignStatistics
Fetches overall campaign metrics such as opens and clicks.
CampaignManagement.GetCampaignStatistics
Fetches metrics for a specific campaign.
SegmentsManagement.CreateSegment
Creates a new contact segment.
SegmentsManagement.GetSegments
Lists existing segments.
SegmentsManagement.GetSegment
Retrieves a segment by name.
TemplateManagement.FetchTemplate
Fetches details of a single template.
TemplateManagement.FetchTemplates
Fetches a list of templates with filtering by type and accessibility.
EmailSending.SendBulkEmails
Sends emails to multiple recipients using content or a template.
EmailSending.SendTransactionalEmail
Sends a transactional email to specified recipients using a template if provided.
ContactsManagement.FetchContacts
Retrieves the contacts list.
ContactsManagement.FetchContactHistory
Fetches contact history if enabled.
ContactsManagement.FetchLists
Retrieves all contact lists.
ContactsManagement.FetchList
Fetches details for a specific list.
ContactsManagement.FetchListContacts
Fetches contacts on a list by name.
ContactsManagement.AddContactToList
Adds a contact to a list.
ContactsManagement.RemoveContactsToList
Removes provided contacts from a list by name.
ContactsManagement.CreateList
Creates a new contact list.
ContactsManagement.AddContact
Adds a new contact.
ContactsManagement.DeleteContacts
Deletes specified contacts by email.
ContactsManagement.UploadContacts
Uploads and adds new contacts from a file.