npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@smcphub/email

v0.0.12

Published

A MCP Server for email management assistant by SMCPHUB

Readme

@smcphub/email

Version License: Apache-2.0

SMCPHub Email Toolkit.

SMCPHub Email is an email account and management toolkit based on the MCP protocol. It supports IMAP/SMTP account CRUD, email sending/receiving, body extraction, template management, signature management, and more.

🏠 Homepage

Install

Use the official MCP server to integrate this toolkit service:

npm i @smcphub/server

OR

yarn add @smcphub/server

MCP Server configuration

{
  "mcpServers": {
    "smcphub-server": {
      "command": "npx",
      "args": ["-y", "@smcphub/server@latest"],
      "env": {
        "SMCPHUB_API_KEY": "your api key",
      }
    }
  }
}

You can get your API Key from the API Key Page.

Usage

Use the official MCP Client to connect to this toolkit service:

// import the SDK
import SmcphubClient from '@smcphub/client';

// Instantiate the client
const smcphubClient = new SmcphubClient({
    api_key: 'your-api-key'
});

// Connect the MCP Server
smcphubClient
.connect()
.then(tools => {
    console.log(tools);
})
.catch(err => {
  console.error(err);
});
    
// Call the tool
smcphubClient
.callTool('getEmailAccounts', {})
.then(content => {
    console.log(content);
})
.catch(err => {
  console.error(err);
});
  • You must set the SMCPHUB_API_KEY environment variable for authentication.

Tool List

upsertEmailAccount

Add or update an email account, supporting IMAP/SMTP configuration

  • provider: Email provider identifier, e.g. gmail, qq, 163, etc.
  • name: Email account name
  • email: Email address
  • config: Email configuration, supports IMAP/SMTP
    • imap: IMAP config (required)
      • host: IMAP server address
      • port: IMAP port, default 993
      • secure: IMAP SSL enabled
      • user: IMAP login username
      • password: IMAP login password
    • smtp: SMTP config (required)
      • host: SMTP server address
      • port: SMTP port, default 465
      • secure: SMTP SSL enabled
      • user: SMTP login username
      • password: SMTP login password
  • is_active: Whether the account is active (optional)

deleteEmailAccount

Delete an email account, supports deletion by accountId or email

  • accountId: Account ID (optional)
  • email: Email address (optional)

getEmailAccounts

Get email accounts, supports query by accountId or email, or get all accounts

  • accountId: Account ID (optional)
  • email: Email address (optional)

fetchAndSaveEmails

Automatically fetch and save new emails (IMAP/SMTP supported)

sendEmail

Send email (IMAP/SMTP supported)

  • to: Recipient email(s), comma separated
  • subject: Email subject
  • text: Email body (plain text, optional)
  • html: Email body (HTML, optional)
  • cc: CC email(s), comma separated (optional)
  • bcc: BCC email(s), comma separated (optional)
  • attachments: Attachments list (optional)
  • accountId: Sender account ID (optional)
  • email: Sender email address (optional)

extractBodyFromText

Extract clean body (remove quoted content)

  • text: Raw email body text

formatEmailContent

Format email content according to a template (supports LLM formatting)

  • emailId: Email ID
  • templateId: Template ID

getFormattedEmails

Get formatted emails (pagination, search, join attachments)

  • page: Page number (optional, default 1)
  • pageSize: Page size (optional, default 20)
  • to: Filter by recipient email (optional)
  • cc: Filter by CC email (optional)
  • bcc: Filter by BCC email (optional)
  • subject: Filter by subject (optional)
  • account_id: Filter by account ID (optional)
  • email: Filter by email address (optional)

addTemplate

Add email template (send/reply)

  • name: Template name
  • content: Template content
  • type: Template type (optional, send for sending, reply for replying)

createNotification

Create notification (accepts type, title, content, priority, extra_data)

  • type: Notification type
  • title: Notification title (optional)
  • content: Notification content (optional)
  • priority: Priority (optional)
  • extra_data: Extra data (optional)

addOrUpdateSignature

Add or update signature (find account by accountId or email and update config.signature)

  • accountId: Account ID (optional)
  • email: Email address (optional)
  • signature: Signature content

getAllRecipients

Get all recipients of a specific email

  • emailId: Email ID

getAllTemplates

Get all email templates

updateEmailAccountConfig

Update email account config (imap/smtp), supports accountId or email

  • accountId: Account ID (optional)
  • email: Email address (optional)
  • config: Config object to update

markEmailAsRead

Mark email as read

  • emailIds: Email IDs

Author

👤 SMCPHUB

License

Apache-2.0