Skip to main content
Glama
wsapi-chat
by wsapi-chat

whatsapp_get_contact_business

Retrieve business profile details for WhatsApp contacts to verify professional information and enhance communication context.

Instructions

Get the business profile information of a WhatsApp contact.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
contactIdYesContact ID (phone number with @s.whatsapp.net)

Implementation Reference

  • Full ToolHandler implementation for 'whatsapp_get_contact_business', including name, description, inputSchema, and the async handler function that validates input, calls the WSAPI client to retrieve the business profile, logs the action, and returns the result.
    export const getContactBusinessProfile: ToolHandler = { name: 'whatsapp_get_contact_business', description: 'Get the business profile information of a WhatsApp contact.', inputSchema: { type: 'object', properties: { contactId: { type: 'string', description: 'Contact ID (phone number with @s.whatsapp.net)', }, }, required: ['contactId'], }, handler: async (args: any) => { const input = validateInput(getContactSchema, args); logger.info('Getting contact business profile', { contactId: input.contactId }); const result = await wsapiClient.get(`/contacts/${input.contactId}/business`); logger.info('Retrieved contact business profile successfully', { contactId: input.contactId }); return { success: true, businessProfile: result, message: 'Contact business profile retrieved successfully', }; }, };
  • Zod schema (getContactSchema) used by the handler for input validation, defining 'contactId' as a phone number matching the pattern.
    export const getContactSchema = z.object({ contactId: phoneNumberSchema, });
  • src/server.ts:53-79 (registration)
    Tool registration logic in MCP server setup. Imports contactTools (containing the whatsapp_get_contact_business tool) and registers all tools from tool categories into the server's tools Map by name.
    private setupToolHandlers(): void { logger.info('Setting up tool handlers'); // Register all tool categories const toolCategories = [ messagingTools, contactTools, groupTools, chatTools, sessionTools, instanceTools, accountTools, ]; toolCategories.forEach(category => { Object.values(category).forEach(tool => { if (this.tools.has(tool.name)) { logger.warn(`Tool ${tool.name} already registered, skipping`); return; } this.tools.set(tool.name, tool); logger.debug(`Registered tool: ${tool.name}`); }); }); logger.info(`Registered ${this.tools.size} tools`); }
  • src/server.ts:15-22 (registration)
    Import of contactTools from './tools/contacts.js', which bundles the whatsapp_get_contact_business tool for registration.
    import { messagingTools } from './tools/messaging.js'; import { contactTools } from './tools/contacts.js'; import { groupTools } from './tools/groups.js'; import { chatTools } from './tools/chats.js'; import { sessionTools } from './tools/session.js'; import { instanceTools } from './tools/instance.js'; import { accountTools } from './tools/account.js';
  • Export of contactTools object bundling all contact-related tools, including getContactBusinessProfile (whatsapp_get_contact_business), for import and registration in the server.
    export const contactTools = { getContacts, getContact, createContact, updateContact, getContactPicture, getContactBusinessProfile, subscribeToContactPresence, };

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/wsapi-chat/wsapi-mcp'

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