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

io.github.agenticmail/mcp

NPM · @AGENTICMAIL/MCP · SCANNED AUG 7

Real email and SMS for AI agents — send mail, receive verification codes, drive a real inbox.

Available components

+56 this week 62 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 Security70
  • No malware found by supply-chain analysis.Pass
  • CVE check failed: a known high-severity CVE affects this package. See how to fix → View diagnostics → Fail
  • No install/post-install scripts declared.Pass
  • Dependency health was assessed across the 176 of 180 dependencies we could resolve, so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency48
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 69 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability81
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 5238 tokens (~83/item across 63 items; 62 tools + 1 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 Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
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 · @agenticmail/mcp

# add to Claude Code
claude mcp add agenticmail-mcp -- npx -y @agenticmail/mcp
# add to Codex CLI
codex mcp add agenticmail-mcp -- npx -y @agenticmail/mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "agenticmail-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@agenticmail/mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add agenticmail-mcp --command npx --arg -y --arg @agenticmail/mcp
# ~/.hermes/config.yaml
mcp_servers:
  agenticmail-mcp:
    command: "npx"
    args: ["-y", "@agenticmail/mcp"]
// mcp.json
{
  "mcpServers": {
    "agenticmail-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@agenticmail/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.

  • 7 Aug 26 +1
    • Security disclosure: fail → pass functional
  • 6 Aug 26 +31
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Schema quality: unverified → 100 functional
    • MCP protocol: unverified → pass functional
    • Tool coverage: unverified → 100 functional
    • First check of Schema quality: pass functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: good functional
  • 5 Aug 26 0
    • Security disclosure: unverified → fail functional
  • 4 Aug 26 0
    • Security disclosure: fail → unverified functional
  • 3 Aug 26 +10
    • CVE-2026-57495 affects this package: high security
    • CVE-2026-50287 affects this package: high security
    • GHSA-p6gq-j5cr-w38f affects this package: high security
    • CVE-2026-47255 affects this package: high security
    • Known CVEs: unverified → fail security
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • Stability: Stability not yet verified: our sandbox run of this package did not complete, so we have no schema to compare. security
    • Security disclosure: unverified → fail functional
    • Maintenance: unverified → pass functional
    • License: unverified → pass functional
    • Dependency health: unverified → partial functional
    • Capabilities: Protocol version not yet verified: our sandbox run of this package did not complete, so we never saw its MCP handshake. functional
    • Tool coverage: Tool coverage not yet verified: our sandbox run of this package did not complete, so we have no tool definitions to assess. functional
    • Schema quality: Schema quality not yet verified: our sandbox run of this package did not complete, so we have no schema to assess. functional
    • Licence: MIT functional
  • 2 Aug 26 −1
    • Security disclosure: fail → unverified functional
    • Dependency health: partial → unverified functional
  • 1 Aug 26 +15
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 31 Jul 26 −18
    • Malware scan: pass → unverified security
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 7 Aug 2026 · Analysed npm/@agenticmail/[email protected]

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm
Vulnerabilities 4 findings
ID CVE Severity Vector Fix available
GHSA-63gr-g7jc-v8rg CVE-2026-50287 high yes
GHSA-fq4x-789w-jg5h CVE-2026-57495 high yes
GHSA-wjjv-3mj2-39hf CVE-2026-47255 high yes
GHSA-p6gq-j5cr-w38f high CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N yes
Dependencies 176 packages
Packages resolved 176
Deprecated 175
Stale 58
Tree resolution Partial

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

MCP tools · 62 exposed · ~5,225 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
batch_delete ~42

Delete multiple emails by UIDs

NameTypeReqDescription
folderstringFolder (default: INBOX)
uidsarrayyesArray of UIDs to delete

No output schema declared.

No examples provided.

batch_mark_read ~44

Mark multiple emails as read

NameTypeReqDescription
folderstringFolder (default: INBOX)
uidsarrayyesArray of UIDs to mark as read

No output schema declared.

No examples provided.

batch_mark_unread ~45

Mark multiple emails as unread

NameTypeReqDescription
folderstringFolder (default: INBOX)
uidsarrayyesArray of UIDs to mark as unread

No output schema declared.

No examples provided.

batch_move ~59

Move multiple emails to another folder

NameTypeReqDescription
fromstringSource folder (default: INBOX)
tostringyesDestination folder (e.g., Trash, Archive)
uidsarrayyesArray of UIDs to move

No output schema declared.

No examples provided.

batch_read ~56

Read multiple emails at once by UIDs. Returns full parsed content for each message in a single call.

NameTypeReqDescription
folderstringFolder (default: INBOX)
uidsarrayyesArray of UIDs to read

No output schema declared.

No examples provided.

call_agent ~94

Synchronous RPC: assign a task to another agent, notify them via email (wakes wait_for_email), and wait for the result. Times out after specified duration.

NameTypeReqDescription
payloadobjectAdditional data
targetstringyesName of the agent to call
taskstringyesTask description
timeoutnumberMax seconds to wait (default: 180, max: 300)

No output schema declared.

No examples provided.

check_gateway_status ~26

Check the current email gateway status — relay mode, domain mode, or not configured

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

check_health ~18

Check 🎀 AgenticMail server health status

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

check_messages ~41

Check for new unread messages from other agents or external senders. Returns a summary of pending communications. Use this to stay aware of requests and coordinate with other agents.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

check_tasks ~67

Check for pending tasks assigned to you (or a specific agent) or tasks you assigned to others

NameTypeReqDescription
assigneestringCheck tasks for a specific agent by name (only for incoming direction)
directionstringincoming (assigned to me) or outgoing (I assigned)

No output schema declared.

No examples provided.

claim_task ~27

Claim a pending task assigned to you

NameTypeReqDescription
idstringyesTask ID to claim

No output schema declared.

No examples provided.

cleanup_agents ~94

List or remove inactive non-persistent agent accounts (requires master API key)

NameTypeReqDescription
actionstringyesAction to perform
agentIdstringAgent ID (for set_persistent)
dryRunbooleanPreview without deleting (for cleanup)
hoursnumberInactivity threshold in hours (default: 24)
persistentbooleanSet persistent flag (for set_persistent)

No output schema declared.

No examples provided.

create_account ~63

Create a new agent email account (requires master API key)

NameTypeReqDescription
domainstringEmail domain (default: localhost)
namestringyesAgent name (will be used as email local part)
rolestringAgent role (default: secretary)

No output schema declared.

No examples provided.

create_folder ~36

Create a new mail folder for organizing emails

NameTypeReqDescription
namestringyesFolder name (e.g., Projects, Clients, Newsletters)

No output schema declared.

No examples provided.

delete_agent ~62

Delete an agent account. Archives all emails and generates a deletion report before removing the account permanently. Returns the deletion summary. Requires master API key.

NameTypeReqDescription
namestringyesName of the agent to delete
reasonstringReason for deletion (optional)

No output schema declared.

No examples provided.

delete_email ~29

Delete an email by its UID

NameTypeReqDescription
uidnumberyesThe UID of the email to delete

No output schema declared.

No examples provided.

deletion_reports ~51

List past agent deletion reports or retrieve a specific report by ID. Shows archived email summaries from deleted agents. Requires master API key.

NameTypeReqDescription
idstringDeletion report ID (omit to list all reports)

No output schema declared.

No examples provided.

forward_email ~63

Forward an email to another recipient. Outbound guard applies — HIGH severity content is held for review.

NameTypeReqDescription
textstringAdditional message (optional)
tostringyesRecipient to forward to
uidnumberyesUID of the email to forward

No output schema declared.

No examples provided.

import_relay_email ~94

Import an email from the connected Gmail/Outlook account into the agent's local inbox. This downloads the full message with all headers (Message-ID, In-Reply-To, References) so you can continue the thread using reply_email. Use search_emails with searchRelay=true first to find the relay UID.

NameTypeReqDescription
uidnumberyesThe relay UID of the email to import (from search_emails relay results)

No output schema declared.

No examples provided.

inbox_digest ~103

Get a compact inbox digest with subject, sender, date, flags and text preview for each message. More efficient than listing then reading individually.

NameTypeReqDescription
folderstringFolder (default: INBOX)
limitnumberMax messages (default: 20, max: 50)
offsetnumberSkip messages (default: 0)
previewLengthnumberPreview text length (default: 200, max: 500)

No output schema declared.

No examples provided.

list_agents ~36

List all AI agents in the system with their email addresses and roles. Use this to discover which agents you can communicate with via message_agent.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_folder ~62

List messages in a specific folder

NameTypeReqDescription
folderstringyesFolder path (e.g., INBOX, Trash, Sent)
limitnumberMax messages (default: 20)
offsetnumberSkip messages (default: 0)

No output schema declared.

No examples provided.

list_folders ~16

List all mail folders/mailboxes

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_inbox ~53

List recent emails in the agent's inbox

NameTypeReqDescription
limitnumberMaximum number of messages to return (default: 20)
offsetnumberNumber of messages to skip (default: 0)

No output schema declared.

No examples provided.

manage_contacts ~62

List, add, or delete contacts

NameTypeReqDescription
actionstringyesAction to perform
emailstringContact email (for add)
idstringContact ID (for delete)
namestringContact name (for add)

No output schema declared.

No examples provided.

manage_drafts ~82

List, create, update, send, or delete drafts

NameTypeReqDescription
actionstringyesAction to perform
idstringDraft ID (for update/send/delete)
subjectstringSubject (for create/update)
textstringBody text (for create/update)
tostringRecipient (for create/update)

No output schema declared.

No examples provided.

manage_pending_emails ~87

Check the status of pending outbound emails blocked by the outbound guard. You can list all your pending emails or get details of a specific one. You CANNOT approve or reject — only the owner can do that.

NameTypeReqDescription
actionstringyesAction to perform (list or get only — approve/reject require owner)
idstringPending email ID (required for get)

No output schema declared.

No examples provided.

manage_rules ~126

Manage server-side email rules that auto-process incoming messages (move, tag, mark read, delete).

NameTypeReqDescription
actionstringyesAction to perform
actionsobjectActions on match: { move_to?, mark_read?, delete?, add_tags? }
conditionsobjectMatch conditions: { from_contains?, subject_contains?, subject_regex?, to_contains?, has_attachment? }
idstringRule ID (for delete)
namestringRule name (for create)
prioritynumberHigher priority rules match first (for create)

No output schema declared.

No examples provided.

manage_scheduled ~158

Manage scheduled emails: create a new scheduled email, list pending ones, or cancel one. Accepts flexible time formats for create: ISO 8601, relative ("in 30 minutes"), named ("tomorrow 8am"), day-based ("next monday 9am"), or human-friendly ("02-14-2026 3:30 PM EST").

NameTypeReqDescription
actionstringyesAction to perform (default: create)
idstringScheduled email ID (for cancel)
sendAtstringWhen to send (for create)
subjectstringEmail subject (for create)
textstringBody text (for create)
tostringRecipient email (for create)

No output schema declared.

No examples provided.

manage_signatures ~80

List, create, or delete email signatures

NameTypeReqDescription
actionstringyesAction to perform
idstringSignature ID (for delete)
isDefaultbooleanSet as default signature (for create)
namestringSignature name (for create)
textstringSignature text content (for create)

No output schema declared.

No examples provided.

manage_spam ~138

Manage spam: list spam folder, report a message as spam, mark as not-spam, or get the spam score of a message. Emails are auto-scored on arrival; high-scoring messages are moved to Spam automatically.

NameTypeReqDescription
actionstringyesAction to perform
folderstringSource folder (for report/score, default: INBOX)
limitnumberMax messages to list (for list, default: 20)
offsetnumberSkip messages (for list, default: 0)
uidnumberMessage UID (for report, not_spam, score)

No output schema declared.

No examples provided.

manage_tags ~135

Create, list, delete tags, tag/untag messages, get messages by tag, or get all tags for a specific message.

NameTypeReqDescription
actionstringyesAction to perform
colorstringTag color hex code (for create, e.g. #ff0000)
folderstringFolder the message is in (default: INBOX)
idstringTag ID (for delete, tag_message, untag_message, get_messages)
namestringTag name (for create)
uidnumberMessage UID (for tag_message, untag_message)

No output schema declared.

No examples provided.

manage_templates ~76

List, create, or delete email templates

NameTypeReqDescription
actionstringyesAction to perform
idstringTemplate ID (for delete)
namestringTemplate name (for create)
subjectstringTemplate subject (for create)
textstringTemplate body text (for create)

No output schema declared.

No examples provided.

mark_read ~25

Mark an email as read

NameTypeReqDescription
uidnumberyesUID of the email

No output schema declared.

No examples provided.

mark_unread ~26

Mark an email as unread

NameTypeReqDescription
uidnumberyesUID of the email

No output schema declared.

No examples provided.

message_agent ~110

Send a message to another AI agent by name. The message is delivered to their email inbox. Use list_agents first to see available agents. This is the primary way for agents to coordinate and share information with each other.

NameTypeReqDescription
agentstringyesName of the recipient agent (e.g. "researcher", "writer")
prioritystringPriority level (default: normal)
subjectstringyesMessage subject — describe the purpose clearly
textstringyesMessage body

No output schema declared.

No examples provided.

move_email ~65

Move an email to another folder (e.g., Trash, Archive)

NameTypeReqDescription
fromstringSource folder (default: INBOX)
tostringyesDestination folder (e.g., Trash, Archive)
uidnumberyesUID of the email to move

No output schema declared.

No examples provided.

purchase_domain ~104

Search for available domains via Cloudflare Registrar (requires master API key). NOTE: Cloudflare API only supports READ access — domains must be purchased manually at https://dash.cloudflare.com or from another registrar (then point nameservers to Cloudflare).

NameTypeReqDescription
keywordsarrayyesKeywords to search for (e.g., ["mybot", "aimail"])
tldstringPreferred TLD (default: checks .com, .net, .io, .dev)

No output schema declared.

No examples provided.

read_email ~34

Read the full content of a specific email by its UID

NameTypeReqDescription
uidnumberyesThe UID of the email to read

No output schema declared.

No examples provided.

reply_email ~107

Reply to an email. Fetches the original message, auto-fills To, Subject (Re:), In-Reply-To, and References, then sends with quoted body. Outbound guard applies — HIGH severity content is held for review.

NameTypeReqDescription
htmlstringHTML reply (optional)
replyAllbooleanReply to all recipients (default: false)
textstringyesYour reply text
uidnumberyesUID of the email to reply to

No output schema declared.

No examples provided.

search_emails ~182

Search emails by criteria (from, to, subject, text, date range). By default searches the local inbox only. Set searchRelay=true to also search the connected Gmail/Outlook account — results include relay UIDs that can be imported with import_relay_email.

NameTypeReqDescription
beforestringMessages before date (ISO 8601)
fromstringFilter by sender address
searchRelaybooleanAlso search the connected Gmail/Outlook account (default: false). Use this to find past emails from the user's main inbox.
seenbooleanFilter by read/unread status
sincestringMessages since date (ISO 8601)
subjectstringFilter by subject keyword
textstringSearch body text
tostringFilter by recipient address

No output schema declared.

No examples provided.

send_email ~148

Send an email from the agent's mailbox. External emails are scanned for sensitive content. HIGH severity detections are BLOCKED and held for owner approval. Your owner will be notified and must approve blocked emails. You CANNOT bypass the outbound guard.

NameTypeReqDescription
attachmentsarrayFile attachments
ccstringCC recipients (optional)
htmlstringHTML body (optional)
inReplyTostringMessage-ID to reply to (optional)
referencesarrayMessage-IDs for threading (optional)
subjectstringyesEmail subject line
textstringPlain text body
tostringyesRecipient email address

No output schema declared.

No examples provided.

send_test_email ~39

Send a test email through the gateway to verify configuration (requires master API key)

NameTypeReqDescription
tostringyesEmail address to send the test to

No output schema declared.

No examples provided.

setup_email_domain ~213

Set up a custom domain for real internet email via Cloudflare (requires master API key). ADVANCED: Requires Cloudflare account, API token, and a domain. Emails send from [email protected] with full DKIM/SPF/DMARC. Optionally configures Gmail SMTP as outbound relay (recommended for residential IPs). After setup with gmailRelay, use setup_gmail_alias for each agent.

NameTypeReqDescription
cloudflareAccountIdstringyesCloudflare account ID
cloudflareTokenstringyesCloudflare API token (Zone>Zone>Read, Zone>DNS>Edit, Zone>Email Routing Rules>Edit, Account>Cloudflare Tunnel>Edit, Account>Workers Scripts>Edit; optional: Account>Registrar: Domains>Edit for domain…
domainstringDomain to use (if already owned)
gmailRelayobjectGmail SMTP relay for outbound delivery (recommended for residential IPs without PTR records)
purchaseobjectPurchase a new domain (if domain not provided)

No output schema declared.

No examples provided.

setup_email_relay ~269

Configure Gmail/Outlook relay for sending real internet email (requires master API key). BEGINNER-FRIENDLY: Just needs a Gmail/Outlook email + app password. Agents send as [email protected]. Automatically creates a default agent (secretary) unless skipped. Best for: quick setup, personal use, no domain needed.

NameTypeReqDescription
agentNamestringName for the default agent (default: secretary). This becomes the email sub-address, e.g., [email protected]
agentRolestringRole for the default agent (default: secretary)
emailstringyesYour real email address (e.g., [email protected])
imapHoststringIMAP host (auto-filled for gmail/outlook)
imapPortnumberIMAP port (auto-filled for gmail/outlook)
passwordstringyesApp password (not your regular password)
providerstringyesEmail provider (gmail, outlook, or custom)
skipDefaultAgentbooleanSkip creating the default agent (default: false)
smtpHoststringSMTP host (auto-filled for gmail/outlook)
smtpPortnumberSMTP port (auto-filled for gmail/outlook)

No output schema declared.

No examples provided.

setup_gmail_alias ~117

Get step-by-step instructions (with exact field values) to add an agent email as a Gmail "Send mail as" alias. Returns the Gmail settings URL and all field values. Required after domain mode setup with gmailRelay to show correct From address. The agent can automate this via browser tools or present instructions to the user.

NameTypeReqDescription
agentDisplayNamestringDisplay name for the alias (defaults to agent name)
agentEmailstringyesAgent email to add as alias (e.g., [email protected])

No output schema declared.

No examples provided.

setup_guide ~50

Get a comparison of email setup modes (Relay vs Domain) with difficulty levels, requirements, pros/cons, and step-by-step instructions. Show this to users who want to set up real internet email.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

setup_payment ~57

Get instructions for adding a payment method to Cloudflare (required before purchasing domains). Returns Option A (self-service link) and Option B (browser automation steps). Card details go directly to Cloudflare — never stored by 🎀 AgenticMail.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

sms_check_code ~69

Check for recent verification/OTP codes received via SMS. Scans inbound SMS for common code patterns (6-digit, 4-digit, alphanumeric). Use this after requesting a verification code during sign-up flows.

NameTypeReqDescription
minutesnumberHow many minutes back to check (default: 10)

No output schema declared.

No examples provided.

sms_config ~34

Get the current SMS/phone number configuration for this agent. Shows whether SMS is enabled, the phone number, and forwarding email.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.