ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Email (IMAP/SMTP)

โดย boutquinรุ่น 1.0.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.boutquin/email

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Multi-account IMAP/SMTP email server with 22 tools for reading, sending, searching, and organizing.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: แชตและอีเมล
  • ต้องใส่ค่าเหล่านี้: EMAIL_ACCOUNTS

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • Dockerติดตั้ง Docker ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "email": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "EMAIL_CONFIG_FILE",
        "-e",
        "EMAIL_ACCOUNTS",
        "ghcr.io/boutquin/mcp-server-email:latest"
      ],
      "env": {
        "EMAIL_CONFIG_FILE": "ใส่ค่าของคุณ",
        "EMAIL_ACCOUNTS": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add email --env EMAIL_CONFIG_FILE='ใส่ค่าของคุณ' --env EMAIL_ACCOUNTS='ใส่ค่าของคุณ' -- docker run -i --rm -e EMAIL_CONFIG_FILE -e EMAIL_ACCOUNTS ghcr.io/boutquin/mcp-server-email:latest

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "email": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "EMAIL_CONFIG_FILE",
        "-e",
        "EMAIL_ACCOUNTS",
        "ghcr.io/boutquin/mcp-server-email:latest"
      ],
      "env": {
        "EMAIL_CONFIG_FILE": "ใส่ค่าของคุณ",
        "EMAIL_ACCOUNTS": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "email": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "EMAIL_CONFIG_FILE",
        "-e",
        "EMAIL_ACCOUNTS",
        "ghcr.io/boutquin/mcp-server-email:latest"
      ],
      "env": {
        "EMAIL_CONFIG_FILE": "ใส่ค่าของคุณ",
        "EMAIL_ACCOUNTS": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • EMAIL_CONFIG_FILE env
    Path to account JSON config file
  • EMAIL_ACCOUNTS ความลับ env
    Inline JSON array of account configs

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub boutquin ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด แชตและอีเมลi

  • ดาวมากกว่า 0% ของอีก 1766 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 4% ของอีก 1766 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 1766 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Email (IMAP/SMTP) ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: EMAIL_ACCOUNTS

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.0.1) เข้า registry 8 เดือนที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Docker ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Vexa, emailmd, MCP WhatsApp Cloud

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Vexa

โดย Vexa-ai

Meeting bot and transcripts for Google Meet, Teams and Zoom. Live or after, speakers labelled.

รันบนคลาวด์★ 2,949Apache-2.0อัปเดต 2 เดือนที่ผ่านมา
ติดตั้ง

emailmd

โดย anypost

Render markdown into email-safe HTML, lint drafts for deliverability problems, and preview emails.

บนเครื่องหรือคลาวด์★ 1,385MITอัปเดต 31 วันที่ผ่านมา
ติดตั้ง

MCP WhatsApp Cloud

โดย codespar

MCP server for WhatsApp Cloud API (Meta) — messages, media, and templates via Graph API

รันบนเครื่อง★ 277MITอัปเดต 5 เดือนที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

mcp-server-email

Multi-account email server for the Model Context Protocol. Gives LLMs full email access — read, send, search, organize — over IMAP/SMTP with connection pooling, rate limiting, and retry. Designed as the remote-email counterpart to apple-bridge (local Mail.app access).

Quick Start

  1. Install
   go install github.com/boutquin/mcp-server-email/cmd/mcp-server-email@latest
  1. Create a config file (~/.config/mcp-email/accounts.json)

For well-known providers (Gmail, Outlook, Yahoo, iCloud, Fastmail, Zoho), host and port are auto-detected from the email domain — just provide credentials:

   [

{ "id": "hello", "email": "hello@gmail.com", "username": "hello@gmail.com", "password": "app-password-here" } ]

For custom mail servers, specify host and port explicitly:

   [

{ "id": "work", "email": "hello@example.com", "imap_host": "mail.example.com", "imap_port": 993, "smtp_host": "mail.example.com", "smtp_port": 465, "username": "hello@example.com", "password": "app-password-here" } ]

   chmod 600 ~/.config/mcp-email/accounts.json
  1. Add to Claude Code (~/.claude.json)
   {

"mcpServers": { "email": { "command": "mcp-server-email", "env": { "EMAIL_CONFIG_FILE": "~/.config/mcp-email/accounts.json" } } } }

  1. Restart Claude Code — the email_* tools are now available.

Installation

Go Install (recommended for Go developers)
go install github.com/boutquin/mcp-server-email/cmd/mcp-server-email@latest
Homebrew (macOS/Linux)
brew install boutquin/tap/mcp-server-email
Binary Download

Download pre-built binaries for your platform from GitHub Releases.

Available for: Linux (amd64, arm64), macOS (amd64, arm64), Windows (amd64, arm64).

Docker
docker run --rm \

-e EMAIL_ACCOUNTS='[{"id":"main","email":"user@example.com","imap_host":"mail.example.com","imap_port":993,"smtp_host":"mail.example.com","smtp_port":465,"username":"user@example.com","password":"app-password"}]' \ ghcr.io/boutquin/mcp-server-email:latest

MCP Bundle (Claude Desktop)

Download the .mcpb file from Releases and open in Claude Desktop.

Build from source
git clone https://github.com/boutquin/mcp-server-email.git

cd mcp-server-email go build -o mcp-server-email ./cmd/mcp-server-email

Configuration

Accounts are loaded once at startup. Changes require a server restart.

Config file vs environment variable
ApproachBest for
EMAIL_CONFIG_FILE — path to a JSON fileProduction use. File can be permission-locked (chmod 600)
EMAIL_ACCOUNTS — inline JSON in env varTesting, CI, or containerized deployments

If both are set, EMAIL_ACCOUNTS takes precedence.

Account JSON schema
[

{ "id": "hello", "email": "hello@example.com", "imap_host": "mail.example.com", "imap_port": 993, "smtp_host": "mail.example.com", "smtp_port": 465, "username": "hello@example.com", "password": "app-password-here" } ]

FieldRequiredDescription
idYesUnique account identifier
emailYesEmail address
imap_hostNo*IMAP server hostname
imap_portNo*IMAP port (993 = implicit TLS, 143 = STARTTLS)
smtp_hostNo*SMTP server hostname
smtp_portNo*SMTP port (465 = implicit TLS, 587 = STARTTLS)
usernameYesLogin username
passwordYes**App password or account password
use_starttlsNoOverride TLS auto-detection (true/false)
insecure_skip_verifyNoSkip TLS certificate verification (dev/testing)
auth_methodNo"password" (default) or "oauth2"
oauth_client_idNoOAuth2 client ID (required when auth_method is "oauth2")
oauth_client_secretNoOAuth2 client secret
oauth_token_fileNoOverride token file path

*Host and port are auto-detected for well-known providers (see below). Required for custom servers. **Not required when using OAuth2 authentication.

Provider auto-detection

When imap_host/smtp_host are omitted, the server detects settings from the email domain:

ProviderDomainsIMAPSMTP
Gmailgmail.com, googlemail.comimap.gmail.com:993smtp.gmail.com:587
Outlookoutlook.com, hotmail.com, live.comoutlook.office365.com:993smtp.office365.com:587
Yahooyahoo.comimap.mail.yahoo.com:993smtp.mail.yahoo.com:587
iCloudicloud.com, me.com, mac.comimap.mail.me.com:993smtp.mail.me.com:587
Fastmailfastmail.com, fastmail.fmimap.fastmail.com:993smtp.fastmail.com:587
Zohozoho.com, zohomail.comimap.zoho.com:993smtp.zoho.com:587

Explicit host/port in the config always takes precedence over auto-detection.

TLS modes

TLS mode is auto-detected from port:

PortProtocolMode
993IMAPImplicit TLS
143IMAPSTARTTLS
465SMTPImplicit TLS
587SMTPSTARTTLS

Override with "use_starttls": true or "use_starttls": false in the account object. Omit for auto-detection (recommended).

OAuth2 authentication

For providers that support it (Gmail, Outlook), you can use OAuth2 instead of app passwords. This uses the device code flow (RFC 8628) — no browser redirect needed.

  1. Create OAuth2 credentials in the provider's developer console (Google Cloud Console or Azure AD)
  1. Configure the account with auth_method: "oauth2":
   [

{ "id": "gmail", "email": "user@gmail.com", "username": "user@gmail.com", "auth_method": "oauth2", "oauth_client_id": "your-client-id.apps.googleusercontent.com", "oauth_client_secret": "your-client-secret" } ]

  1. On first connection, the server initiates the device code flow — printing a verification URL and code to stderr. Visit the URL and enter the code to authorize.
  1. Tokens are persisted in ~/.config/mcp-email/tokens/ and automatically refreshed. Subsequent connections reuse the stored token without re-authorization.

Supported OAuth2 providers: Gmail (gmail.com, googlemail.com) and Outlook (outlook.com, hotmail.com, live.com).

Environment variables
VariableRequiredDefaultDescription
EMAIL_CONFIG_FILEYes*—Path to JSON config file
EMAIL_ACCOUNTSYes*—JSON array of account configs (inline)
EMAIL_DEFAULT_ACCOUNTNoFirst accountDefault account ID
EMAIL_IMAP_TIMEOUT_MSNo30000IMAP operation timeout (ms)
EMAIL_SMTP_TIMEOUT_MSNo30000SMTP operation timeout (ms)
EMAIL_IMAP_RATE_LIMITNo60IMAP requests/minute/account
EMAIL_SMTP_RATE_LIMITNo100SMTP sends/hour/account
MAX_ATTACHMENT_SIZE_MBNo18Max size per attachment (MB)
MAX_TOTAL_ATTACHMENT_SIZE_MBNo18Max total attachment size per message (MB)
MAX_DOWNLOAD_SIZE_MBNo25Max attachment download size (MB)
EMAIL_POOL_CLOSE_TIMEOUT_MSNo5000Pool close timeout (ms)
EMAIL_DEBUGNofalseDebug logging to stderr
LOG_LEVELNoinfoLog level: debug, info, warn, error
LOG_FORMATNojsonLog format: json or text

*One of EMAIL_CONFIG_FILE or EMAIL_ACCOUNTS is required.

Config file permissions

The config file contains account passwords. Always restrict access:

chmod 600 ~/.config/mcp-email/accounts.json

Tools (22)

Account & folder tools
ToolDescriptionKey params
email_accountsList configured accounts with connection status—
email_foldersList all folders with unread/total countsaccount?
email_folder_createCreate new foldername, account?
Message listing
ToolDescriptionKey params
email_listList messages in folderfolder?, limit?, offset?, includeBody?, account?
email_unreadList unread messagesfolder?, limit?, includeBody?, account?
email_searchSearch subject and bodyquery, from?, to?, since?, before?, folder?, limit?, includeBody?, account?
Message operations
ToolDescriptionKey params
email_getGet full message by IDid
email_read_bodyRead email body with paginationid, offset?, limit?, format?
email_moveMove message to folderid, destination
email_copyCopy message to folderid, destination
email_deleteDelete message (trash or permanent expunge)id, permanent?
email_mark_readMark as read/unreadid, read
email_flagFlag/unflag messageid, flagged
email_replyReply to a message (sets In-Reply-To, References, quotes body)id, body, all?, cc?, bcc?, isHtml?, account?
email_forwardForward a message (re-attaches original attachments)id, to, body?, cc?, bcc?, isHtml?, account?
email_batchBatch operations on multiple messagesaction, ids, destination?, permanent?, read?, flagged?
Attachments & threads
ToolDescriptionKey params
email_attachment_listList attachments on a messageid
email_attachment_getDownload attachment by indexid, index, saveTo?
email_threadGet conversation thread (searches across INBOX, Sent, Archive, and All Mail)id
Send & drafts
ToolDescriptionKey params
email_sendSend via SMTP with optional attachmentsto, subject, body, cc?, bcc?, replyTo?, isHtml?, attachments?, account?
email_draft_createSave draft with optional attachmentsto?, subject?, body?, cc?, bcc?, isHtml?, attachments?, account?
email_draft_sendSend existing draftid

All optional account params default to the configured default account.

Search

email_search searches both subject and body using IMAP SEARCH OR (SUBJECT "q") (BODY "q").

Optional filters narrow the candidate set server-side before body scanning:

FilterFormatExample
fromEmail address or name"alice@example.com"
toEmail address or name"bob@example.com"
sinceYYYY-MM-DD"2026-01-01"
beforeYYYY-MM-DD"2026-02-01"

The existing operation timeout (default 30s) prevents hung body searches on large mailboxes.

Attachments

email_send and email_draft_create accept an attachments p

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx