siigo_get_accounts_payable
Retrieve accounts payable reports from Siigo accounting software to monitor outstanding vendor payments and manage financial obligations.
Instructions
Get accounts payable report
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number | |
| page_size | No | Number of items per page |
Implementation Reference
- src/siigo-client.ts:281-283 (handler)Core tool handler implementation: sends GET request to Siigo API /v1/accounts-payable endpoint with optional pagination parameters.async getAccountsPayable(params?: { page?: number; page_size?: number }): Promise<SiigoApiResponse<any>> { return this.makeRequest<any>('GET', '/v1/accounts-payable', undefined, params); }
- src/index.ts:1136-1139 (handler)MCP server wrapper handler that calls SiigoClient.getAccountsPayable and formats the JSON response for the tool call.private async handleGetAccountsPayable(args: any) { const result = await this.siigoClient.getAccountsPayable(args); return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] }; }
- src/index.ts:768-777 (registration)Tool registration in ListTools response, including name, description, and input schema for pagination.name: 'siigo_get_accounts_payable', description: 'Get accounts payable report', inputSchema: { type: 'object', properties: { page: { type: 'number', description: 'Page number' }, page_size: { type: 'number', description: 'Number of items per page' }, }, }, },
- src/index.ts:770-776 (schema)Input schema definition for the tool, supporting optional page and page_size parameters.inputSchema: { type: 'object', properties: { page: { type: 'number', description: 'Page number' }, page_size: { type: 'number', description: 'Number of items per page' }, }, },
- src/siigo-client.ts:41-59 (helper)Shared helper method used by all API calls, including authentication and request handling with axios.private async makeRequest<T>(method: string, endpoint: string, data?: any, params?: any): Promise<SiigoApiResponse<T>> { await this.authenticate(); try { const response: AxiosResponse<SiigoApiResponse<T>> = await this.httpClient.request({ method, url: endpoint, data, params, }); return response.data; } catch (error: any) { if (error.response?.data) { return error.response.data; } throw new Error(`API request failed: ${error.message}`); } }