Automate HubSpot CRM operations (contacts, companies, deals, tickets, properties) via Rube MCP using Composio integration.
npx skills add https://github.com/davepoon/buildwithclaude --skill hubspot-automation
Not in the registry: rube
The skill names a server we cannot find in the official MCP registry. It may be private, renamed, or never published — either way, the skill will not work until you have it.
Automate HubSpot CRM workflows including contact/company management, deal pipeline tracking, ticket search, and custom property creation through Composio's HubSpot toolkit.
Toolkit docs: composio.dev/toolkits/hubspot
RUBE_MANAGE_CONNECTIONS with toolkit hubspotRUBE_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 hubspotWhen to use: User wants to create new contacts or update existing ones in HubSpot CRM
Tool sequence:
HUBSPOT_GET_ACCOUNT_INFO - Verify connection and permissions (Prerequisite)HUBSPOT_SEARCH_CONTACTS_BY_CRITERIA - Search for existing contacts to avoid duplicates (Prerequisite)HUBSPOT_READ_A_CRM_PROPERTY_BY_NAME - Check property metadata for constrained values (Optional)HUBSPOT_CREATE_CONTACT - Create a single contact (Required)HUBSPOT_CREATE_CONTACTS - Batch create contacts up to 100 (Alternative)Key parameters:
HUBSPOT_CREATE_CONTACT: properties object with email, firstname, lastname, phone, companyHUBSPOT_CREATE_CONTACTS: inputs array of {properties} objects, max 100 per batchHUBSPOT_SEARCH_CONTACTS_BY_CRITERIA: filterGroups array with {filters: [{propertyName, operator, value}]}, properties array of fields to returnPitfalls:
When to use: User wants to create, search, or update company records
Tool sequence:
HUBSPOT_SEARCH_COMPANIES - Search existing companies (Prerequisite)HUBSPOT_CREATE_COMPANIES - Batch create companies, max 100 (Required)HUBSPOT_UPDATE_COMPANIES - Batch update existing companies (Alternative)HUBSPOT_GET_COMPANY - Get single company details (Optional)HUBSPOT_BATCH_READ_COMPANIES_BY_PROPERTIES - Bulk read companies by property values (Optional)Key parameters:
HUBSPOT_CREATE_COMPANIES: inputs array of {properties} objects, max 100HUBSPOT_SEARCH_COMPANIES: filterGroups, properties, sorts, limit, after (pagination cursor)Pitfalls:
When to use: User wants to search deals, view pipeline stages, or track deal progress
Tool sequence:
HUBSPOT_RETRIEVE_ALL_PIPELINES_FOR_SPECIFIED_OBJECT_TYPE - Map pipeline and stage IDs/names (Prerequisite)HUBSPOT_SEARCH_DEALS - Search deals with filters (Required)HUBSPOT_RETRIEVE_PIPELINE_STAGES - Get stage details for one pipeline (Optional)HUBSPOT_RETRIEVE_OWNERS - Get owner/rep details (Optional)HUBSPOT_GET_DEAL - Get single deal details (Optional)HUBSPOT_LIST_DEALS - List all deals without filters (Fallback)Key parameters:
HUBSPOT_SEARCH_DEALS: filterGroups with filters on pipeline, dealstage, createdate, closedate, hubspot_owner_id; properties, sorts, limit, afterHUBSPOT_RETRIEVE_ALL_PIPELINES_FOR_SPECIFIED_OBJECT_TYPE: objectType set to 'deals'Pitfalls:
response.data.results; properties are often strings (amounts, dates)label field for displaypipeline, dealstage, createdate), not display namespaging.next.after until absentWhen to use: User wants to find support tickets by status, date, or criteria
Tool sequence:
HUBSPOT_SEARCH_TICKETS - Search with filterGroups (Required)HUBSPOT_READ_ALL_PROPERTIES_FOR_OBJECT_TYPE - Discover available property names (Fallback)HUBSPOT_GET_TICKET - Get single ticket details (Optional)HUBSPOT_GET_TICKETS - Bulk fetch tickets by IDs (Optional)Key parameters:
HUBSPOT_SEARCH_TICKETS: filterGroups, properties (only listed fields are returned), sorts, limit, afterPitfalls:
propertyName/operator returns zero results without errorsproperties array are returned; missing ones break downstream logicWhen to use: User wants to add custom fields to CRM objects
Tool sequence:
HUBSPOT_READ_ALL_PROPERTIES_FOR_OBJECT_TYPE - List existing properties (Prerequisite)HUBSPOT_READ_PROPERTY_GROUPS_FOR_OBJECT_TYPE - List property groups (Optional)HUBSPOT_CREATE_PROPERTY_FOR_SPECIFIED_OBJECT_TYPE - Create a single property (Required)HUBSPOT_CREATE_BATCH_OF_PROPERTIES - Batch create properties (Alternative)HUBSPOT_UPDATE_SPECIFIC_CRM_PROPERTY - Update existing property definition (Optional)Key parameters:
HUBSPOT_CREATE_PROPERTY_FOR_SPECIFIED_OBJECT_TYPE: objectType, name, label, type (string/number/date/enumeration), fieldType, groupName, options (for enumerations)Pitfalls:
value and labelHUBSPOT_READ_ALL_PROPERTIES_FOR_OBJECT_TYPEHUBSPOT_RETRIEVE_ALL_PIPELINES_FOR_SPECIFIED_OBJECT_TYPEHUBSPOT_RETRIEVE_OWNERSpaging.next.after until absentafter value from previous response to get next pageCREATE_CONTACTS, CREATE_COMPANIES, UPDATE_COMPANIES) instead of single-record endpoints for efficiencyREAD_ALL_PROPERTIES_FOR_OBJECT_TYPE to discover correct namesresponse.data.results with properties as string valuespaging.next.after cursor, not page numbers. Continue until after is absentHUBSPOT_GET_ACCOUNT_INFO first; auth failures cascade to all subsequent calls| Task | Tool Slug | Key Params |
|------|-----------|------------|
| Create contact | HUBSPOT_CREATE_CONTACT | properties: {email, firstname, lastname} |
| Batch create contacts | HUBSPOT_CREATE_CONTACTS | inputs: [{properties}] (max 100) |
| Search contacts | HUBSPOT_SEARCH_CONTACTS_BY_CRITERIA | filterGroups, properties, limit, after |
| Create companies | HUBSPOT_CREATE_COMPANIES | inputs: [{properties}] (max 100) |
| Search companies | HUBSPOT_SEARCH_COMPANIES | filterGroups, properties, after |
| Search deals | HUBSPOT_SEARCH_DEALS | filterGroups, properties, after |
| Get pipelines | HUBSPOT_RETRIEVE_ALL_PIPELINES_FOR_SPECIFIED_OBJECT_TYPE | objectType: 'deals' |
| Search tickets | HUBSPOT_SEARCH_TICKETS | filterGroups, properties, after |
| List properties | HUBSPOT_READ_ALL_PROPERTIES_FOR_OBJECT_TYPE | objectType |
| Create property | HUBSPOT_CREATE_PROPERTY_FOR_SPECIFIED_OBJECT_TYPE | objectType, name, label, type, fieldType |
| Get owners | HUBSPOT_RETRIEVE_OWNERS | None |
| Verify connection | HUBSPOT_GET_ACCOUNT_INFO | None |
*Powered by Composio*
Integration with protocols.io API for managing scientific protocols. This skill should be used when working with protocols.io to search, create, update, or publish protocols; manage protocol steps and materials; handle discussions and comments; organize workspaces; upload and manage files; or integrate protocols.io functionality into workflows. Applicable for protocol discovery, collaborative protocol development, experiment tracking, lab protocol management, and scientific documentation.
Analyzes job descriptions and generates tailored resumes that highlight relevant experience, skills, and achievements to maximize interview chances
Generate Excalidraw diagrams from natural language descriptions. Use when asked to "create a diagram", "make a flowchart", "visualize a process", "draw a system architecture", "create a mind map", or "generate an Excalidraw file". Supports flowcharts, relationship diagrams, mind maps, and system architecture diagrams. Outputs .excalidraw JSON files that can be opened directly in Excalidraw.
Build and distribute Expo development clients locally or via TestFlight
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.
Benchling R&D platform integration. Access registry (DNA, proteins), inventory, ELN entries, workflows via API, build Benchling Apps, query Data Warehouse, for lab data management automation.
Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.
Take davepoon/hubspot-automation from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.