updateCustomers
Modify personal details for existing customers in the Mews hospitality platform, including contact information, demographics, and identification data.
Instructions
Updates personal information of existing customers
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| CustomerUpdates | Yes | Array of customer update objects |
Implementation Reference
- The execute function implementing the core logic: parses args, sends HTTP POST to Mews API /api/connector/v1/customers/update, and returns JSON stringified result.async execute(config: MewsAuthConfig, args: unknown): Promise<ToolResult> { const inputArgs = args as Record<string, unknown>; const requestData = { ...inputArgs }; const result = await mewsRequest(config, '/api/connector/v1/customers/update', requestData); return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] }; }
- Input schema validating an object with 'CustomerUpdates' array; each item requires 'CustomerId' and allows optional personal details.inputSchema: { type: 'object', properties: { CustomerUpdates: { type: 'array', items: { type: 'object', properties: { CustomerId: { type: 'string', description: 'Unique identifier of the customer to update' }, FirstName: { type: 'string', description: 'Customer first name' }, LastName: { type: 'string', description: 'Customer last name' }, SecondLastName: { type: 'string', description: 'Customer second last name' }, Title: { type: 'string', description: 'Customer title (Mr, Ms, etc.)' }, Email: { type: 'string', description: 'Customer email address' }, Phone: { type: 'string', description: 'Customer phone number' }, BirthDate: { type: 'string', description: 'Customer birth date (ISO 8601)' }, BirthPlace: { type: 'string', description: 'Customer birth place' }, CitizenshipCountryCode: { type: 'string', description: 'ISO country code of citizenship' }, NationalityCountryCode: { type: 'string', description: 'ISO country code of nationality' }, GenderCode: { type: 'string', description: 'Gender code' }, LanguageCode: { type: 'string', description: 'Preferred language ISO code' }, LoyaltyCode: { type: 'string', description: 'Loyalty program code' }, Occupation: { type: 'string', description: 'Customer occupation' }, TaxIdentifier: { type: 'string', description: 'Tax identification number' } }, required: ['CustomerId'] }, description: 'Array of customer update objects' } }, required: ['CustomerUpdates'], additionalProperties: false },
- src/tools/index.ts:95-95 (registration)Registration of the updateCustomersTool in the central allTools array exported for use in the MCP server.updateCustomersTool,
- src/tools/index.ts:10-10 (registration)Import statement bringing the tool definition into the index for registration.import { updateCustomersTool } from './customers/updateCustomers.js';