[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-4cd35ecb-7744-45eb-8022-0360b5aac13d":3,"$fdwUb303cRE1yRK2wswXBLg6DiC1PdizfYPP3uBueh-c":43},{"id":4,"title":5,"description":6,"categoryId":7,"moduleId":8,"tags":9,"prompt":10,"icon":11,"source":12,"sourceUrl":13,"authorId":14,"authorName":15,"isPublic":16,"stars":17,"runs":18,"createdAt":19,"updatedAt":19,"module":20,"category":27,"packages":34},"4cd35ecb-7744-45eb-8022-0360b5aac13d","pipedrive-automation","自动化Pipedrive CRM操作，包括交易、联系人、组织、活动、笔记和管道管理，通过Rube MCP（Composio）。始终首先搜索当前模式下的工具。","cat_prod_automation","mod_productivity","sickn33,productivity","---\nname: pipedrive-automation\ndescription: \"Automate Pipedrive CRM operations including deals, contacts, organizations, activities, notes, and pipeline management via Rube MCP (Composio). Always search tools first for current schemas.\"\nrisk: critical\nsource: community\ndate_added: \"2026-02-27\"\n---\n\n# Pipedrive Automation via Rube MCP\n\nAutomate Pipedrive CRM workflows including deal management, contact and organization operations, activity scheduling, notes, and pipeline\u002Fstage queries through Composio's Pipedrive toolkit.\n\n## Prerequisites\n\n- Rube MCP must be connected (RUBE_SEARCH_TOOLS available)\n- Active Pipedrive connection via `RUBE_MANAGE_CONNECTIONS` with toolkit `pipedrive`\n- Always call `RUBE_SEARCH_TOOLS` first to get current tool schemas\n\n## Setup\n\n**Get Rube MCP**: Add `https:\u002F\u002Frube.app\u002Fmcp` as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.\n\n1. Verify Rube MCP is available by confirming `RUBE_SEARCH_TOOLS` responds\n2. Call `RUBE_MANAGE_CONNECTIONS` with toolkit `pipedrive`\n3. If connection is not ACTIVE, follow the returned auth link to complete Pipedrive OAuth\n4. Confirm connection status shows ACTIVE before running any workflows\n\n## Core Workflows\n\n### 1. Create and Manage Deals\n\n**When to use**: User wants to create a new deal, update an existing deal, or review deal details in the sales pipeline.\n\n**Tool sequence**:\n1. `PIPEDRIVE_SEARCH_ORGANIZATIONS` - Find existing org to link to the deal [Optional]\n2. `PIPEDRIVE_ADD_AN_ORGANIZATION` - Create organization if none found [Optional]\n3. `PIPEDRIVE_SEARCH_PERSONS` - Find existing contact to link [Optional]\n4. `PIPEDRIVE_ADD_A_PERSON` - Create contact if none found [Optional]\n5. `PIPEDRIVE_GET_ALL_PIPELINES` - Resolve pipeline ID [Prerequisite]\n6. `PIPEDRIVE_GET_ALL_STAGES` - Resolve stage ID within the pipeline [Prerequisite]\n7. `PIPEDRIVE_ADD_A_DEAL` - Create the deal with title, value, org_id, person_id, stage_id [Required]\n8. `PIPEDRIVE_UPDATE_A_DEAL` - Modify deal properties after creation [Optional]\n9. `PIPEDRIVE_ADD_A_PRODUCT_TO_A_DEAL` - Attach line items\u002Fproducts [Optional]\n\n**Key parameters**:\n- `title`: Deal title (required for creation)\n- `value`: Monetary value of the deal\n- `currency`: 3-letter ISO currency code (e.g., \"USD\")\n- `pipeline_id` \u002F `stage_id`: Numeric IDs for pipeline placement\n- `org_id` \u002F `person_id`: Link to organization and contact\n- `status`: \"open\", \"won\", or \"lost\"\n- `expected_close_date`: Format YYYY-MM-DD\n\n**Pitfalls**:\n- `title` is the only required field for `PIPEDRIVE_ADD_A_DEAL`; all others are optional\n- Custom fields appear as long hash keys in responses; use dealFields endpoint to map them\n- `PIPEDRIVE_UPDATE_A_DEAL` requires the numeric `id` of the deal\n- Setting `status` to \"lost\" requires also providing `lost_reason`\n\n### 2. Manage Contacts (Persons and Organizations)\n\n**When to use**: User wants to create, update, search, or list contacts and companies in Pipedrive.\n\n**Tool sequence**:\n1. `PIPEDRIVE_SEARCH_PERSONS` - Search for existing person by name, email, or phone [Prerequisite]\n2. `PIPEDRIVE_ADD_A_PERSON` - Create new contact if not found [Required]\n3. `PIPEDRIVE_UPDATE_A_PERSON` - Modify existing contact details [Optional]\n4. `PIPEDRIVE_GET_DETAILS_OF_A_PERSON` - Retrieve full contact record [Optional]\n5. `PIPEDRIVE_SEARCH_ORGANIZATIONS` - Search for existing organization [Prerequisite]\n6. `PIPEDRIVE_ADD_AN_ORGANIZATION` - Create new organization if not found [Required]\n7. `PIPEDRIVE_UPDATE_AN_ORGANIZATION` - Modify organization properties [Optional]\n8. `PIPEDRIVE_GET_DETAILS_OF_AN_ORGANIZATION` - Retrieve full org record [Optional]\n\n**Key parameters**:\n- `name`: Required for both person and organization creation\n- `email`: Array of objects with `value`, `label`, `primary` fields for persons\n- `phone`: Array of objects with `value`, `label`, `primary` fields for persons\n- `org_id`: Link a person to an organization\n- `visible_to`: 1 = owner only, 3 = entire company\n- `term`: Search term for SEARCH_PERSONS \u002F SEARCH_ORGANIZATIONS (minimum 2 characters)\n\n**Pitfalls**:\n- `PIPEDRIVE_ADD_AN_ORGANIZATION` may auto-merge with an existing org; check `response.additional_data.didMerge`\n- Email and phone fields are arrays of objects, not plain strings: `[{\"value\": \"test@example.com\", \"label\": \"work\", \"primary\": true}]`\n- `PIPEDRIVE_SEARCH_PERSONS` wildcards like `*` or `@` are NOT supported; use `PIPEDRIVE_GET_ALL_PERSONS` to list all\n- Deletion via `PIPEDRIVE_DELETE_A_PERSON` or `PIPEDRIVE_DELETE_AN_ORGANIZATION` is soft-delete with 30-day retention, then permanent\n\n### 3. Schedule and Track Activities\n\n**When to use**: User wants to create calls, meetings, tasks, or other activities linked to deals, contacts, or organizations.\n\n**Tool sequence**:\n1. `PIPEDRIVE_SEARCH_PERSONS` or `PIPEDRIVE_GET_DETAILS_OF_A_DEAL` - Resolve linked entity IDs [Prerequisite]\n2. `PIPEDRIVE_ADD_AN_ACTIVITY` - Create the activity with subject, type, due date [Required]\n3. `PIPEDRIVE_UPDATE_AN_ACTIVITY` - Modify activity details or mark as done [Optional]\n4. `PIPEDRIVE_GET_DETAILS_OF_AN_ACTIVITY` - Retrieve activity record [Optional]\n5. `PIPEDRIVE_GET_ALL_ACTIVITIES_ASSIGNED_TO_A_PARTICULAR_USER` - List user's activities [Optional]\n\n**Key parameters**:\n- `subject`: Activity title (required)\n- `type`: Activity type key string, e.g., \"call\", \"meeting\", \"task\", \"email\" (required)\n- `due_date`: Format YYYY-MM-DD\n- `due_time`: Format HH:MM\n- `duration`: Format HH:MM (e.g., \"00:30\" for 30 minutes)\n- `deal_id` \u002F `person_id` \u002F `org_id`: Link to related entities\n- `done`: 0 = not done, 1 = done\n\n**Pitfalls**:\n- Both `subject` and `type` are required for `PIPEDRIVE_ADD_AN_ACTIVITY`\n- `type` must match an existing ActivityTypes key_string in the account\n- `done` is an integer (0 or 1), not a boolean\n- Response includes `more_activities_scheduled_in_context` in additional_data\n\n### 4. Add and Manage Notes\n\n**When to use**: User wants to attach notes to deals, persons, organizations, leads, or projects.\n\n**Tool sequence**:\n1. `PIPEDRIVE_SEARCH_PERSONS` or `PIPEDRIVE_GET_DETAILS_OF_A_DEAL` - Resolve entity ID [Prerequisite]\n2. `PIPEDRIVE_ADD_A_NOTE` - Create note with HTML content linked to an entity [Required]\n3. `PIPEDRIVE_UPDATE_A_NOTE` - Modify note content [Optional]\n4. `PIPEDRIVE_GET_ALL_NOTES` - List notes filtered by entity [Optional]\n5. `PIPEDRIVE_GET_ALL_COMMENTS_FOR_A_NOTE` - Retrieve comments on a note [Optional]\n\n**Key parameters**:\n- `content`: Note body in HTML format (required)\n- `deal_id` \u002F `person_id` \u002F `org_id` \u002F `lead_id` \u002F `project_id`: At least one entity link required\n- `pinned_to_deal_flag` \u002F `pinned_to_person_flag`: Filter pinned notes when listing\n\n**Pitfalls**:\n- `content` is required and supports HTML; plain text works but is sanitized server-side\n- At least one of `deal_id`, `person_id`, `org_id`, `lead_id`, or `project_id` must be provided\n- `PIPEDRIVE_GET_ALL_NOTES` returns notes across all entities by default; filter with entity ID params\n\n### 5. Query Pipelines and Stages\n\n**When to use**: User wants to view sales pipelines, stages, or deals within a pipeline\u002Fstage.\n\n**Tool sequence**:\n1. `PIPEDRIVE_GET_ALL_PIPELINES` - List all pipelines and their IDs [Required]\n2. `PIPEDRIVE_GET_ONE_PIPELINE` - Get details and deal summary for a specific pipeline [Optional]\n3. `PIPEDRIVE_GET_ALL_STAGES` - List all stages, optionally filtered by pipeline [Required]\n4. `PIPEDRIVE_GET_ONE_STAGE` - Get details for a specific stage [Optional]\n5. `PIPEDRIVE_GET_DEALS_IN_A_PIPELINE` - List all deals across stages in a pipeline [Optional]\n6. `PIPEDRIVE_GET_DEALS_IN_A_STAGE` - List deals in a specific stage [Optional]\n\n**Key parameters**:\n- `id`: Pipeline or stage ID (required for single-item endpoints)\n- `pipeline_id`: Filter stages by pipeline\n- `totals_convert_currency`: 3-letter currency code or \"default_currency\" for converted totals\n- `get_summary`: Set to 1 for deal summary in pipeline responses\n\n**Pitfalls**:\n- `PIPEDRIVE_GET_ALL_PIPELINES` takes no parameters; returns all pipelines\n- `PIPEDRIVE_GET_ALL_STAGES` returns stages for ALL pipelines unless `pipeline_id` is specified\n- Deal counts in pipeline summaries use `per_stages_converted` only when `totals_convert_currency` is set\n\n## Common Patterns\n\n### ID Resolution\nAlways resolve display names to numeric IDs before operations:\n- **Organization name -> org_id**: `PIPEDRIVE_SEARCH_ORGANIZATIONS` with `term` param\n- **Person name -> person_id**: `PIPEDRIVE_SEARCH_PERSONS` with `term` param\n- **Pipeline name -> pipeline_id**: `PIPEDRIVE_GET_ALL_PIPELINES` then match by name\n- **Stage name -> stage_id**: `PIPEDRIVE_GET_ALL_STAGES` with `pipeline_id` then match by name\n\n### Pagination\nMost list endpoints use offset-based pagination:\n- Use `start` (offset) and `limit` (page size) parameters\n- Check `additional_data.pagination.more_items_in_collection` to know if more pages exist\n- Use `additional_data.pagination.next_start` as the `start` value for the next page\n- Default limit is ~500 for some endpoints; set explicitly for predictable paging\n\n## Known Pitfalls\n\n### ID Formats\n- All entity IDs (deal, person, org, activity, pipeline, stage) are numeric integers\n- Lead IDs are UUID strings, not integers\n- Custom field keys are long alphanumeric hashes (e.g., \"a1b2c3d4e5f6...\")\n\n### Rate Limits\n- Pipedrive enforces per-company API rate limits; bulk operations should be paced\n- `PIPEDRIVE_GET_ALL_PERSONS` and `PIPEDRIVE_GET_ALL_ORGANIZATIONS` can return large datasets; always paginate\n\n### Parameter Quirks\n- Email and phone on persons are arrays of objects, not plain strings\n- `visible_to` is numeric: 1 = owner only, 3 = entire company, 5 = specific groups\n- `done` on activities is integer 0\u002F1, not boolean true\u002Ffalse\n- Organization creation may auto-merge duplicates silently; check `didMerge` in response\n- `PIPEDRIVE_SEARCH_PERSONS` requires minimum 2 characters and does not support wildcards\n\n### Response Structure\n- Custom fields appear as hash keys in responses; map them via the respective Fields endpoints\n- Responses often nest data under `response.data.data` in wrapped executions\n- Search results are under `response.data.items`, not top-level\n\n## Quick Reference\n\n| Task | Tool Slug | Key Params |\n|------|-----------|------------|\n| Create deal | `PIPEDRIVE_ADD_A_DEAL` | `title`, `value`, `org_id`, `stage_id` |\n| Update deal | `PIPEDRIVE_UPDATE_A_DEAL` | `id`, `status`, `value`, `stage_id` |\n| Get deal details | `PIPEDRIVE_GET_DETAILS_OF_A_DEAL` | `id` |\n| Search persons | `PIPEDRIVE_SEARCH_PERSONS` | `term`, `fields` |\n| Add person | `PIPEDRIVE_ADD_A_PERSON` | `name`, `email`, `phone`, `org_id` |\n| Update person | `PIPEDRIVE_UPDATE_A_PERSON` | `id`, `name`, `email` |\n| Get person details | `PIPEDRIVE_GET_DETAILS_OF_A_PERSON` | `id` |\n| List all persons | `PIPEDRIVE_GET_ALL_PERSONS` | `start`, `limit`, `filter_id` |\n| Search organizations | `PIPEDRIVE_SEARCH_ORGANIZATIONS` | `term`, `fields` |\n| Add organization | `PIPEDRIVE_ADD_AN_ORGANIZATION` | `name`, `visible_to` |\n| Update organization | `PIPEDRIVE_UPDATE_AN_ORGANIZATION` | `id`, `name`, `address` |\n| Get org details | `PIPEDRIVE_GET_DETAILS_OF_AN_ORGANIZATION` | `id` |\n| Add activity | `PIPEDRIVE_ADD_AN_ACTIVITY` | `subject`, `type`, `due_date`, `deal_id` |\n| Update activity | `PIPEDRIVE_UPDATE_AN_ACTIVITY` | `id`, `done`, `due_date` |\n| Get activity details | `PIPEDRIVE_GET_DETAILS_OF_AN_ACTIVITY` | `id` |\n| List user activities | `PIPEDRIVE_GET_ALL_ACTIVITIES_ASSIGNED_TO_A_PARTICULAR_USER` | `user_id`, `start`, `limit` |\n| Add note | `PIPEDRIVE_ADD_A_NOTE` | `content`, `deal_id` or `person_id` |\n| List notes | `PIPEDRIVE_GET_ALL_NOTES` | `deal_id`, `person_id`, `start`, `limit` |\n| List pipelines | `PIPEDRIVE_GET_ALL_PIPELINES` | (none) |\n| Get pipeline details | `PIPEDRIVE_GET_ONE_PIPELINE` | `id` |\n| List stages | `PIPEDRIVE_GET_ALL_STAGES` | `pipeline_id` |\n| Deals in pipeline | `PIPEDRIVE_GET_DEALS_IN_A_PIPELINE` | `id`, `stage_id` |\n| Deals in stage | `PIPEDRIVE_GET_DEALS_IN_A_STAGE` | `id`, `start`, `limit` |\n| Add product to deal | `PIPEDRIVE_ADD_A_PRODUCT_TO_A_DEAL` | `id`, `product_id`, `item_price` |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.\n","","imported","https:\u002F\u002Fgithub.com\u002Fsickn33\u002Fantigravity-awesome-skills","user_system_seed","SkillOPIC",true,196,272,"2026-05-16 13:33:59",{"id":8,"name":21,"slug":22,"icon":23,"description":24,"sort":25,"createdAt":26},"效率工具","productivity","mdi-lightning-bolt-outline","文档处理、数据分析、自动化工作流",4,"2026-05-16 12:53:40",{"id":7,"name":28,"slug":29,"icon":30,"description":31,"moduleId":8,"sort":32,"skillCount":33,"createdAt":26},"自动化","automation","mdi-robot-outline","工作流自动化、批处理",3,101,[35],{"id":36,"skillId":4,"version":37,"fileName":38,"fileSize":39,"filePath":40,"fileHash":41,"manifest":42,"createdAt":19},"f0a7e89d-ab46-4cd6-bf46-4538b0eba8a8","1.0.0","pipedrive-automation.zip",4374,"uploads\u002Fskills\u002F4cd35ecb-7744-45eb-8022-0360b5aac13d\u002Fpipedrive-automation.zip","ea8dd937448bb10a63d7d42715628e3003dd12437a27ffd6952cfcac1f08bdbd","[{\"path\":\"SKILL.md\",\"isDirectory\":false,\"size\":12608}]",{"code":44,"message":45,"data":46},200,"success",{"items":47,"stats":48,"page":51},[],{"averageRating":49,"totalRatings":49,"ratingCounts":50},0,[49,49,49,49,49],{"limit":52,"offset":49,"hasMore":53,"nextOffset":52,"ratedOnly":16},15,false]