Skip to main content
Glama
EvandroSchechtel

WhatsApp Business MCP Server

update_business_profile

Modify WhatsApp Business profile details including description, address, email, and website URLs to maintain accurate business information.

Instructions

Update the WhatsApp Business profile information.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
aboutNoShort description (max 139 chars)
descriptionNoBusiness description (max 512 chars)
addressNoBusiness address
emailNoBusiness email
websitesNoBusiness website URLs (max 2)

Implementation Reference

  • The actual implementation of the WhatsApp Business profile update API call using the WhatsAppClient class.
    async updateBusinessProfile(profile: Record<string, unknown>) {
      return this.request(
        `/${this.config.phoneNumberId}/whatsapp_business_profile`,
        "POST",
        { messaging_product: "whatsapp", ...profile }
      );
    }
  • src/index.ts:351-365 (registration)
    MCP tool registration for "update_business_profile", defining the input schema using zod and linking to the WhatsAppClient implementation.
    server.tool(
      "update_business_profile",
      "Update the WhatsApp Business profile information.",
      {
        about: z.string().optional().describe("Short description (max 139 chars)"),
        description: z.string().optional().describe("Business description (max 512 chars)"),
        address: z.string().optional().describe("Business address"),
        email: z.string().optional().describe("Business email"),
        websites: z.array(z.string()).optional().describe("Business website URLs (max 2)"),
      },
      async (params) =>
        executeWithHooks("update_business_profile", params, config, () =>
          wa.updateBusinessProfile(params)
        )
    );
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. While 'Update' implies a mutation operation, the description fails to disclose important behavioral traits: whether this requires specific permissions, if changes are reversible, what happens to existing fields not mentioned, rate limits, or error conditions. It provides only the basic action without operational context.

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 states the core action without unnecessary words. It's appropriately sized for a tool with good schema documentation and gets straight to the point with zero wasted verbiage.

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?

For a mutation tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what happens after the update, what the response looks like, error conditions, or important constraints. The combination of mutation operation + zero annotation coverage + no output schema requires more descriptive context than provided.

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?

With 100% schema description coverage, the input schema already documents all 5 parameters thoroughly with descriptions and constraints. The description adds no parameter-specific information beyond the generic 'profile information' phrase, so it doesn't enhance understanding of what each parameter controls or their relationships.

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

Purpose4/5

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

The description clearly states the verb ('Update') and resource ('WhatsApp Business profile information'), making the purpose immediately understandable. However, it doesn't distinguish this tool from potential alternatives like 'get_business_profile' or explain what specific aspects of the profile can be updated beyond the generic 'information' term.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (like needing an existing profile), doesn't contrast with the sibling 'get_business_profile' tool, and offers no context about appropriate use cases or limitations.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/EvandroSchechtel/mcp-whatsapp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server