SendNeo MCP Server
SendNeo MCP server
SendNeo provides a Streamable HTTP MCP server at https://sendneo.yorkermedia.com/mcp. It exposes email, domain, audience, broadcast, and usage operations through tools that an AI client can call with your bearer key.
Available tools are:
send_emailget_emaillist_domainsadd_domainverify_domainlist_audiencesadd_contactcreate_broadcasttest_broadcastsend_broadcastget_usage
send_broadcast is marked destructive and asks the human first. Keep that confirmation step enabled.
Claude Code
Set the key in your shell and add the server:
export SENDNEO_API_KEY='sn_live_your_key'
claude mcp add --transport http sendneo \
https://sendneo.yorkermedia.com/mcp \
--header "Authorization: Bearer $SENDNEO_API_KEY"
Use an sn_test_ key while developing prompts or tools. The MCP server follows the same review and sending rules as the REST API.
Claude.ai or ChatGPT
In the connector or custom MCP settings, add this URL:
https://sendneo.yorkermedia.com/mcp
Configure an HTTP Authorization header with the value Bearer <your SendNeo key>. Store the key in the client's secret or connector settings rather than in a prompt. Name the connector SendNeo so tool calls are easy to recognize.
Cursor
Open Cursor's MCP settings and add a Streamable HTTP server with the URL and header:
{
"mcpServers": {
"sendneo": {
"url": "https://sendneo.yorkermedia.com/mcp",
"headers": {
"Authorization": "Bearer ${SENDNEO_API_KEY}"
}
}
}
}
Use the configuration format supported by your Cursor version. If environment interpolation is unavailable, enter the bearer value in its secure settings instead of committing a key to the project.
Codex
Add the same Streamable HTTP endpoint as a custom MCP server in Codex settings. Use https://sendneo.yorkermedia.com/mcp and an Authorization: Bearer <key> header. Keep the tool enabled only for the workspace or task that needs it.
Safe operating pattern
MCP makes an email action easy to ask for, so make the boundary explicit in your instructions:
- Let the assistant list domains and audiences before it changes anything.
- Use
test_broadcastand inspect the preview before a real send. - Require a human confirmation for
send_broadcast, including the audience, subject, and schedule. - Give agents a test key when they are writing or debugging code.
- Give the smallest key scope and rotate it if it appears in a log or transcript.
The MCP layer does not bypass domain verification, account review, suppression, rate limits, or the broadcast confirmation. Transactional sends still use send_email; newsletter sends use the broadcast tools. For direct integrations, see Sending and Newsletters.
One-click connect with OAuth (Claude.ai, Claude Desktop, ChatGPT)
You don't need an API key for connector-based apps. Add https://sendneo.yorkermedia.com/mcp as a custom connector and the
app sends you to SendNeo to sign in. On the consent screen pick one of two access levels:
| Access level | What the agent can do |
|---|---|
| Draft & test — I approve every send (recommended) | Send transactional email, add contacts and domains, draft and test broadcasts. A request to send a broadcast to a list becomes an approval in your dashboard, and we email you. |
| Full access | Everything you can do, including sending broadcasts without asking. |
SendNeo publishes OAuth 2.1 metadata (/.well-known/oauth-protected-resource, /.well-known/oauth-authorization-server),
supports dynamic client registration, requires PKCE (S256), and rotates refresh tokens. Disconnect any app under
Connect AI → Connected apps in the dashboard.
Agent keys
Coding agents (Claude Code, Cursor, Codex, VS Code) use an API key. Create an agent key under Connect AI: it works like a live key, except that broadcast sends wait for your approval — the same safety as the OAuth "Draft & test" level.