siigo_send_invoice_email
Send invoices from Siigo accounting software to recipients via email. Specify the invoice ID and recipient email address to deliver invoices directly to customers.
Instructions
Send invoice by email
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| copy_to | No | CC emails (semicolon separated) | |
| id | Yes | Invoice ID | |
| mail_to | Yes | Recipient email |
Implementation Reference
- src/index.ts:431-443 (registration)Registers the siigo_send_invoice_email tool in the MCP server's tool list, including description and input schema.{ name: 'siigo_send_invoice_email', description: 'Send invoice by email', inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Invoice ID' }, mail_to: { type: 'string', description: 'Recipient email' }, copy_to: { type: 'string', description: 'CC emails (semicolon separated)' }, }, required: ['id', 'mail_to'], }, },
- src/index.ts:434-442 (schema)Defines the JSON schema for the tool's input parameters: invoice ID, recipient email, and optional CC emails.inputSchema: { type: 'object', properties: { id: { type: 'string', description: 'Invoice ID' }, mail_to: { type: 'string', description: 'Recipient email' }, copy_to: { type: 'string', description: 'CC emails (semicolon separated)' }, }, required: ['id', 'mail_to'], },
- src/index.ts:95-96 (handler)Switch case in CallToolRequest handler that dispatches to the specific tool handler.case 'siigo_send_invoice_email': return await this.handleSendInvoiceEmail(args);
- src/index.ts:962-973 (handler)MCP tool handler function that parses arguments, calls SiigoClient.sendInvoiceByEmail, and returns formatted response.private async handleSendInvoiceEmail(args: any) { const { id, mail_to, copy_to } = args; const result = await this.siigoClient.sendInvoiceByEmail(id, { mail_to, copy_to }); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; }
- src/siigo-client.ts:124-126 (handler)Core tool implementation in SiigoClient that performs the HTTP POST request to Siigo API endpoint for sending invoice email.async sendInvoiceByEmail(id: string, emailData: { mail_to: string; copy_to?: string }): Promise<SiigoApiResponse<any>> { return this.makeRequest<any>('POST', `/v1/invoices/${id}/mail`, emailData); }