Skip to main content
Glama

WhaTools — WhatsApp tools

Server Details

WhatsApp tools: wa.me links, QR codes, share widgets, phone validation, API rate card & limits.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.

Claim WhaTools — WhatsApp tools

Claiming proves that you control this connector and unlocks listing details, thumbnails, health checks, and analytics. It does not change or interrupt the running server.

Complete one method below. Compare the methods and read troubleshooting steps.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
procom-dev/whatools
GitHub Stars
0

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 8 of 8 tools scored. Lowest: 3.5/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: link generation (single vs bulk), QR, widget building, pricing estimation vs rate lookup, limits lookup, and phone validation. The related pricing tools are well-differentiated by their descriptions (calculator vs rate card).

Naming Consistency5/5

All tool names follow a consistent verb_noun snake_case pattern (build_, estimate_, generate_, get_, validate_). The modifiers like 'bulk' and 'api_cost' are clear and do not break the pattern.

Tool Count5/5

8 tools is well within the ideal 3-15 range. The server covers a focused set of WhatsApp utilities without excess, each tool earning its place for common use cases.

Completeness5/5

The tool surface provides comprehensive coverage for generating, estimating, validating, and looking up WhatsApp-related data. The explicit note that no sending API exists and validation doesn't check registration is intentional, not a gap.

Available Tools

8 tools
build_whatsapp_share_widgetAInspect

Build embeddable "Share on WhatsApp" widget HTML (web and email variants) with a link preview card and a pre-filled message. Returns self-contained HTML.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe URL being shared.
titleYesTitle shown on the preview card.
domainNoDomain label shown on the card (optional).
thumbnailNoPreview image URL (optional).
buttonTextNoCall-to-action button text (optional; defaults to "Share on WhatsApp").
descriptionYesMessage text shown above the card (supports *bold*, _italic_, ~strike~).
includeCreditNoAppend a small "Widget by wha.tools" credit line under the widget (optional; default false).
buttonPlacementNoWhere to place the share button relative to the card (optional).
Behavior3/5

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

With no annotations, the description must carry the full transparency burden. It discloses that the tool builds HTML, includes a preview card and pre-filled message, and returns self-contained HTML. However, it leaves 'web and email variants' vague—no parameter controls the variant—and doesn't describe potential external dependencies or defaults.

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?

One dense sentence that front-loads the core function ('Build embeddable Share on WhatsApp widget HTML') and ends with the output type. No filler words; every phrase earns its place.

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?

Given the tool has 8 parameters, no output schema, and no annotations, the description provides a high-level purpose and output, but omits how the 'web and email variants' are selected and offers no usage context beyond a builder. It is minimally adequate but has gaps.

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%, so parameters are already well-documented (e.g., 'description' supports bold/italic/strikethrough). The description's 'pre-filled message' adds only minimal extra meaning, so a baseline score of 3 is appropriate.

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 uses a specific verb 'Build' with a clear resource 'embeddable Share on WhatsApp widget HTML' and specifies the output ('Returns self-contained HTML'). This clearly distinguishes it from siblings like generate_whatsapp_link, which produce links rather than widget markup.

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?

The description implies usage through 'embeddable' and 'web and email variants', suggesting it's for embedding share buttons, but it never explicitly states when to choose this tool over generate_whatsapp_link or when not to use it. No alternatives are named.

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

estimate_whatsapp_api_costAInspect

Estimate the monthly WhatsApp Business (Cloud) API cost under Meta's current per-message pricing (in effect since 1 July 2025). Given a country/market and monthly volumes of marketing, utility and authentication template messages, returns an itemized breakdown and total in USD. Marketing is always billed; utility can be reduced by the share sent inside a free 24-hour service window; authentication is billed at the lowest rates; service replies are free. 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.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketYesRecipient market as a 2-letter code (e.g. "US", "IN", "BR", "GB", "DE"), or "ROW" for rest of world. Rates vary widely by market.
utilityNoMonthly count of utility template messages (order updates, receipts, reminders).
marketingNoMonthly count of marketing template messages (promotions, offers).
authenticationNoMonthly count of authentication template messages (one-time passcodes).
utility_free_within_window_pctNoPercentage (0–100) of utility messages sent inside a free 24-hour customer-service window; these are not billed. Optional, default 0.
Behavior5/5

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 the billing rules (marketing always billed, utility reduced by free window, authentication lowest rates, service replies free), states it runs locally, and notes it returns an itemized breakdown and total in USD. This is thorough for a non-destructive calculation tool.

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 five sentences, front-loaded with purpose, and each sentence adds valuable information (inputs/outputs, billing behavior, local execution, BSP caveat). No fluff or redundancy.

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

Completeness5/5

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

Despite no output schema, the description explicitly states what is returned (itemized breakdown and total in USD) and covers all necessary operational details: pricing basis, billing logic, platform fee scope, and caveats. This is complete for an agent to invoke correctly.

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% (all parameters have descriptions), so baseline is 3. However, the description adds semantic context beyond the schema by explaining how message categories are billed and how utility_free_within_window_pct affects cost, enriching understanding of the parameters.

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 'estimate' and the resource 'monthly WhatsApp Business (Cloud) API cost', and distinguishes this tool from siblings like get_whatsapp_rates by focusing on cost estimation rather than rate lookup. It also specifies the pricing context (since 1 July 2025).

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?

Provides clear context: use it to obtain a monthly cost estimate, and highlights that it is Meta's platform fee only, not a quote including BSP fees. It does not explicitly name alternatives or when-not-to-use, but the context is sufficient for an agent to decide.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
phoneNoRecipient phone number in international format (digits only; optional).
messageNoThe message to pre-fill in the chat (optional).
Behavior2/5

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.

Conciseness5/5

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.

Completeness3/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
areaNoRestrict the result to one area (e.g. "groups", "messages", "calls", "channels", "account", "business", "api"). Optional; omit for every area.
Behavior4/5

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 that the data is single-sourced and dated, returns a last-verified date, source, and licence, and notes that it runs locally. This goes beyond a simple functional statement, though it does not discuss error handling or edge cases.

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 three sentences, front-loaded with the core purpose, then enumerates scope, output, provenance, and usage recommendation. Every sentence earns its place, and the density is appropriate for the tool's complexity.

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

Completeness5/5

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

The tool is simple (one optional parameter, no output schema), and the description fully covers what it does, what it returns, when to use it, and the provenance of the data. It is complete for an agent to correctly select and invoke this 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?

Schema coverage for the only parameter is 100%, so the baseline is 3. The description's mention of 'optionally filtered to one area' adds no new information beyond the schema's own parameter description, and while it lists content areas, this is more about output than parameter semantics.

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 opens with a specific verb ('Look up') and a clear resource ('WhatsApp's current limits and rules from the site's dated reference table'), then enumerates the exact categories covered. This clearly differentiates it from sibling tools like generate_whatsapp_link or get_whatsapp_rates.

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 explicitly advises using this tool over recalling limits from memory, providing concrete when-to-use guidance. It does not name alternative tools or state when not to use it, but the context is clear and the tool's niche is obvious given the sibling set.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
marketNoRecipient 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.
currencyNoOne 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_tiersNoWhen 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.
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that it 'Runs locally,' specifies the output elements (rates, currency, dates, source link, CC BY licence), and clarifies the fee structure and its lowness. It does not mention error handling or rate limits, but for a read-only lookup, the disclosed behavior is substantive.

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 dense but each sentence serves a purpose, covering purpose, usage, output, and caveats. It is longer than a simple line but packed with essential info, so it earns its length without being redundant.

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 no output schema, the description compensates by enumerating return contents (rates per category, currency, effective/last-verified dates, source link, licence). It also explains the financial context (platform fee floor) and local execution. The only gap is not describing the exact output structure, but the enumerated fields give sufficient confidence.

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% with detailed descriptions, but the tool description adds meaningful interaction semantics: explaining the effect of omitting 'market' (returns whole card) and that 'include_tiers' is ignored without a single market. This enriches understanding beyond the field-level 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 uses a specific verb ('Look up') and clearly identifies the resource: Meta's official WhatsApp Business API per-message rates from the dated rate card. It also distinguishes from siblings by stating 'the same figures the pricing calculator uses' and 'prefer this over recalling or guessing prices,' setting it apart from cost estimation and link generation tools.

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?

It explains how to tailor the query ('Give a market to get one row, or omit it for every market in the chosen currency') and when to include volume tiers. It also cautions that this is 'Meta's platform fee only' and should be treated as a floor, guiding users on interpretation. However, it does not explicitly contrast with the `estimate_whatsapp_api_cost` sibling, leaving room for clearer exclusion.

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
phoneYesThe phone number to validate. International format with a leading "+" is best; otherwise also pass `country`.
countryNoISO 3166-1 alpha-2 country code (e.g. "GB", "US") assumed when the number has no country code. Optional.
Behavior5/5

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

With no annotations, the description carries the full burden. It discloses offline/local execution, the valid vs possible distinction, and the explicit non-capability of checking WhatsApp registration—behaviors an agent needs to know.

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 concise yet information-dense, with no fluff. It front-loads the main action and packs in all needed details in two sentences.

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

Completeness5/5

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

For a tool with no output schema and no annotations, the description is exceptionally complete: it covers inputs, outputs, operational context, and exclusions. There are no apparent gaps.

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 the description adds valuable usage semantics: international format with '+' is best, and country should be passed otherwise. This goes beyond the schema's simple field 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?

The description opens with the specific verb 'Validate and inspect' and enumerates exact outputs (valid/possible, country, calling code, line type, formats, wa.me link). It clearly distinguishes itself from sibling tools that generate WhatsApp links or estimate costs.

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?

It does not explicitly name alternative tools but gives clear context: runs locally/offline, and explicitly says it does NOT check WhatsApp registration, which prevents misuse. This is valuable exclusionary guidance, though no direct sibling comparison is stated.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Provides 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.
    18
    3
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    Bridges 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.
    63
    21
    4
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.