Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.spruikco/send16-mcp

NPM · SEND16-MCP · 2 COMPONENTS · SCANNED AUG 3

Email for AI agents: send mail, manage contacts, automations & webhooks. Zero-DNS first send.

+19 this week 65 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security86
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability77
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 6299 tokens (~79/item across 79 items; 79 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage95
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 84% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · send16-mcp

# add to Claude Code
claude mcp add spruikco-send16-mcp -- npx -y send16-mcp
# add to Codex CLI
codex mcp add spruikco-send16-mcp -- npx -y send16-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "spruikco-send16-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "send16-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add spruikco-send16-mcp --command npx --arg -y --arg send16-mcp
# ~/.hermes/config.yaml
mcp_servers:
  spruikco-send16-mcp:
    command: "npx"
    args: ["-y", "send16-mcp"]
// mcp.json
{
  "mcpServers": {
    "spruikco-send16-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "send16-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +12
    • Malware scan: unverified → pass security
  • 1 Aug 26 +32
    • Provenance: unverified → fail security
    • Known CVEs: unverified → partial security
    • Install scripts: unverified → pass security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Maintenance: unverified → pass functional
    • Dependency health: unverified → partial functional
    • License: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Schema quality: unverified → excellent functional
    • Licence: MIT functional
  • 31 Jul 26 −7
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −18
    • Malware scan: pass → unverified security
  • 27 Jul 26 46

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 94 packages

94 packages in the resolved dependency tree · 94 deprecated · 29 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 79 exposed · ~6,299 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
activate_automation ~54

Activate an automation. New events matching its triggers will start enrolling contacts.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
automationIdstringyesAutomation ID

No output schema declared.

No examples provided.

add_contacts_to_audience ~64

Add contacts (by ID) to an audience.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
audienceIdstringyesAudience ID
contactIdsarrayyesContact IDs to add

No output schema declared.

No examples provided.

add_convo_note ~70

Add a private internal note on a conversation. Notes are visible only to workspace members.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
bodystringyesNote body (markdown supported)
convoIdstringyesConversation ID

No output schema declared.

No examples provided.

add_domain ~79

Register a new sending domain. Returns the DNS records the user must add to their DNS provider, after which they should call check_domain_health to verify.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
domainstringyesFQDN to register (e.g. 'mail.example.com')

No output schema declared.

No examples provided.

add_suppression ~69

Add an email to the suppression list. Future sends to this address will be blocked.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
emailstringyes
notesstring
reasonstring

No output schema declared.

No examples provided.

check_domain_health ~75

Check the DNS health of a specific domain, including DKIM, SPF, DMARC, and MX record verification status. Triggers a fresh DNS lookup.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
domainIdstringyesDomain ID to check health for

No output schema declared.

No examples provided.

create_action ~134

Create an Action that maps an event name to a transactional template. Each matching event sends one email to the contact.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
delaySecondsintegerDelay before sending
enabledboolean
eventNamestringyesEvent name to match (e.g. 'order.placed')
namestringyesDisplay name
sendOncebooleanOnly send once per contact regardless of how many times the event fires
templateSlugstringyesTransactional template slug to send

No output schema declared.

No examples provided.

create_audience ~49

Create a new audience.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
descriptionstring
namestringyes

No output schema declared.

No examples provided.

create_campaign ~129

Create a new email campaign in Send16. The campaign is created in draft status and can be edited before sending.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
fromEmailstringyesSender email (must be from a verified domain)
fromNamestringyesSender display name
namestringyesCampaign name (internal label)
previewTextstringPreview text shown in inbox alongside subject
replyTostringReply-to email address
subjectstringyesEmail subject line

No output schema declared.

No examples provided.

create_contact ~106

Add a new contact to your Send16 audience. Contacts are automatically subscribed to receive emails.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
customFieldsobjectCustom field key-value pairs
emailstringyesContact email address
firstNamestringContact first name
lastNamestringContact last name
tagsarrayTag names to assign to this contact

No output schema declared.

No examples provided.

create_topic ~103

Create a new subscription topic. Contacts opt into topics individually via the preference center.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
descriptionstringDescription shown in the preference center
isDefaultbooleanAuto-subscribe new contacts to this topic
namestringyesDisplay name shown to contacts
slugstringURL-safe slug (auto-derived from name if omitted)

No output schema declared.

No examples provided.

create_webhook ~114

Register an outgoing webhook endpoint. Send16 POSTs event JSON to this URL with an HMAC-SHA256 signature. Outgoing webhooks are a plan feature.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
enabledbooleanWhether the endpoint is active (default true)
eventsarrayyesEvent types to subscribe to
namestringyesA label for this endpoint
urlstringyesHTTPS endpoint to receive events

No output schema declared.

No examples provided.

delete_action ~43

Delete an Action.

NameTypeReqDescription
actionIdstringyesAction ID
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

delete_audience ~60

Delete an audience (list). Contacts are not deleted — only the list and its memberships are removed.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
audienceIdstringyesAudience ID

No output schema declared.

No examples provided.

delete_campaign ~53

Delete a draft campaign. Sent campaigns cannot be deleted (only archived).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
campaignIdstringyesCampaign ID

No output schema declared.

No examples provided.

delete_contact ~51

Delete a contact and all associated events. Irreversible.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
contactIdstringyesContact ID

No output schema declared.

No examples provided.

delete_topic ~50

Delete a subscription topic. All subscribers will be detached.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
topicIdstringyesTopic ID

No output schema declared.

No examples provided.

delete_webhook ~47

Delete an outgoing webhook endpoint.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
webhookIdstringyesWebhook ID

No output schema declared.

No examples provided.

design_email_template ~161

Use AI to generate a complete email HTML template based on a description. Returns ready-to-use HTML that can be sent or used in campaigns.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
brandColorstringPrimary brand color as hex code (e.g. "#4F46E5")
companyNamestringCompany or brand name to include in the template
descriptionstringyesDetailed description of the email content and purpose (e.g. 'Welcome email for a SaaS product with feature highlights and CTA to start trial')
stylestringyesVisual style/aesthetic for the template
typestringyesType of email template to generate

No output schema declared.

No examples provided.

duplicate_campaign ~60

Duplicate a campaign as a new draft. Useful for A/B variants or re-using a successful template.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
campaignIdstringyesCampaign ID

No output schema declared.

No examples provided.

enroll_in_automation ~92

Manually enroll a contact in an active automation. The automation must be in 'active' status. Use send_event for event-driven enrollment.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
automationIdstringyesAutomation ID to enroll into
contactIdstringyesContact UUID (use search_contacts to look up by email first)

No output schema declared.

No examples provided.

generate_email_from_url ~104

Scrape a URL (e.g. a launch blog post or product page) and generate an email draft from its content. Returns subject, preview text, and HTML body.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
instructionsstringAdditional guidance — e.g. 'announcement style, focus on the new feature'
urlstringyesPublic URL to scrape and turn into an email

No output schema declared.

No examples provided.

get_action ~51

Get a single Action with its trigger config and template binding.

NameTypeReqDescription
actionIdstringyesAction ID
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

get_automation ~57

Get a single automation by ID, including its trigger, steps, and current status.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
automationIdstringyesAutomation ID

No output schema declared.

No examples provided.

get_automation_stats ~63

Get aggregate analytics for an automation: total enrollments, completed, exited, open/click rates per step.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
automationIdstringyesAutomation ID

No output schema declared.

No examples provided.

get_brand ~53

Get the workspace's brand settings: colors, logo, fonts, and the DESIGN.md spec injected into AI generation prompts.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

get_campaign_stats ~66

Get detailed performance statistics for a specific campaign including open rate, click rate, bounce rate, and delivery metrics.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
campaignIdstringyesCampaign ID to get stats for

No output schema declared.

No examples provided.

get_contact_health_score ~62

Get a contact's 0-100 health score based on recent engagement (opens, clicks, replies).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
contactIdstringyesContact ID

No output schema declared.

No examples provided.

get_contact_timeline ~84

Get a contact's full activity timeline: emails received, events fired, opens, clicks, automation enrollments, topic changes.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
contactIdstringyesContact ID
cursorstringPagination cursor
limitintegerPage size

No output schema declared.

No examples provided.

get_convo ~54

Get a single conversation with its full thread of posts (incoming + outgoing).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
idstringyesConversation ID

No output schema declared.

No examples provided.

get_deliverability_status ~62

Get your workspace's deliverability summary — sending reputation, domain authentication status, and recent bounce/complaint health. (Deliverability Hub plan feature.)

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

get_message ~60

Fetch a single message with its full event timeline (created → sent → delivered → opened → clicked → ...).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
idstringyesMessage ID

No output schema declared.

No examples provided.

get_message_events ~55

Get just the delivery event timeline for a message — no body or recipient details.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
idstringyesMessage ID

No output schema declared.

No examples provided.

get_template ~55

Get a single starter template by ID, including its EmailContent JSON.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
templateIdstringyesTemplate ID (slug)

No output schema declared.

No examples provided.

get_workspace ~42

Get the current workspace (the one the API key belongs to).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

get_workspace_usage ~44

Get the current month's send count, contact count, and plan limits.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

import_contacts ~122

Bulk import contacts from CSV data. Each row should have at minimum an email column. Tags can be applied to all imported contacts.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
csvDatastringyesCSV string with headers. Required column: "email". Optional: "firstName", "lastName", "tags" (comma-separated within quotes)
tagsarrayTag names to apply to all imported contacts
updateExistingbooleanWhether to update contacts that already exist

No output schema declared.

No examples provided.

list_actions ~61

List Actions. Actions fire a transactional template when a custom event arrives — Plunk-style 'event_name → template' pairings, simpler than full automations.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

list_audiences ~48

List audiences (lists). An audience is a static, manually-managed group of contacts.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

list_automation_enrollments ~74

List active and historical enrollments for an automation.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
automationIdstringyesAutomation ID
cursorstring
limitinteger
statestring

No output schema declared.

No examples provided.

list_automations ~50

List all automations in the workspace, including draft/active/paused status and trigger types.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

list_campaigns ~75

List email campaigns with optional status filtering and pagination.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
pageintegerPage number
pageSizeintegerResults per page (max 100)
statusstringFilter campaigns by status

No output schema declared.

No examples provided.

list_contacts ~91

List all contacts with optional filtering by subscription status and tag. Supports pagination.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
pageintegerPage number
pageSizeintegerResults per page (max 100)
subscribedstringFilter by subscription status
tagIdstringFilter by tag ID

No output schema declared.

No examples provided.

list_convos ~148

List inbox conversations. Filter by state, mailbox, label, screener status, or full-text search. Send16's unified inbox combines transactional reply threading with team-managed shared inboxes.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
labelstringFilter by label slug
limitintegerPage size (default 50)
mailboxIdstringFilter to one mailbox
offsetintegerPage offset
screener_statusstringScreener gate status
searchstringFull-text search across subject + body
statestringConversation state

No output schema declared.

No examples provided.

list_domains ~48

List all sending domains configured in your Send16 workspace, including their verification status and DNS records.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

list_inbox_counts ~57

Get unread/total counts per category and label for the inbox sidebar (newsletter, transactional, marketing, calendar, social, cold).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

list_messages ~153

List messages from the unified send log (transactional + campaign). Filter by recipient, sender, status, date range, or source.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
created_afterstringISO-8601 timestamp lower bound
created_beforestringISO-8601 timestamp upper bound
from_emailstringSender email filter
limitintegerPage size (default 50)
offsetintegerPage offset
sourcestringRestrict to one message source
statusstringDelivery status filter
to_emailstringRecipient email filter

No output schema declared.

No examples provided.

list_segments ~46

List dynamic segments. Segments compute their members from a filter expression at send time.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.

list_suppressions ~68

List suppressed email addresses (bounces, complaints, unsubscribes, manual).

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)
limitinteger
offsetinteger
reasonstring

No output schema declared.

No examples provided.

list_templates ~39

List starter-gallery email templates available to every workspace.

NameTypeReqDescription
apiKeystringSend16 API key (overrides SEND16_API_KEY env var)

No output schema declared.

No examples provided.