MCP Server
Use the SendDart MCP server to give your AI agent native access to the full SendDart platform over natural language.
What is an MCP server?
MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs. Among other benefits, it gives LLMs tools to act on your behalf.
What can the SendDart MCP server do?
The SendDart MCP server gives your AI agent native access to the full SendDart platform through a single integration. You can manage your email infrastructure using natural language:
- Emails — send, list, get, cancel, update, and batch-send emails. Supports HTML, plain text, attachments (local file, URL, or base64), CC/BCC, reply-to, scheduling, and topic-based sending.
- Received emails — list and read inbound emails; list and download received attachments.
- Contacts — create, list, get, update, and remove contacts. Manage segment memberships, topic subscriptions, and CSV imports, with custom contact properties.
- Campaigns — create, send, list, get, update, and remove campaigns, with scheduling, personalization placeholders, and preview text.
- Domains — create, list, get, update, remove, and verify sender domains. Configure tracking, TLS, and sending/receiving capabilities.
- Segments — create, list, get, and remove audience segments.
- Topics — create, list, get, update, and remove subscription topics.
- Contact properties — create, list, get, update, and remove custom contact attributes.
- API keys — list your API keys and see when each was last used. Creating, re-scoping, and revoking keys are dashboard-only and cannot be done by any agent holding a key: those calls return
403 dashboard_only. Do them yourself at the API Keys page. - Webhooks — create, list, get, update, and remove webhooks for event notifications.
create-contact-import, get-contact-import, and list-contact-imports tools to upload CSV files, check import status, and review previous imports.Prerequisites
The SendDart MCP server is published on NPM as senddart-mcp and runs with npx in any supported MCP client. Before you start:
Stdio transport (default)
The server supports two transport modes: stdio (default) and HTTP. Replace mb_xxxxxxxxx with your actual key in every example below.
claude mcp add senddart -e SENDDART_API_KEY=mb_xxxxxxxxx -- npx -y senddart-mcpHTTP transport
Run the server over HTTP for remote or web-based integrations. In HTTP mode, each client authenticates by passing its SendDart API key as a Bearer token in the Authorization header.
npx -y senddart-mcp --http --port 3000The server listens on http://127.0.0.1:3000 and exposes the MCP endpoint at /mcp using Streamable HTTP.
claude mcp add senddart --transport http http://127.0.0.1:3000/mcp --header "Authorization: Bearer mb_xxxxxxxxx"You can also set the port via the MCP_PORT environment variable: MCP_PORT=3000 npx -y senddart-mcp --http.
Options
Pass additional arguments to configure the server:
--keystringoptionalYour SendDart API key (stdio mode only — HTTP mode uses the client Bearer token).
--senderstringoptionalDefault sender email address from a verified domain.
--reply-tostringoptionalDefault reply-to address (can be specified multiple times).
--httpflagoptionalUse HTTP transport instead of stdio (default: stdio).
--portnumberoptionalHTTP port when using --http (default: 3000, or MCP_PORT).
Environment variables
SENDDART_API_KEYstringoptionalYour API key. Required for stdio; optional for HTTP since clients pass it via Bearer token.
SENDER_EMAIL_ADDRESSstringoptionalDefault sender address from a verified domain (optional).
REPLY_TO_EMAIL_ADDRESSESstringoptionalComma-separated reply-to addresses (optional).
MCP_PORTnumberoptionalHTTP port when using --http (optional).
Local installation
Install the published package locally to run a fixed version without cloning a repository. The npm package already includes the executable build.
mkdir senddart-mcp-local
cd senddart-mcp-local
npm init -y
npm install senddart-mcp@1.0.0Then replace the npx command with the absolute path to the installed executable:
claude mcp add senddart -e SENDDART_API_KEY=mb_xxxxxxxxx -- node ABSOLUTE_PATH_TO_PROJECT/node_modules/senddart-mcp/dist/cli.jsTesting with MCP Inspector
From the installation directory, start the inspector to verify the server and list its tools:
export SENDDART_API_KEY=mb_your_key_here
npx @modelcontextprotocol/inspector node node_modules/senddart-mcp/dist/cli.js- Stdio — choose *stdio (launch a process)*, set Command to
node, Args tonode_modules/senddart-mcp/dist/cli.js, and Env toSENDDART_API_KEY=mb_your_key_here. Click Connect, then List tools. - HTTP — start the server with
node node_modules/senddart-mcp/dist/cli.js --http --port 3000, then in the inspector choose *Streamable HTTP*, set URL tohttp://127.0.0.1:3000/mcp, add headerAuthorization: Bearer mb_your_key_here, and click Connect.