Skip to main content Automate Pipedrive CRM operations including deals, contacts, organizations, activities, notes, and pipeline management via Rube MCP (Composio). Always search tools first for current schemas.
npx skills add sickn33/antigravity-awesome-skills --skill pipedrive-automation agentic-skills ai-agents antigravity claude-code mcp ai-workflows
Pipedrive Automation via Rube MCP
Automate Pipedrive CRM workflows including deal management, contact and organization operations, activity scheduling, notes, and pipeline/stage queries through Composio's Pipedrive toolkit.
Prerequisites
Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
Active Pipedrive connection via RUBE_MANAGE_CONNECTIONS with toolkit pipedrive
Always call RUBE_SEARCH_TOOLS first to get current tool schemas
Setup
Get 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.
Verify Rube MCP is available by confirming RUBE_SEARCH_TOOLS responds
Call RUBE_MANAGE_CONNECTIONS with toolkit pipedrive
If connection is not ACTIVE, follow the returned auth link to complete Pipedrive OAuth
Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Create and Manage Deals When to use : User wants to create a new deal, update an existing deal, or review deal details in the sales pipeline.
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]
title: Deal title (required for creation)
value: Monetary value of the deal
currency: 3-letter ISO currency code (e.g., "USD")
pipeline_id / stage_id: Numeric IDs for pipeline placement
org_id / person_id: Link to organization and contact
status: "open", "won", or "lost"
expected_close_date: Format YYYY-MM-DD
title is the only required field for PIPEDRIVE_ADD_A_DEAL; all others are optional
Custom fields appear as long hash keys in responses; use dealFields endpoint to map them
PIPEDRIVE_UPDATE_A_DEAL requires the numeric id of the deal
Setting status to "lost" requires also providing lost_reason
2. Manage Contacts (Persons and Organizations) When to use : User wants to create, update, search, or list contacts and companies in Pipedrive.
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]
name: Required for both person and organization creation
email: Array of objects with value, label, primary fields for persons
phone: Array of objects with value, label, primary fields for persons
org_id: Link a person to an organization
visible_to: 1 = owner only, 3 = entire company
term: Search term for SEARCH_PERSONS / SEARCH_ORGANIZATIONS (minimum 2 characters)
PIPEDRIVE_ADD_AN_ORGANIZATION may auto-merge with an existing org; check response.additional_data.didMerge
Email and phone fields are arrays of objects, not plain strings: [{"value": "[email protected] ", "label": "work", "primary": true}]
PIPEDRIVE_SEARCH_PERSONS wildcards like * or @ are NOT supported; use PIPEDRIVE_GET_ALL_PERSONS to list all
Deletion via PIPEDRIVE_DELETE_A_PERSON or PIPEDRIVE_DELETE_AN_ORGANIZATION is soft-delete with 30-day retention, then permanent
3. Schedule and Track Activities When to use : User wants to create calls, meetings, tasks, or other activities linked to deals, contacts, or organizations.
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]
subject: Activity title (required)
type: Activity type key string, e.g., "call", "meeting", "task", "email" (required)
due_date: Format YYYY-MM-DD
due_time: Format HH:MM
duration: Format HH:MM (e.g., "00:30" for 30 minutes)
deal_id / person_id / org_id: Link to related entities
done: 0 = not done, 1 = done
Both subject and type are required for PIPEDRIVE_ADD_AN_ACTIVITY
type must match an existing ActivityTypes key_string in the account
done is an integer (0 or 1), not a boolean
Response includes more_activities_scheduled_in_context in additional_data
4. Add and Manage Notes When to use : User wants to attach notes to deals, persons, organizations, leads, or projects.
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]
content: Note body in HTML format (required)
deal_id / person_id / org_id / lead_id / project_id: At least one entity link required
pinned_to_deal_flag / pinned_to_person_flag: Filter pinned notes when listing
content is required and supports HTML; plain text works but is sanitized server-side
At least one of deal_id, person_id, org_id, lead_id, or project_id must be provided
PIPEDRIVE_GET_ALL_NOTES returns notes across all entities by default; filter with entity ID params
5. Query Pipelines and Stages When to use : User wants to view sales pipelines, stages, or deals within a pipeline/stage.
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]
id: Pipeline or stage ID (required for single-item endpoints)
pipeline_id: Filter stages by pipeline
totals_convert_currency: 3-letter currency code or "default_currency" for converted totals
get_summary: Set to 1 for deal summary in pipeline responses
PIPEDRIVE_GET_ALL_PIPELINES takes no parameters; returns all pipelines
PIPEDRIVE_GET_ALL_STAGES returns stages for ALL pipelines unless pipeline_id is specified
Deal counts in pipeline summaries use per_stages_converted only when totals_convert_currency is set
Common Patterns
ID Resolution Always resolve display names to numeric IDs before operations:
Organization name -> org_id : PIPEDRIVE_SEARCH_ORGANIZATIONS with term param
Person name -> person_id : PIPEDRIVE_SEARCH_PERSONS with term param
Pipeline name -> pipeline_id : PIPEDRIVE_GET_ALL_PIPELINES then match by name
Stage name -> stage_id : PIPEDRIVE_GET_ALL_STAGES with pipeline_id then match by name
Pagination Most list endpoints use offset-based pagination:
Use start (offset) and limit (page size) parameters
Check additional_data.pagination.more_items_in_collection to know if more pages exist
Use additional_data.pagination.next_start as the start value for the next page
Default limit is ~500 for some endpoints; set explicitly for predictable paging
Known Pitfalls
ID Formats
All entity IDs (deal, person, org, activity, pipeline, stage) are numeric integers
Lead IDs are UUID strings, not integers
Custom field keys are long alphanumeric hashes (e.g., "a1b2c3d4e5f6...")
Rate Limits
Pipedrive enforces per-company API rate limits; bulk operations should be paced
PIPEDRIVE_GET_ALL_PERSONS and PIPEDRIVE_GET_ALL_ORGANIZATIONS can return large datasets; always paginate
Parameter Quirks
Email and phone on persons are arrays of objects, not plain strings
visible_to is numeric: 1 = owner only, 3 = entire company, 5 = specific groups
done on activities is integer 0/1, not boolean true/false
Organization creation may auto-merge duplicates silently; check didMerge in response
PIPEDRIVE_SEARCH_PERSONS requires minimum 2 characters and does not support wildcards
Response Structure
Custom fields appear as hash keys in responses; map them via the respective Fields endpoints
Responses often nest data under response.data.data in wrapped executions
Search results are under response.data.items, not top-level
Quick Reference Task Tool Slug Key Params Create deal PIPEDRIVE_ADD_A_DEALtitle, value, org_id, stage_idUpdate deal PIPEDRIVE_UPDATE_A_DEALid, status, value, stage_idGet deal details PIPEDRIVE_GET_DETAILS_OF_A_DEALidSearch persons PIPEDRIVE_SEARCH_PERSONSterm, fieldsAdd person PIPEDRIVE_ADD_A_PERSONname, email, phone, org_idUpdate person PIPEDRIVE_UPDATE_A_PERSONid, name, emailGet person details PIPEDRIVE_GET_DETAILS_OF_A_PERSONidList all persons PIPEDRIVE_GET_ALL_PERSONSstart, limit, filter_idSearch organizations PIPEDRIVE_SEARCH_ORGANIZATIONSterm, fieldsAdd organization PIPEDRIVE_ADD_AN_ORGANIZATIONname, visible_toUpdate organization PIPEDRIVE_UPDATE_AN_ORGANIZATIONid, name, addressGet org details PIPEDRIVE_GET_DETAILS_OF_AN_ORGANIZATIONidAdd activity PIPEDRIVE_ADD_AN_ACTIVITYsubject, type, due_date, deal_idUpdate activity PIPEDRIVE_UPDATE_AN_ACTIVITYid, done, due_dateGet activity details PIPEDRIVE_GET_DETAILS_OF_AN_ACTIVITYidList user activities PIPEDRIVE_GET_ALL_ACTIVITIES_ASSIGNED_TO_A_PARTICULAR_USERuser_id, start, limitAdd note PIPEDRIVE_ADD_A_NOTEcontent, deal_id or person_idList notes PIPEDRIVE_GET_ALL_NOTESdeal_id, person_id, start, limitList pipelines PIPEDRIVE_GET_ALL_PIPELINES(none) Get pipeline details PIPEDRIVE_GET_ONE_PIPELINEidList stages PIPEDRIVE_GET_ALL_STAGESpipeline_idDeals in pipeline PIPEDRIVE_GET_DEALS_IN_A_PIPELINEid, stage_idDeals in stage PIPEDRIVE_GET_DEALS_IN_A_STAGEid, start, limitAdd product to deal PIPEDRIVE_ADD_A_PRODUCT_TO_A_DEALid, product_id, item_price
When to Use This skill is applicable to execute the workflow or actions described in the overview.
Limitations
Use this skill only when the task clearly matches the scope described above.
Do not treat the output as a substitute for environment-specific validation, testing, or expert review.
Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.
CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language).