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

ManyContacts - WhatsApp Business MCP

โดย manycontactsรุ่น 1.1.1i★ –iรันบนเครื่อง
ชื่อใน registryio.github.ManyContacts/whatsapp-mcp

ติดตั้ง

ภาพรวม

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

WhatsApp Business MCP: send messages, manage contacts, campaigns, and AI agents.

สามเสาของ PopNx MCP

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

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

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

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

ติดตั้ง

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

ก่อนติดตั้ง

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

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

  • npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง

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

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

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

{
  "mcpServers": {
    "whatsapp": {
      "command": "npx",
      "args": [
        "-y",
        "@manycontacts/mcp"
      ],
      "env": {
        "MC_CLI_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

claude mcp add whatsapp --env MC_CLI_TOKEN='ใส่ค่าของคุณ' -- npx -y @manycontacts/mcp

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

เปิดใน Cursor

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

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

{
  "mcpServers": {
    "whatsapp": {
      "command": "npx",
      "args": [
        "-y",
        "@manycontacts/mcp"
      ],
      "env": {
        "MC_CLI_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

เปิดใน VS Code

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

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

{
  "servers": {
    "whatsapp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@manycontacts/mcp"
      ],
      "env": {
        "MC_CLI_TOKEN": "ใส่ค่าของคุณ"
      }
    }
  }
}

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

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

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

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

  • MC_CLI_TOKEN ความลับ จำเป็น env
    ManyContacts CLI authentication token. Get one at https://manycontacts.com or via: npx @manycontacts/cli auth login

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

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

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

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

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

  • ✓ ผ่าน

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

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

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

    ยังมีคนดูแล

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

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

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

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

  • – ไม่เกี่ยว

    endpoint ตอบ

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

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

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

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

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

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

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

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

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

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

ManyContacts - WhatsApp Business MCP ปลอดภัยไหม?

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

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

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

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

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

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

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

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

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

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

ในหมวดเดียวกันมี 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อัปเดต 32 วันที่ผ่านมา
ติดตั้ง

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 รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

ManyContacts MCP Server

MCP (Model Context Protocol) server for ManyContacts — the WhatsApp Business CRM. Enables AI agents (Claude, Cursor, Windsurf, etc.) to manage contacts, send WhatsApp messages, run campaigns, configure AI auto-replies, and perform all CRM operations programmatically.

Quick Start

1. Get your CLI token
npm install -g @manycontacts/cli

Already have an account? Log in:

mc auth login --email user@example.com --password mypassword

mc auth whoami # verify it works

New to ManyContacts? Create an account and connect your WhatsApp channel:

# Register a new account

mc auth register --email user@example.com --name "My Company"

Connect a WhatsApp Business channel (choose one method):

mc channels connect whatsapp-api # WhatsApp Cloud API (recommended) mc channels connect coexistence # ManyContacts coexistence mode mc channels connect qr # QR code pairing

Verify everything is set up

mc auth whoami mc channels list

2. Configure in your MCP client
Claude Desktop / Claude Code

Add to your MCP settings (~/.claude/claude_desktop_config.json or similar):

{

"mcpServers": { "manycontacts": { "command": "npx", "args": ["@manycontacts/mcp"], "env": { "MC_CLI_TOKEN": "your-cli-token-here" } } } }

Cursor

Add to .cursor/mcp.json:

{

"mcpServers": { "manycontacts": { "command": "npx", "args": ["@manycontacts/mcp"], "env": { "MC_CLI_TOKEN": "your-cli-token-here" } } } }

Tip: If you've already logged in via the CLI (mc auth login), the token is stored in ~/.manycontacts/config.json and the MCP server will pick it up automatically — no MC_CLI_TOKEN env var needed.


Available Tools (55 total)

Account & Context
manycontacts.context

Get a full overview of your ManyContacts account: connected WhatsApp Business channels, contact/user/tag counts, active AI agents, and enabled features. Use this first to understand the account state before performing other operations.

ParameterTypeRequiredDescription
*(none)*——No parameters needed

manycontacts.org.get

Get WhatsApp Business organization/account information including name, timezone, and all configuration settings.

ParameterTypeRequiredDescription
*(none)*——No parameters needed

manycontacts.org.update

Update organization-level settings such as timezone, auto-reply messages, auto-close behavior, and webhook configuration.

ParameterTypeRequiredDescription
timezonestringNoTimezone identifier (e.g. Europe/Madrid, America/New_York)
auto_reply_openbooleanNoEnable auto-reply when a new chat is opened
auto_reply_open_textstringNoAuto-reply message text when chat opens
auto_reply_closebooleanNoEnable auto-reply when a chat is closed
auto_reply_close_textstringNoAuto-reply message text when chat closes
auto_reply_close_minutesnumberNoMinutes of inactivity before auto-close
auto_reply_awaybooleanNoEnable away/out-of-hours auto-reply
auto_reply_away_textstringNoAway auto-reply message text
webhooks_forwardbooleanNoEnable webhook forwarding to an external URL
webhooks_forward_urlstringNoExternal URL to forward webhook events to

manycontacts.org.schedule.get

Get the business hours schedule. Returns the configured working hours for each day of the week, used to determine when the "away" auto-reply activates.

ParameterTypeRequiredDescription
*(none)*——No parameters needed

manycontacts.org.apikey

Get the organization's REST API key for direct API integrations.

ParameterTypeRequiredDescription
*(none)*——No parameters needed

manycontacts.channels.list

List all connected WhatsApp Business and Instagram channels. For WhatsApp channels, shows the phone number and connection status. For Instagram channels, shows the username.

ParameterTypeRequiredDescription
*(none)*——No parameters needed

Contacts

All contact operations use phone numbers as identifiers (with country code, no + prefix, e.g. 34600000000).

manycontacts.contacts.list

List WhatsApp Business contacts with advanced filters. Returns paginated results with has_more indicator. Filters can be combined freely.

ParameterTypeRequiredDescription
pagenumberNoPage number (default: 1)
limitnumberNoResults per page, max 200 (default: 50)
open"true" \"false"NoFilter by conversation open/closed status
assigned_tostringNoFilter by assigned user ID
tagsstringNoComma-separated tag IDs — contacts must have all specified tags
teamstringNoFilter by team ID
stagesstringNoComma-separated funnel stage IDs
date_fromstringNoFilter contacts updated after this date (YYYY-MM-DD)
date_tostringNoFilter contacts updated before this date (YYYY-MM-DD)
unread"true"NoOnly contacts with unread messages
blacklist"true"NoOnly blacklisted contacts
scheduled"true"NoOnly contacts with pending scheduled messages

Note: When using date_from and date_to together, the range cannot exceed 90 days.

Response:

{

"ok": true, "data": [ { "name": "John Doe", "number": "34600000000", "open": true, "last_user_id": "uuid-of-assigned-user", "source": "whatsapp", "notes": "VIP customer", "customFields": {}, "createdAt": "2026-01-15T10:30:00Z" } ], "pagination": { "page": 1, "limit": 50, "has_more": true } }


manycontacts.contacts.get

Get detailed information about a specific contact including their tags, teams, funnel stages, and custom fields.

ParameterTypeRequiredDescription
phonestringYesPhone number with country code (e.g. 34600000000)

manycontacts.contacts.create

Create a new WhatsApp Business contact in the CRM. The phone number will be normalized automatically (leading + removed).

ParameterTypeRequiredDescription
phonestringYesPhone number with country code (e.g. 34600000000)
namestringNoContact display name
notesstringNoFree-text notes for the contact

manycontacts.contacts.update

Update an existing contact's name, notes, or custom fields.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact to update
namestringNoNew contact name
notesstringNoNew contact notes
customFieldsstringNoCustom fields as a JSON string (e.g. '{"company":"Acme"}')

manycontacts.contacts.delete

Permanently delete a contact from the CRM.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact to delete

manycontacts.contacts.assign

Assign a contact to a specific team member. The assigned user will see this contact in their personal inbox.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact
userIdstringYesUser ID to assign the contact to (use manycontacts.users.list to get IDs)

manycontacts.contacts.unassign

Remove the current user assignment from a contact. The contact returns to the general unassigned inbox.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact

manycontacts.contacts.close

Close a WhatsApp conversation. Closed conversations are archived and won't appear in the active inbox.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact

manycontacts.contacts.open

Reopen a previously closed WhatsApp conversation. The contact will appear again in the active inbox.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact

manycontacts.contacts.tag.add

Add a tag to a contact. Use manycontacts.tags.list to get available tag IDs.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact
tagIdstringYesTag ID to add

manycontacts.contacts.tag.remove

Remove a tag from a contact.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact
tagIdstringYesTag ID to remove

manycontacts.contacts.team.add

Add a team to a contact. Use manycontacts.teams.list to get available team IDs.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact
teamIdstringYesTeam ID to add

manycontacts.contacts.team.remove

Remove a team from a contact.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact
teamIdstringYesTeam ID to remove

manycontacts.contacts.set_stage

Move a contact to a specific stage within a sales funnel/pipeline. Use manycontacts.funnels.list to get funnel and stage IDs.

ParameterTypeRequiredDescription
phonestringYesPhone number of the contact
funnel_idstringYesFunnel ID
stage_idstringYesTarget stage ID within the funnel

manycontacts.contacts.bulk

Perform bulk operations on multiple contacts at once. Supports closing, opening, assigning, tagging, and team assignment.

ParameterTypeRequiredDescription
action"close" \"open" \"assign" \"add_tag" \"add_team"YesBulk action to perform
phonesstringYesComma-separated phone numbers (e.g. "34600000000,34600000001")
valuestringNoValue required by the action: user ID for assign, tag ID for add_tag, team ID for add_team. Not needed for close or open.

Messaging
manycontacts.messages.list

List WhatsApp conversation messages for a contact. Returns messages in a conversation-friendly format with timestamps, status, and sender information.

ParameterTypeRequiredDescription

| phone | string | Yes | Phone n

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

ถาม PopNx