get_deals
Retrieve and filter deals from Pipedrive CRM by status, user, organization, or custom filters to monitor sales pipeline and track opportunities.
Instructions
Get a list of deals from Pipedrive
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| start | No | Pagination start (default: 0) | |
| limit | No | Number of items to return (default: 100, max: 500) | |
| status | No | Filter by deal status | |
| filter_id | No | Predefined filter ID | |
| user_id | No | Filter by user ID | |
| person_id | No | Filter by person ID | |
| org_id | No | Filter by organization ID |
Implementation Reference
- src/pipedrive-client.ts:252-264 (handler)The handler method `getDeals` within `PipedriveClient` class that executes the API request.
async getDeals(params?: { start?: number; limit?: number; status?: 'all_not_deleted' | 'open' | 'won' | 'lost' | 'deleted'; filter_id?: number; user_id?: number; person_id?: number; org_id?: number; }): Promise<PipedriveResponse<Deal[]>> { return this.handleRequest<Deal[]>( this.client.get('/deals', { params }) ); } - src/tools/deals.ts:4-41 (schema)The MCP tool definition (schema) for 'get_deals' in `src/tools/deals.ts`.
{ name: 'get_deals', description: 'Get a list of deals from Pipedrive', inputSchema: { type: 'object', properties: { start: { type: 'number', description: 'Pagination start (default: 0)', }, limit: { type: 'number', description: 'Number of items to return (default: 100, max: 500)', }, status: { type: 'string', enum: ['all_not_deleted', 'open', 'won', 'lost', 'deleted'], description: 'Filter by deal status', }, filter_id: { type: 'number', description: 'Predefined filter ID', }, user_id: { type: 'number', description: 'Filter by user ID', }, person_id: { type: 'number', description: 'Filter by person ID', }, org_id: { type: 'number', description: 'Filter by organization ID', }, }, }, },