WhaTools — WhatsApp tools
Server Details
WhatsApp tools: wa.me links, QR codes, share widgets, phone validation, API rate card & limits.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- Repository
- procom-dev/whatools
- GitHub Stars
- 0
TDQS
Scored across 8 tools
Each tool targets a distinct WhatsApp utility: widget building, cost estimation, single/bulk link generation, QR code, limits, rates, and phone validation. No overlap or ambiguity; an agent can easily select the right tool for a specific task.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., generate_whatsapp_link, get_whatsapp_rates, validate_phone_number). The verbs (build, estimate, generate, get, validate) are distinct and correspond to their actions, making the pattern predictable and readable.
With 8 tools, the set is well-scoped for a WhatsApp utility server. Each tool covers a different practical need (links, QR, validation, cost, limits, rates, widget) without redundancy, and the count is neither thin nor overwhelming.
The tool surface covers the core WhatsApp utility workflows: generating click-to-chat links (single and bulk), QR codes, phone validation, cost estimation, and reference lookups for limits and rates. It intentionally avoids message sending (stated clearly), so there are no dead ends or obvious gaps within its stated purpose.
Available Tools
8 toolsestimate_whatsapp_api_costAInspect
Estimate the monthly WhatsApp Business (Cloud) API cost under Meta's per-message pricing (in effect since 1 July 2025). Given a country/market and monthly volumes of marketing, utility, authentication and (optionally) service messages, returns an itemized breakdown and total in USD. Marketing is always billed; utility and authentication are billed with volume-tier discounts in many markets. As of 1 October 2026 utility is billed even inside the customer-service window (previously free there), and service messages are billed at the utility rate with the first 1,000 per phone number each month free. Pass service to include them; omit it to leave service out. Runs locally. This is Meta's platform fee only: a BSP/provider adds its own fee on top, so treat it as a floor, not a quote.
| Name | Required | Description | Default |
|---|---|---|---|
| market | Yes | Recipient market as a 2-letter code (e.g. "US", "IN", "BR", "GB", "DE"), or "ROW" for rest of world. Rates vary widely by market. | |
| service | No | Monthly count of service messages (free-form replies inside a customer-opened window). Optional. When given, the first 1,000 per phone number each month are free and the rest bill at the market's utility rate; omit to leave service out of the estimate. | |
| utility | No | Monthly count of utility template messages (order updates, receipts, reminders). | |
| marketing | No | Monthly count of marketing template messages (promotions, offers). | |
| authentication | No | Monthly count of authentication template messages (one-time passcodes). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden and exceeds it: it discloses the billing changes ('As of 1 October 2026 utility is billed even inside the customer-service window'), the volume-tier discounts, the free tier for service messages, and the fact that the calculation runs locally. It also sets expectations about the output being a floor, not a quote. This is comprehensive behavioral disclosure for a local calculator.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph, but every sentence earns its place: purpose, billing rules, parameter handling, execution, and a caveat. It is technically longer than ideal, yet not bloated—each clause adds necessary information. The front-loaded purpose makes it scannable despite its length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a calculator with five parameters and no output schema, the description adequately covers output ('itemized breakdown and total in USD'), parameter semantics, and edge cases (optional service, market variants). It doesn't describe the exact breakdown structure or rounding behavior, but that is minor given the tool's straightforward nature and the absence of an output schema requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema coverage is 100%, the description adds meaningful context beyond the field descriptions: it clarifies that marketing is always billed, utility/authentication have tier discounts, and service messages follow a specific free-1000 rule. The 'market' parameter's locality is also contextualized in the billing rules. Structural schema already defines enums/labels, so the added value is the pricing logic, which is significant.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Estimate') and resource ('monthly WhatsApp Business (Cloud) API cost'), and clearly differentiates from siblings like get_whatsapp_rates and get_whatsapp_limits by focusing on cost estimation with billing rules and a USD total. It also mentions the specific pricing model (in effect since 1 July 2025), leaving no ambiguity about what the tool computes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the tool's scope ('Meta's platform fee only ... treat it as a floor, not a quote') and which parameters to include (e.g., 'Pass `service` to include them; omit it to leave service out'). It does not explicitly contrast against sibling tools, but the use case is evident from the stated purpose and the note about running locally. Minor gap: no explicit 'use this instead of get_whatsapp_rates for a full cost projection'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_bulk_whatsapp_linksAInspect
Generate personalized WhatsApp click-to-chat (wa.me) links for a list of contacts from one message template. Everything uses a single {{…}} syntax: {{field}} placeholders are replaced per contact; {{field|fallback}} supplies a default for empty/missing fields; {{FirstName}} is derived from a name field; and {{option a|option b}} spintax (a group whose first option is not a field) picks one variation per contact (stable per number) so messages are not identical. Returns a JSON array of {phone, message, link}. Runs locally; no message is sent: each link opens WhatsApp with the text pre-filled and a human taps send.
| Name | Required | Description | Default |
|---|---|---|---|
| contacts | Yes | Up to 500 contacts. Each needs a "phone" (international format, digits only) plus any placeholder fields as string properties. | |
| template | Yes | Message template with {{field}} placeholders, e.g. 'Hello {{name}}, see you at {{time}}'. Supports {{field|fallback}} defaults, {{FirstName}} derived from a name field, and {{a|b|c}} spintax variation (a {{…}} group whose first option isn't a field). Placeholder matching is case-insensitive; WhatsApp formatting (*bold*, _italic_) is kept. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
It explicitly discloses that no message is sent, the operation runs locally, and each link opens WhatsApp with pre-filled text requiring human action to send. This fully covers side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is thorough but each sentence adds necessary detail about the single-template constraint, placeholder syntax, output format, and safety guarantee. No redundant content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of the template syntax and bulk operation, the description fully covers what the tool does, its return format, and its non-sending behavior, leaving no critical gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already covers the parameters and placeholder syntax. The description adds useful detail on case-insensitivity and preserving WhatsApp formatting, going modestly beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates personalized WhatsApp click-to-chat links for a list of contacts from a single template, which distinguishes it from sibling tools like generate_whatsapp_link that handle individual links.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (bulk generation for many contacts) but does not explicitly mention alternatives such as 'use this instead of the single-link tool when you have multiple contacts.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_whatsapp_linkAInspect
Generate a WhatsApp click-to-chat (wa.me) link with an optional phone number and pre-filled message. Runs locally; no message is sent.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | No | Recipient phone number in international format (digits only; optional). Omit to create a share link with no specific recipient. | |
| message | No | The message to pre-fill in the chat (optional). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full behavioral disclosure. It explicitly states 'Runs locally; no message is sent,' which is a key side-effect trait. However, it does not describe the exact return format or any other limitations, so it is not perfect.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the purpose and includes the key behavioral note. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two optional parameters and no output schema, the description provides sufficient context including local execution and message behavior. It lacks explicit return format details, but the tool's purpose makes this largely inferable. It is complete enough for effective selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the description merely restates 'optional phone number and pre-filled message' without adding any new meaning. The schema already provides detailed descriptions for both parameters, so the description adds no extra semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a WhatsApp click-to-chat (wa.me) link with optional phone and message, which is a specific verb+resource. It distinguishes from siblings like generate_bulk_whatsapp_links and generate_whatsapp_qr by focusing on a single link generation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for generating a single link, but does not explicitly mention when to use it instead of alternatives such as bulk generation or QR code creation. It includes a note about running locally and not sending a message, which gives some context, but lacks clear when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_whatsapp_qrAInspect
Generate a scannable QR code (as an SVG) for a WhatsApp click-to-chat link with an optional phone number and pre-filled message.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | No | Recipient phone number in international format (digits only; optional). | |
| message | No | The message to pre-fill in the chat (optional). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the SVG output format but does not clarify whether the tool returns the SVG content, saves it to a file, or how it handles invalid phone numbers. Given the lack of safety annotations, more detail is needed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence front-loaded with the primary action and output type. It avoids extraneous details and is easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description needs to explain what the caller receives. It states 'as an SVG' but doesn't clarify whether the return is the SVG string, a download link, or something else. For a simple tool with optional inputs, this is a minor but meaningful gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides complete descriptions for both optional parameters (phone and message), so the description adds no additional meaning. Baseline of 3 is appropriate since schema coverage is 100%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: generating a scannable QR code as SVG for WhatsApp click-to-chat links. It specifies the output format (SVG) and optional parameters (phone, message), distinguishing it from sibling tools like generate_whatsapp_link which likely produces the link itself.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage—when a QR code for a WhatsApp chat link is needed—but does not explicitly state when to prefer this over alternatives or mention any exclusions. It lacks explicit comparison to siblings, but the purpose is clear enough to infer intended use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_whatsapp_limitsAInspect
Look up WhatsApp's current limits and rules from the site's dated reference table: group and community size, broadcast lists, message and media/file sizes, character counts, forwarding, calls, Channels, linked devices, and WhatsApp Business app and Business API limits. Each value is single-sourced and dated. Returns the limits (optionally filtered to one area), the last-verified date, the source and the CC BY licence. Prefer this over recalling limits from memory. They change over time. Runs locally.
| Name | Required | Description | Default |
|---|---|---|---|
| area | No | Restrict the result to one area (e.g. "groups", "messages", "calls", "channels", "account", "business", "api"). Optional; omit for every area. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that the tool runs locally, returns limits with a last-verified date and source, includes a CC BY licence, and that values are single-sourced and dated. These are the key behavioral traits for a read-only lookup, though it does not address auth or error cases, which are less relevant here.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, each earning its place: the purpose, the content scope, the return payload and provenance, and the usage advice. Slightly long but information-dense with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read-only tool with one optional parameter and no output schema, the description covers the operation, the return contents, the data source, licensing, local execution, and when to use it. Nothing essential for an agent to invoke it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the single 'area' parameter fully. The description only says 'optionally filtered to one area', which adds no meaning beyond the enum and description in the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('look up'), a specific resource (WhatsApp's current limits and rules), and the source ('dated reference table'). Lists the areas covered, making the scope clear. It does not explicitly name sibling tools like get_whatsapp_rates, but the subject matter is distinct enough that an agent can tell them apart.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit guidance to prefer this tool over recalling limits from memory because limits change over time. This is a clear use case, though it does not mention alternatives or exclusions like when to use get_whatsapp_rates instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_whatsapp_ratesAInspect
Look up Meta's official WhatsApp Business (Cloud) API per-message rates from the site's dated rate card, the same figures the pricing calculator uses, so prefer this over recalling or guessing prices. Give a market to get one row, or omit it for every market in the chosen currency. Returns the current list price per template category (marketing, utility, authentication, and authentication-international where a market has one), the currency, the effective and last-verified dates, the source link and the CC BY licence. Optionally include the published volume-tier thresholds and rates for a single market. This is Meta's platform fee only: a BSP/provider adds its own fee on top, so treat it as a floor. Runs locally.
| Name | Required | Description | Default |
|---|---|---|---|
| market | No | Recipient market as a 2-letter code (e.g. "US"/"NA", "IN", "BR", "GB", "DE") or a "Rest of" region id. Omit to return the whole rate card for the chosen currency. | |
| currency | No | One of the 16 currencies Meta publishes a card in (USD, EUR, GBP, INR, IDR, BRL, MXN, ARS, COP, AED, SAR, AUD, MYR, PEN, CLP, SGD). Rates are stored per currency exactly as Meta prints them, never converted. Optional, default USD. | |
| include_tiers | No | When a single market is given, also return that market's published volume-tier thresholds and per-band rates for utility and authentication. Ignored when no market is given. Optional, default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses key behaviors: 'Runs locally,' 'Rates are stored per currency exactly as Meta prints them, never converted,' and 'This is Meta's platform fee only... treat it as a floor.' It does not mention error handling or side effects, but 'Look up' implies read-only behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single dense paragraph that flows logically: purpose, usage, output contents, optional tier behavior, and a caveat about fees. Each sentence adds new information, and there is no fluff or redundancy despite the length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema, the description adequately describes the return contents: per-message rates by template category, currency, effective/last-verified dates, source link, and CC BY licence. It also clarifies the scope (platform fee only, local execution), but could be slightly more precise about the data structure (e.g., list vs object).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover 100% of parameters, and the prose adds extra meaning: omitting market returns the whole card, include_tiers is ignored without a market, and currency rates are never converted. This goes beyond the basic enum descriptions, clarifying exactly how each parameter affects the output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Look up Meta's official WhatsApp Business (Cloud) API per-message rates from the site's dated rate card.' It distinguishes itself from siblings by noting it provides the same figures used by the pricing calculator and 'Runs locally,' differentiating it from cost estimation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides usage instructions such as 'Give a market to get one row, or omit it for every market in the chosen currency' and explains the optional include_tiers behavior. It also advises to 'prefer this over recalling or guessing prices,' but does not explicitly mention when to use alternative tools like estimate_whatsapp_api_cost, though this is inferable from the sibling context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_phone_numberAInspect
Validate and inspect a phone number with libphonenumber: whether it is valid (a real, allocated number) and/or possible (right length), its country, calling code, line type (mobile / landline / VoIP / toll-free / …) and every standard format (E.164, international, national) plus a wa.me link. Runs locally and offline. Does NOT check whether the number is registered on WhatsApp. There is no such API here.
| Name | Required | Description | Default |
|---|---|---|---|
| phone | Yes | The phone number to validate. International format with a leading "+" is best; otherwise also pass `country`. | |
| country | No | ISO 3166-1 alpha-2 country code (e.g. "GB", "US") assumed when the number has no country code. Optional. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It transparently states the tool runs locally and offline, performs read-only inspection, and explicitly lists its outputs. It also clarifies what it does NOT check, providing complete behavioral transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, structured sentence that front-loads the core action and then enumerates output items. It is dense but not verbose, and the formatting in the provided description is clean. It could be slightly more concise, but it is well organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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, the description adequately summarizes the return content, including validity, country, line type, formats, and the wa.me link. It also provides context about offline execution and what is not covered. It does not specify the exact output structure, but the summary is sufficient for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, and the tool description adds meaningful guidance beyond the schema, such as the 'leading +' best practice and the conditional need for `country`. This enrichment justifies a score above the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: validate and inspect a phone number using libphonenumber, covering validity, possibility, country, calling code, line type, and formats. This specific verb-resource pairing distinguishes it from sibling tools that focus on WhatsApp link generation and cost estimation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides useful usage guidance, including the recommendation to use a leading '+' or pass `country`, and explicitly states what it does not do (check WhatsApp registration). It could more directly contrast with sibling tools, but the negative statement and parameter hints make the appropriate use case clear.
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 tool update
- Changed
estimate_whatsapp_api_cost1 field changed- added
Input schema / properties / serviceAdded value: +{ + "description": "Monthly count of service messages (free-form replies inside a customer-opened window). Optional. When given, the first 1,000 per phone number each month are free and the rest bill at the market's utility rate; omit to leave service out of the estimate.", + "type": "number" +}
Related MCP Connectors
WhatsApp for your app or AI agent over OAuth2 — the same connections WASync runs inside your CRM.
WhatsApp CRM for AI agents: search contacts, read chats, manage the sales pipeline, send messages.
- TokolakuOAuthid.tokolaku
WhatsApp Business API platform for Indonesian SMBs: messages, inbox, products, orders, webhooks.
Send and schedule SMS and WhatsApp messages, manage contacts and templates, and track delivery.
Related MCP Servers
- AlicenseAqualityCmaintenanceProvides comprehensive WhatsApp Business API functionality with 18 tools for sending messages, media, interactive buttons/lists, templates, reactions, and managing message status through the PyWA library.183MIT
- AlicenseNot gradedqualityDmaintenanceProvides a standardized interface for interacting with WhatsApp's tools and services through a unified API.1MIT
- AlicenseCqualityCmaintenance244 WhatsApp Business tools for AI agents: send messages, automate workflows, run marketing campaigns, and manage CRM. Supports Streamable HTTP and stdio transports.10010 npm2MIT
- AlicenseBqualityBmaintenanceBridges the WhatsApp HTTP API with AI assistants to enable full control over messaging, chat management, and interactive workflows through 63 specialized tools. It allows users to automate WhatsApp tasks and receive real-time AI feedback directly on their mobile devices.6318 npm5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.