Claude-skill-registry hubspot-search-contacts

Search contacts in HubSpot CRM by email, name, or company. Load when user says 'search contacts', 'find contact', 'lookup contact', 'search for [name]'.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/hubspot-search-contacts" ~/.claude/skills/majiayu000-claude-skill-registry-hubspot-search-contacts && rm -rf "$T"
manifest: skills/data/hubspot-search-contacts/SKILL.md
source content

Search HubSpot Contacts

Specialized skill for searching contacts in HubSpot CRM.

Pre-Flight Check

Before running, execute config check:

python 00-system/skills/hubspot/hubspot-master/scripts/check_hubspot_config.py --json

If

ai_action
is not
proceed_with_operation
, follow hubspot-connect setup guide.


Usage

Search by Email

python 00-system/skills/hubspot/hubspot-master/scripts/search_contacts.py \
  --email "john@example.com" \
  --json

Search by Name

python 00-system/skills/hubspot/hubspot-master/scripts/search_contacts.py \
  --name "John" \
  --json

Search by Company

python 00-system/skills/hubspot/hubspot-master/scripts/search_contacts.py \
  --company "Acme" \
  --json

Combined Search with Limit

python 00-system/skills/hubspot/hubspot-master/scripts/search_contacts.py \
  --name "John" \
  --company "Acme" \
  --limit 20 \
  --json

Output Format

{
  "total": 5,
  "results": [
    {
      "id": "12345",
      "properties": {
        "email": "john@example.com",
        "firstname": "John",
        "lastname": "Doe",
        "company": "Acme Corp"
      },
      "url": "https://app.hubspot.com/..."
    }
  ]
}

Display Format

Found 5 contacts matching "John":

1. John Doe
   Email: john@example.com
   Company: Acme Corp
   ID: 12345

2. Johnny Smith
   Email: johnny@corp.com
   Company: Tech Inc
   ID: 12346
   ...

Search Behavior

  • Name search uses
    CONTAINS_TOKEN
    operator (partial match)
  • Email search uses
    EQ
    operator (exact match)
  • Company search uses
    CONTAINS_TOKEN
    operator (partial match)
  • Multiple filters are combined with AND logic

Error Handling

ErrorSolution
401Invalid token - re-run setup
403Missing
crm.objects.contacts.read
scope
429Rate limited - wait and retry

Related Skills

  • hubspot-list-contacts
    - List all contacts
  • hubspot-update-contact
    - Update found contact
  • hubspot-create-contact
    - Create if not found