Automate Pipedrive CRM operations including deals, contacts, organizations, activities, notes, and pipeline management via Rube MCP (Composio). Always search tools first for current schemas.
Install with Tessl CLI
npx tessl i github:Lingjie-chen/MT5 --skill pipedrive-automation72
Does it follow best practices?
If you maintain this skill, you can automatically optimize it using the tessl CLI to improve its score:
npx tessl skill review --optimize ./path/to/skillValidation for skill structure
Automate Pipedrive CRM workflows including deal management, contact and organization operations, activity scheduling, notes, and pipeline/stage queries through Composio's Pipedrive toolkit.
Toolkit docs: composio.dev/toolkits/pipedrive
RUBE_MANAGE_CONNECTIONS with toolkit pipedriveRUBE_SEARCH_TOOLS first to get current tool schemasGet Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
RUBE_SEARCH_TOOLS respondsRUBE_MANAGE_CONNECTIONS with toolkit pipedriveWhen to use: User wants to create a new deal, update an existing deal, or review deal details in the sales pipeline.
Tool sequence:
PIPEDRIVE_SEARCH_ORGANIZATIONS - Find existing org to link to the deal [Optional]PIPEDRIVE_ADD_AN_ORGANIZATION - Create organization if none found [Optional]PIPEDRIVE_SEARCH_PERSONS - Find existing contact to link [Optional]PIPEDRIVE_ADD_A_PERSON - Create contact if none found [Optional]PIPEDRIVE_GET_ALL_PIPELINES - Resolve pipeline ID [Prerequisite]PIPEDRIVE_GET_ALL_STAGES - Resolve stage ID within the pipeline [Prerequisite]PIPEDRIVE_ADD_A_DEAL - Create the deal with title, value, org_id, person_id, stage_id [Required]PIPEDRIVE_UPDATE_A_DEAL - Modify deal properties after creation [Optional]PIPEDRIVE_ADD_A_PRODUCT_TO_A_DEAL - Attach line items/products [Optional]Key parameters:
title: Deal title (required for creation)value: Monetary value of the dealcurrency: 3-letter ISO currency code (e.g., "USD")pipeline_id / stage_id: Numeric IDs for pipeline placementorg_id / person_id: Link to organization and contactstatus: "open", "won", or "lost"expected_close_date: Format YYYY-MM-DDPitfalls:
title is the only required field for PIPEDRIVE_ADD_A_DEAL; all others are optionalPIPEDRIVE_UPDATE_A_DEAL requires the numeric id of the dealstatus to "lost" requires also providing lost_reasonWhen to use: User wants to create, update, search, or list contacts and companies in Pipedrive.
Tool sequence:
PIPEDRIVE_SEARCH_PERSONS - Search for existing person by name, email, or phone [Prerequisite]PIPEDRIVE_ADD_A_PERSON - Create new contact if not found [Required]PIPEDRIVE_UPDATE_A_PERSON - Modify existing contact details [Optional]PIPEDRIVE_GET_DETAILS_OF_A_PERSON - Retrieve full contact record [Optional]PIPEDRIVE_SEARCH_ORGANIZATIONS - Search for existing organization [Prerequisite]PIPEDRIVE_ADD_AN_ORGANIZATION - Create new organization if not found [Required]PIPEDRIVE_UPDATE_AN_ORGANIZATION - Modify organization properties [Optional]PIPEDRIVE_GET_DETAILS_OF_AN_ORGANIZATION - Retrieve full org record [Optional]Key parameters:
name: Required for both person and organization creationemail: Array of objects with value, label, primary fields for personsphone: Array of objects with value, label, primary fields for personsorg_id: Link a person to an organizationvisible_to: 1 = owner only, 3 = entire companyterm: Search term for SEARCH_PERSONS / SEARCH_ORGANIZATIONS (minimum 2 characters)Pitfalls:
PIPEDRIVE_ADD_AN_ORGANIZATION may auto-merge with an existing org; check response.additional_data.didMerge[{"value": "test@example.com", "label": "work", "primary": true}]PIPEDRIVE_SEARCH_PERSONS wildcards like * or @ are NOT supported; use PIPEDRIVE_GET_ALL_PERSONS to list allPIPEDRIVE_DELETE_A_PERSON or PIPEDRIVE_DELETE_AN_ORGANIZATION is soft-delete with 30-day retention, then permanentWhen to use: User wants to create calls, meetings, tasks, or other activities linked to deals, contacts, or organizations.
Tool sequence:
PIPEDRIVE_SEARCH_PERSONS or PIPEDRIVE_GET_DETAILS_OF_A_DEAL - Resolve linked entity IDs [Prerequisite]PIPEDRIVE_ADD_AN_ACTIVITY - Create the activity with subject, type, due date [Required]PIPEDRIVE_UPDATE_AN_ACTIVITY - Modify activity details or mark as done [Optional]PIPEDRIVE_GET_DETAILS_OF_AN_ACTIVITY - Retrieve activity record [Optional]PIPEDRIVE_GET_ALL_ACTIVITIES_ASSIGNED_TO_A_PARTICULAR_USER - List user's activities [Optional]Key parameters:
subject: Activity title (required)type: Activity type key string, e.g., "call", "meeting", "task", "email" (required)due_date: Format YYYY-MM-DDdue_time: Format HH:MMduration: Format HH:MM (e.g., "00:30" for 30 minutes)deal_id / person_id / org_id: Link to related entitiesdone: 0 = not done, 1 = donePitfalls:
subject and type are required for PIPEDRIVE_ADD_AN_ACTIVITYtype must match an existing ActivityTypes key_string in the accountdone is an integer (0 or 1), not a booleanmore_activities_scheduled_in_context in additional_dataWhen to use: User wants to attach notes to deals, persons, organizations, leads, or projects.
Tool sequence:
PIPEDRIVE_SEARCH_PERSONS or PIPEDRIVE_GET_DETAILS_OF_A_DEAL - Resolve entity ID [Prerequisite]PIPEDRIVE_ADD_A_NOTE - Create note with HTML content linked to an entity [Required]PIPEDRIVE_UPDATE_A_NOTE - Modify note content [Optional]PIPEDRIVE_GET_ALL_NOTES - List notes filtered by entity [Optional]PIPEDRIVE_GET_ALL_COMMENTS_FOR_A_NOTE - Retrieve comments on a note [Optional]Key parameters:
content: Note body in HTML format (required)deal_id / person_id / org_id / lead_id / project_id: At least one entity link requiredpinned_to_deal_flag / pinned_to_person_flag: Filter pinned notes when listingPitfalls:
content is required and supports HTML; plain text works but is sanitized server-sidedeal_id, person_id, org_id, lead_id, or project_id must be providedPIPEDRIVE_GET_ALL_NOTES returns notes across all entities by default; filter with entity ID paramsWhen to use: User wants to view sales pipelines, stages, or deals within a pipeline/stage.
Tool sequence:
PIPEDRIVE_GET_ALL_PIPELINES - List all pipelines and their IDs [Required]PIPEDRIVE_GET_ONE_PIPELINE - Get details and deal summary for a specific pipeline [Optional]PIPEDRIVE_GET_ALL_STAGES - List all stages, optionally filtered by pipeline [Required]PIPEDRIVE_GET_ONE_STAGE - Get details for a specific stage [Optional]PIPEDRIVE_GET_DEALS_IN_A_PIPELINE - List all deals across stages in a pipeline [Optional]PIPEDRIVE_GET_DEALS_IN_A_STAGE - List deals in a specific stage [Optional]Key parameters:
id: Pipeline or stage ID (required for single-item endpoints)pipeline_id: Filter stages by pipelinetotals_convert_currency: 3-letter currency code or "default_currency" for converted totalsget_summary: Set to 1 for deal summary in pipeline responsesPitfalls:
PIPEDRIVE_GET_ALL_PIPELINES takes no parameters; returns all pipelinesPIPEDRIVE_GET_ALL_STAGES returns stages for ALL pipelines unless pipeline_id is specifiedper_stages_converted only when totals_convert_currency is setAlways resolve display names to numeric IDs before operations:
PIPEDRIVE_SEARCH_ORGANIZATIONS with term paramPIPEDRIVE_SEARCH_PERSONS with term paramPIPEDRIVE_GET_ALL_PIPELINES then match by namePIPEDRIVE_GET_ALL_STAGES with pipeline_id then match by nameMost list endpoints use offset-based pagination:
start (offset) and limit (page size) parametersadditional_data.pagination.more_items_in_collection to know if more pages existadditional_data.pagination.next_start as the start value for the next pagePIPEDRIVE_GET_ALL_PERSONS and PIPEDRIVE_GET_ALL_ORGANIZATIONS can return large datasets; always paginatevisible_to is numeric: 1 = owner only, 3 = entire company, 5 = specific groupsdone on activities is integer 0/1, not boolean true/falsedidMerge in responsePIPEDRIVE_SEARCH_PERSONS requires minimum 2 characters and does not support wildcardsresponse.data.data in wrapped executionsresponse.data.items, not top-level| Task | Tool Slug | Key Params |
|---|---|---|
| Create deal | PIPEDRIVE_ADD_A_DEAL | title, value, org_id, stage_id |
| Update deal | PIPEDRIVE_UPDATE_A_DEAL | id, status, value, stage_id |
| Get deal details | PIPEDRIVE_GET_DETAILS_OF_A_DEAL | id |
| Search persons | PIPEDRIVE_SEARCH_PERSONS | term, fields |
| Add person | PIPEDRIVE_ADD_A_PERSON | name, email, phone, org_id |
| Update person | PIPEDRIVE_UPDATE_A_PERSON | id, name, email |
| Get person details | PIPEDRIVE_GET_DETAILS_OF_A_PERSON | id |
| List all persons | PIPEDRIVE_GET_ALL_PERSONS | start, limit, filter_id |
| Search organizations | PIPEDRIVE_SEARCH_ORGANIZATIONS | term, fields |
| Add organization | PIPEDRIVE_ADD_AN_ORGANIZATION | name, visible_to |
| Update organization | PIPEDRIVE_UPDATE_AN_ORGANIZATION | id, name, address |
| Get org details | PIPEDRIVE_GET_DETAILS_OF_AN_ORGANIZATION | id |
| Add activity | PIPEDRIVE_ADD_AN_ACTIVITY | subject, type, due_date, deal_id |
| Update activity | PIPEDRIVE_UPDATE_AN_ACTIVITY | id, done, due_date |
| Get activity details | PIPEDRIVE_GET_DETAILS_OF_AN_ACTIVITY | id |
| List user activities | PIPEDRIVE_GET_ALL_ACTIVITIES_ASSIGNED_TO_A_PARTICULAR_USER | user_id, start, limit |
| Add note | PIPEDRIVE_ADD_A_NOTE | content, deal_id or person_id |
| List notes | PIPEDRIVE_GET_ALL_NOTES | deal_id, person_id, start, limit |
| List pipelines | PIPEDRIVE_GET_ALL_PIPELINES | (none) |
| Get pipeline details | PIPEDRIVE_GET_ONE_PIPELINE | id |
| List stages | PIPEDRIVE_GET_ALL_STAGES | pipeline_id |
| Deals in pipeline | PIPEDRIVE_GET_DEALS_IN_A_PIPELINE | id, stage_id |
| Deals in stage | PIPEDRIVE_GET_DEALS_IN_A_STAGE | id, start, limit |
| Add product to deal | PIPEDRIVE_ADD_A_PRODUCT_TO_A_DEAL | id, product_id, item_price |
Powered by Composio
f0d513a
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.