get_sales_report
Generate detailed sales reports for a specific date range to analyze performance and track revenue trends within Kommo CRM. Streamline data insights for informed business decisions.
Instructions
Get sales report for a date range
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date_from | Yes | Start date (YYYY-MM-DD) | |
| date_to | Yes | End date (YYYY-MM-DD) |
Implementation Reference
- src/kommo-api.ts:421-430 (handler)Core handler function that executes the sales report logic by querying the Kommo API /leads/reports endpoint.async getSalesReport(dateFrom: string, dateTo: string): Promise<KommoSalesReport> { const response = await this.client.get('/api/v4/leads/reports', { params: { date_from: dateFrom, date_to: dateTo, report_type: 'sales' } }); return response.data; }
- src/kommo-api.ts:123-153 (schema)TypeScript interface defining the structure of the sales report output.export interface KommoSalesReport { period: { from: string; to: string; }; leads: { total: number; new: number; won: number; lost: number; }; revenue: { total: number; average: number; conversion_rate: number; }; performance: { by_user: Array<{ user_id: number; user_name: string; leads_count: number; revenue: number; }>; by_pipeline: Array<{ pipeline_id: number; pipeline_name: string; leads_count: number; revenue: number; }>; }; }
- src/http-streamable.ts:696-706 (registration)MCP tool registration including name, description, and input schema in the tools/list response.{ name: 'get_sales_report', description: 'Obter relatório de vendas do Kommo CRM', inputSchema: { type: 'object', properties: { limit: { type: 'number', description: 'Número máximo de leads (padrão: 1000)' }, page: { type: 'number', description: 'Página para paginação (padrão: 1)' } } } },
- src/http-streamable.ts:796-811 (handler)MCP tool call handler that invokes the core getSalesReport method and formats the response.case 'get_sales_report': const salesLimit = args?.limit || 1000; const salesPage = args?.page || 1; const dateFrom = args?.dateFrom || '2024-01-01'; const dateTo = args?.dateTo || '2024-12-31'; const salesData = await kommoAPI.getSalesReport(dateFrom, dateTo); result = { content: [ { type: 'text', text: JSON.stringify(salesData, null, 2) } ] }; break;