This is a separate server and this one is self-hosted by you and can perform real, authenticated actions — including sending real messages — using your own API key.
What it does
This server exposes a single tool,call_api, which lets a connected AI client call the Transactional Messaging API directly — for example, sending a transactional email, sending a batch, or fetching a delivery report — without you having to write the request by hand.
How it works
The server runs locally as a child process of your MCP client (stdio transport), not as a public endpoint. Your API key lives in an environment variable on your machine — the AI model itself never sees or handles the key. When the model callscall_api, the server attaches the key server-side and forwards the request to https://api.effilink.co.
For safety, the server only allows paths under /v5/transactional/. A call to any other path is refused before a network request is made.
Setup
1
Get the server code
Download the
effilink-mcp-server project (index.js, package.json, README.md) and install dependencies:2
Set your API key
Get an API key from your account settings, then export it as an environment variable:
3
Add it to your MCP client
Point your client at the server’s entry file. For Claude Desktop or Cursor, add this to your MCP config:
4
Test in sandbox mode
Try a call with
sandboxMode: true first — see the example below — so you can confirm everything is wired up correctly before sending anything real.The call_api tool
Example: send a transactional email
sandboxMode: true, the request is validated end-to-end but no real email is sent — see Sandbox Mode. Drop that flag once you’re ready to send for real.
Example prompts
Once connected, you could ask your AI client things like:- “Send a password reset email to jane@example.com using our reset template.”
- “Send a batch of order confirmation emails to this list of customers.” (with the list provided in the conversation)
- “Look up the delivery status of message ID abc123.”
call_api with the correct path, method, and body based on the API reference.
Limitations
- Scoped to Transactional Messaging. Only
/v5/transactional/*paths are allowed by default. Campaigns, SMS, and contacts endpoints aren’t reachable unless you extend theALLOWED_PREFIXin the server code. - Local by default. The server runs via stdio on your own machine — it isn’t shared across a team unless you adapt it to run over HTTP with its own authentication layer in front.
- No built-in rate limiting beyond EffiLink’s own API limits. See Limits & Quotas.
Looking for the read-only docs server?
See the MCP Server page for the server that lets AI tools search and cite EffiLink documentation.

