Skip to main content
Glama
chatmaid

@chatmaid/mcp

Official
by chatmaid

@chatmaid/mcp

MCP server for the Chatmaid WhatsApp Developers API. Send WhatsApp messages and manage your account from Claude Code, Cursor, Windsurf, Claude Desktop, and any other MCP-compatible AI client.

Install

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "chatmaid": {
      "command": "npx",
      "args": ["-y", "@chatmaid/mcp"],
      "env": {
        "CHATMAID_API_KEY": "sk_test_xxx_or_sk_live_xxx"
      }
    }
  }
}

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "chatmaid": {
      "command": "npx",
      "args": ["-y", "@chatmaid/mcp"],
      "env": { "CHATMAID_API_KEY": "sk_test_xxx_or_sk_live_xxx" }
    }
  }
}

Claude Code / CLI

claude mcp add chatmaid \
  --env CHATMAID_API_KEY=sk_test_xxx \
  -- npx -y @chatmaid/mcp

Related MCP server: WAHA MCP

Environment variables

Variable

Required

Description

CHATMAID_API_KEY

Yes

Your API key. Use sk_test_* for sandbox, sk_live_* for production.

CHATMAID_BASE_URL

No

Override the API base URL. Defaults to https://developers-api.chatmaid.net.

Get a key at https://developers.chatmaid.net/dashboard/api-keys.

Tools

Tool

Description

send_message

Send a WhatsApp message: fromPhoneId (use list_phone_numbers to find), to as an E.164 number or a group JID (from list_groups), plus content and/or mediaUrls, optional idempotencyKey.

list_groups

List the WhatsApp groups a connected phone can post to; returned id values are group JIDs usable as to in send_message.

list_messages

List recent messages, optionally filtered by status, phoneNumberId, with page/limit pagination.

get_message

Fetch a message by ID, including final status and timestamps.

list_inbound_messages

List messages received by your connected phone numbers (live only), optionally filtered by phoneNumberId, with page/limit pagination.

get_inbound_message

Fetch an inbound (received) message by ID (inmsg_xxx).

list_phone_numbers

List phone numbers registered to the account (scoped to your API key environment).

get_phone_number

Get details for a single phone number. Accepts internal ID or E.164.

get_phone_status

Check if a phone number is currently connected to WhatsApp. Accepts internal ID or E.164.

get_account

Get current account info (accountId, name, email, subscription status).

get_usage

Get usage stats for period = day | week | month (defaults to month).

Example prompts

Once installed, you can ask your agent things like:

  • "Send a WhatsApp message from my business number to +14155551234 saying the order has shipped."

  • "What phone numbers are connected to my Chatmaid account?"

  • "Check if message msg_abc123 was delivered."

  • "Show me the latest messages received on my business number."

  • "How much of my WhatsApp quota have I used this month?"

The agent will call the right tool automatically.

Safety

  • Always use sk_test_* keys when prototyping with agents. Messages sent with test keys are simulated end-to-end through Chatmaid's sandbox — nothing goes out to WhatsApp.

  • Promote to sk_live_* only when you've confirmed the agent's behavior.

Source

Open-source at github.com/chatmaid/mcp. PRs welcome.

License

MIT © Chatmaid

Available Tools

8 tools
get_accountA

Get current account profile (accountId, name, email, subscriptionStatus, aggregate stats).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It does not disclose whether authentication is needed, what 'aggregate stats' entails, or any side effects. As a getter, it is likely read-only, but this is not stated explicitly.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that conveys the purpose and key outputs without any redundant information. It is front-loaded and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no parameters and no output schema, but the description lists several returned fields. While it could elaborate on 'aggregate stats', it is largely complete for a simple retrieval tool. The sibling tools are entirely different, so no confusion arises.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, and the input schema is empty with 100% coverage. The description adds value by enumerating the returned fields, which is helpful for understanding the output beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Get') and the resource ('current account profile'), and lists specific fields returned (accountId, name, email, subscriptionStatus, aggregate stats). It is distinct from sibling tools which focus on messages and phone numbers.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context for when to use the tool (to retrieve account profile info), but does not explicitly mention when not to use or reference alternatives. However, the context is sufficiently clear given the sibling tools are about different resources.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_messageA

Fetch a single message by ID, including final delivery status and timestamps (createdAt, sentAt, failedAt).

ParametersJSON Schema
NameRequiredDescriptionDefault
messageIdYesThe message ID returned from send_message (e.g. msg_abc123).

TDQS

A3.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only describes the return content but does not disclose whether the operation is read-only, any authentication requirements, rate limits, or what happens for invalid IDs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that is front-loaded with the core purpose and includes specific output details. Every word adds value; no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (1 param, no output schema). The description mentions return fields (delivery status, timestamps) but does not cover all possible output fields or behavior (e.g., error handling, read-only nature). Adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, providing a baseline of 3. The description adds value by specifying the exact format of the message ID (e.g., 'msg_abc123') and that it comes from send_message, which helps agents understand the parameter's origin.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Fetch', the resource 'a single message by ID', and specifies what is included ('final delivery status and timestamps'). It distinguishes from siblings like list_messages (multiple) and send_message (send).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when you have a specific message ID to retrieve details, which distinguishes it from list_messages. However, it does not explicitly mention when not to use it or suggest alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_phone_numberB

Get details about a single registered phone number. Accepts either the internal phone ID or an E.164 number.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesEither the phone's internal ID, or its E.164 number (e.g. +14155551234).

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description must fully disclose behavior. It only says 'get details' without explaining what details are returned, error handling, or any side effects. This is insufficient for a tool that might fail with invalid identifiers.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that front-loads the verb and resource. It contains no fluff, though it could be slightly more structured to separate purpose from parameter usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and annotations, the description should explain the return value or behavior in case of invalid input. It does not, leaving the agent with incomplete context for a simple lookup tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already provides 100% coverage for the id parameter with a description matching the tool's text. The description adds no new meaning beyond confirming the two identifier formats, which is already in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets details about a single registered phone number, using a specific verb and resource. It distinguishes itself from siblings like list_phone_numbers by focusing on a single number and specifying two accepted identifier formats.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use when needing details of a single number but does not explicitly state when to use this tool versus alternatives like list_phone_numbers or get_phone_status. No when-not or alternative guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_phone_statusA

Check whether a phone number is currently connected to WhatsApp and ready to send. Accepts either the internal phone ID or an E.164 number.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesEither the phone's internal ID, or its E.164 number (e.g. +14155551234).

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries full burden. It discloses that the tool checks connectivity and accepts two ID formats, implying a read-only operation. It does not specify error cases or output details, but for a simple status check, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that immediately conveys the purpose and input requirements. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple status check without an output schema, the description is largely complete. However, it does not specify what the output represents (e.g., boolean, status text), which would enhance completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% as the parameter 'id' is described with the same information. The description adds no extra meaning beyond the schema, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('check whether'), the resource ('phone number'), and the specific condition ('connected to WhatsApp and ready to send'). It distinguishes itself from sibling tools like get_phone_number (which likely returns details) and send_message (which sends a message).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage before sending a message by checking readiness, providing clear context. However, it does not explicitly state when not to use or mention alternatives, so it lacks some explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_usageA

Get usage stats for the account over a window (day, week, or month). Returns message and API request counters.

ParametersJSON Schema
NameRequiredDescriptionDefault
periodNoReporting window. Defaults to month.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. Description mentions return of counters but lacks details on data freshness or scope (e.g., real-time? inclusive of current period?). Adequate for a simple read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence with two clauses, front-loaded verb and resource. No extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Explains inputs (period) and outputs (counters) adequately for a simple tool without output schema. Could mention read-only nature explicitly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with full enum description. Description restates 'window (day, week, or month)' without adding new meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb 'Get' and resource 'usage stats for the account' with window options. Distinct from sibling tools like get_account or list_messages.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage for retrieving account usage stats, but no explicit when-to-use or alternatives compared to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_messagesA

List recent WhatsApp messages with offset/limit pagination, optionally filtered by status or sender phone number ID. Response includes a pagination block.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (1-based). Defaults to 1.
limitNoItems per page. Defaults to 20, max 100.
statusNoFilter by message status.
phoneNumberIdNoOnly return messages sent from this phone number ID.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must disclose behavior. Mentions pagination (offset/limit), filters, and response includes a pagination block, but lacks details on sorting, default ordering (recent), and full response structure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single concise sentence front-loaded with key action and resource, followed by details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 4 parameters, no output schema, and no annotations, the description covers pagination and filters but omits details on the message object fields in the response, which an agent would need to process results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. Description adds 'recent' and 'optionally filtered', but does not enrich parameter understanding beyond schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool lists recent WhatsApp messages with pagination and optional filters. Distinguishes from siblings like get_message (single message) and send_message.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implies use for listing multiple messages but does not explicitly contrast with get_message for individual messages or specify when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_phone_numbersA

List all phone numbers registered to the current Chatmaid account (scoped to the API key's environment). Returned id values are valid fromPhoneId arguments for send_message.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full responsibility. It discloses the scope (current account and API key environment) and that ids are valid for send_message. It doesn't mention pagination or ordering, but for a simple read operation with no parameters, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise, consisting of two sentences. The first states purpose and scope, the second adds practical usage. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description provides essential context: it lists phone numbers and ids are reusable. It doesn't mention ordering or maximum results, but for a simple list, this is mostly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no parameters, so baseline is 4. The description adds context by explaining that returned ids are valid arguments for send_message, which is valuable beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all phone numbers for the current account, scoped to the API key's environment. It also explains the purpose of returned ids, distinguishing it from the get_phone_number sibling by indicating it's a list vs. a single item.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly tells when to use it: to get phone numbers for later use with send_message. It doesn't explicitly mention when not to use it or alternatives like get_phone_number for detailed info, but the context is sufficiently clear for a list operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

send_messageA

Send a WhatsApp message via Chatmaid from one of the account's connected phones. Returns the full message resource (id, status, timestamps). Use list_phone_numbers first to find a valid fromPhoneId.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromPhoneIdYesID of a phone number registered in your Chatmaid account (use list_phone_numbers to discover IDs). NOT the raw phone number.
toYesRecipient phone number in E.164 format (e.g. +14155559876).
contentNoText body of the WhatsApp message. Required if mediaUrls is empty. Max 4096 characters.
mediaUrlsNoPublic HTTPS URLs of media to attach. Required if content is empty. Combine with content for a captioned media message.
idempotencyKeyNoOptional idempotency key (max 64 chars) so retries return the original message instead of sending a duplicate.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry full burden. Discloses mutation (sending message), returns full resource, and mentions idempotency. However, lacks details on rate limits, auth requirements, cost implications, or error scenarios.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: first covers purpose and return, second provides prerequisite. Zero wasted words, efficiently front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 5-param tool with no output schema, description covers purpose, return type, parameter interplay, and prerequisite. Could add more on expected response structure, but overall sufficient.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds value: clarifies fromPhoneId is not raw number, explains content/mediaUrls interplay, max length, idempotency key. Goes beyond schema definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it sends a WhatsApp message via Chatmaid from connected phones. Specifies the action, medium, and returns full message resource with id, status, timestamps. Distinguishes from sibling tools like get_message, list_messages.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to use list_phone_numbers first to get a valid fromPhoneId. Provides clear context for tool use, though does not explicitly state when not to use it or mention alternatives beyond the prerequisite.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 8 tool updatesv0.1.0
    • First observedget_account
    • First observedget_message
    • First observedget_phone_number
    • First observedget_phone_status
    • First observedget_usage
    • First observedlist_messages
    • First observedlist_phone_numbers
    • First observedsend_message

TDQS

A4/5.0

Scored across 8 tools

Disambiguation5/5

Each tool targets a distinct resource and action: account, usage, single message, message list, phone number details, phone status, phone number list, and sending messages. No overlap in functionality.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with snake_case: get_*, list_*, send_message. Verbs are uniformly chosen (get, list, send).

Tool Count5/5

With 8 tools, the surface is well-scoped for a WhatsApp messaging API, covering account management, phone number operations, message retrieval, and sending. Neither too sparse nor excessive.

Completeness4/5

Covers core operations for the domain: account info, usage, phone number details and status, message listing with filtering, phone number listing, and sending. Minor gap in update/delete operations, but these are often limited by WhatsApp API constraints.

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

  • Drive WhatsApp from any MCP client: pair devices, send text and media, manage contacts and groups.

  • Let Claude or ChatGPT search, read and send your WhatsApp messages over MCP. OAuth sign-in.

  • WhatsMCP connects Claude and other MCP-compatible AI agents directly to WhatsApp. Send and receive text, images, documents, and voice notes; manage groups (create, add/remove members, promote admins); look up contacts and profiles; follow channels; and read call and message history — all through a standard MCP interface. For voice use cases, WhatsMCP offers SIP-based calling plans (inbound-only, or full inbound/outbound) so AI voice agents can answer and place WhatsApp calls, plus low-latency WebSocket integrations with voice agent providers like ElevenLabs. Multiple WhatsApp accounts can be paired and managed per workspace, with webhook support for real-time inbound message delivery to your own infrastructure.

  • Your own WhatsApp as an MCP server: read, search and send from any MCP client.

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables WhatsApp automation through MCP protocol, allowing users to manage sessions, send messages, handle groups/communities, and access contacts through natural language interactions with AI agents.
    5 npm
    -
  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    A self-hosted MCP server that connects AI clients to WhatsApp via the WAHA HTTP API. It enables users to manage sessions, search contacts, and send or receive messages and media directly through natural language interfaces.
    14 npm
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    Bridge WhatsApp Business Cloud API to MCP-compatible clients, enabling AI assistants to read, search, and send WhatsApp messages.
    5 npm
    1
    -