Skills Agentes

Hubspot

Gestiona contactos, empresas, deals y contenido CMS de HubSpot CRM vía API: crear, buscar, asociar y actualizar registros y páginas de tu pipeline de ventas.

Estrellas
688

en todo el repo

Actividad
25

0–100, la ruta de este skill

Actualizado
hace 7 meses

último commit aquí

Commits
0

últimos 90 días

Contexto
1.8k tok

74 tok en reposo

Paquete
1 archivo

7 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add OpenClaudia/openclaudia-skills --skill hubspot --agent claude-code

Se instala solo en este repositorio.

Este skill makes network requests, needs API credentials.

Qué hace

  • Gestiona contactos, empresas y deals de HubSpot vía API (crear, listar, buscar, actualizar)
  • Crea asociaciones entre contactos, empresas y deals
  • Lista propiedades, owners y páginas CMS (site pages, landing pages)
  • Genera reportes de pipeline agrupando deals por etapa y sumando montos
  • Detecta deals sin actividad o con fecha de cierre vencida

Úsalo cuando

  • El usuario dice "add contact to HubSpot", "create deal", "search CRM" o "HubSpot contacts"
  • Se pide actualizar la etapa de un deal ("update deal stage")
  • Se solicita un reporte de CRM o del pipeline de ventas
  • Se pregunta por gestión de datos de CRM o contenido de HubSpot ("HubSpot pages")

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • Añade este contacto a HubSpot con su email y empresa
    • Crea un deal nuevo en el pipeline por 50000 dólares
    • Busca contactos cuyo email contenga example.com
    • Actualiza la etapa del deal 12345 a closedwon
    • Dame un reporte del pipeline agrupado por etapa

    SKILL.md

    En inglés

    HubSpot CRM & CMS Skill

    You are a HubSpot CRM and CMS automation expert. Use the HubSpot API to manage contacts, companies, deals, owners, associations, properties, CMS pages, and files.

    Prerequisites

    This skill requires HUBSPOT_ACCESS_TOKEN (Private App token). Check for it in environment variables or ~/.claude/.env.global. If not found, inform the user:

    This skill requires a HubSpot Private App access token. Set it via:
      export HUBSPOT_ACCESS_TOKEN=your_token_here
    Or add it to ~/.claude/.env.global
    
    Create a Private App at: Settings > Integrations > Private Apps
    Required scopes: crm.objects.contacts, crm.objects.companies, crm.objects.deals, content
    

    API Reference

    Base URL: https://api.hubapi.com Auth header: Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN} Rate limit: 100 requests per 10 seconds for private apps.

    Contacts

    List contacts:

    curl -s "https://api.hubapi.com/crm/v3/objects/contacts?limit=10&properties=firstname,lastname,email,company,phone" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Search contacts:

    curl -s -X POST "https://api.hubapi.com/crm/v3/objects/contacts/search" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "filterGroups": [{
          "filters": [{
            "propertyName": "email",
            "operator": "CONTAINS_TOKEN",
            "value": "example.com"
          }]
        }],
        "properties": ["firstname", "lastname", "email", "company"],
        "limit": 10
      }'
    

    Create contact:

    curl -s -X POST "https://api.hubapi.com/crm/v3/objects/contacts" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "properties": {
          "firstname": "John",
          "lastname": "Doe",
          "email": "john@example.com",
          "company": "Acme Inc",
          "phone": "+1234567890"
        }
      }'
    

    Get contact by email:

    curl -s -X POST "https://api.hubapi.com/crm/v3/objects/contacts/search" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "filterGroups": [{
          "filters": [{
            "propertyName": "email",
            "operator": "EQ",
            "value": "john@example.com"
          }]
        }],
        "properties": ["firstname", "lastname", "email", "company", "phone", "lifecyclestage"]
      }'
    

    Companies

    List companies:

    curl -s "https://api.hubapi.com/crm/v3/objects/companies?limit=10&properties=name,domain,industry,numberofemployees" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Search companies by domain:

    curl -s -X POST "https://api.hubapi.com/crm/v3/objects/companies/search" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "filterGroups": [{
          "filters": [{
            "propertyName": "domain",
            "operator": "EQ",
            "value": "example.com"
          }]
        }],
        "properties": ["name", "domain", "industry", "numberofemployees", "annualrevenue"]
      }'
    

    Deals

    Create deal:

    curl -s -X POST "https://api.hubapi.com/crm/v3/objects/deals" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{
        "properties": {
          "dealname": "New Enterprise Deal",
          "dealstage": "appointmentscheduled",
          "pipeline": "default",
          "amount": "50000",
          "closedate": "2026-06-30"
        }
      }'
    

    List deals:

    curl -s "https://api.hubapi.com/crm/v3/objects/deals?limit=10&properties=dealname,dealstage,amount,closedate,pipeline" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Update deal stage:

    curl -s -X PATCH "https://api.hubapi.com/crm/v3/objects/deals/{dealId}" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}" \
      -H "Content-Type: application/json" \
      -d '{"properties": {"dealstage": "closedwon"}}'
    

    Owners

    List owners (sales reps):

    curl -s "https://api.hubapi.com/crm/v3/owners/" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Associations

    Associate contacts with companies or deals:

    # Associate deal with contact (type 3)
    curl -s -X PUT "https://api.hubapi.com/crm/v3/objects/deals/{dealId}/associations/contacts/{contactId}/3" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    
    # Associate deal with company (type 5)
    curl -s -X PUT "https://api.hubapi.com/crm/v3/objects/deals/{dealId}/associations/companies/{companyId}/5" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    
    # Associate contact with company (type 1)
    curl -s -X PUT "https://api.hubapi.com/crm/v3/objects/contacts/{contactId}/associations/companies/{companyId}/1" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Get associated contacts for a deal:

    curl -s "https://api.hubapi.com/crm/v3/objects/deals/{dealId}/associations/contacts" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Properties

    List all contact properties:

    curl -s "https://api.hubapi.com/crm/v3/properties/contacts" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    CMS Pages

    List site pages:

    curl -s "https://api.hubapi.com/cms/v3/pages/site-pages?limit=10" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    List landing pages:

    curl -s "https://api.hubapi.com/cms/v3/pages/landing-pages?limit=10" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    Search Operators

    Operator Description
    EQ Equal to
    NEQ Not equal to
    LT / LTE Less than / Less than or equal
    GT / GTE Greater than / Greater than or equal
    CONTAINS_TOKEN Contains word
    NOT_CONTAINS_TOKEN Does not contain word
    HAS_PROPERTY Property exists
    NOT_HAS_PROPERTY Property does not exist

    Pagination

    All list endpoints support pagination via the after parameter:

    curl -s "https://api.hubapi.com/crm/v3/objects/contacts?limit=100&after={next_cursor}" \
      -H "Authorization: Bearer ${HUBSPOT_ACCESS_TOKEN}"
    

    The after value comes from paging.next.after in the response.

    Common Workflows

    Pipeline Report

    1. List all deals with dealstage, amount, closedate
    2. Group by stage
    3. Sum amounts per stage
    4. Present as pipeline summary table

    Contact Enrichment

    1. Search contacts missing key properties (NOT_HAS_PROPERTY)
    2. For each, check if company domain exists
    3. Pull company data and update contact

    Deal Health Check

    1. List deals in active stages
    2. Flag deals with no activity in 14+ days
    3. Flag deals past expected close date
    4. Present prioritized action list

    Important Notes

    • Always use pagination for large datasets. Default limit is 10, max is 100.
    • HubSpot property names are lowercase with no spaces (e.g., firstname, dealstage, closedate).
    • Deal stages vary by pipeline. List pipeline stages via the Pipelines API if needed.
    • Rate limit: 100 requests per 10 seconds. Batch operations when possible.

    Reproducido de OpenClaudia/openclaudia-skills bajo licencia MIT. Leer esta página en markdown.

    Archivos

    1 archivo en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Requiere la variable HUBSPOT_ACCESS_TOKEN (token de una Private App de HubSpot) en el entorno o en ~/.claude/.env.global, con los scopes crm.objects.contacts, crm.objects.companies, crm.objects.deals y content.

    Necesita en el PATH:curl

    Variables de entorno:HUBSPOT_ACCESS_TOKEN

    Detalles

    Categoría
    Bases de datos
    Licencia
    MIT
    Recursos incluidos
    Solo SKILL.md
    Código fuente
    Ver SKILL.md

    Más de OpenClaudia/openclaudia-skills

    Este repo incluye 76 skills. Si instalas uno, normalmente ya tienes los demás. Ver el pack openclaudia-skills entero y su comando de instalación

    Genera un informe HTML autocontenible de tráfico competitivo: visitas mensuales (SimilarWeb), tráfico orgánico y Domain Rating (Ahrefs), con gráficos ranked, tendencias y tabla de datos.

    Costo de contexto al activarse
    1.2k tok
    Tamaño del paquete
    4 archivos
    Última actualización
    hace 3 días
    seo geo

    Obtiene datos de marca (nombre, descripción, logos, industria) desde la API de brand.dev y guarda los logos localmente.

    Costo de contexto al activarse
    702 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    datos analitica

    Audita TODAS las propiedades de Google Search Console a la vez: ranking por clics e impresiones con deltas, y diff de keywords por sitio (nuevas, suben, bajan, perdidas, o bien rankeadas sin clics).

    Costo de contexto al activarse
    1k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    el mes pasado
    seo geo

    Edita audio o video de podcast: recorta charla previa/posterior, quita muletillas, corta silencios, mejora el audio y aplica el mismo corte a una versión en video.

    Costo de contexto al activarse
    6k tok
    Tamaño del paquete
    3 archivos
    Última actualización
    el mes pasado
    redaccion contenido

    Clasifica y resume el feed de WeChat Moments (朋友圈) del usuario para que los eventos reales y la información genuina destaquen sobre la promoción, ponderando según cuánto le escribe el usuario a cada autor.

    Costo de contexto al activarse
    1.2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    redes sociales

    Genera un informe de Citaciones de IA (GEO) para un dominio: qué prompts de búsqueda con IA citan el sitio en Google AI Overview y ChatGPT, con contexto de tráfico orgánico y cobertura por artículo.

    Costo de contexto al activarse
    840 tok
    Tamaño del paquete
    1 archivo
    Última actualización
    el mes pasado
    seo geo

    Skills relacionados

    Especialista en memoria V3 que unifica más de 6 sistemas de memoria en AgentDB con indexado HNSW (ADR-006 y ADR-009), logrando mejoras de búsqueda de 150x a 12.500x.

    Costo de contexto al activarse
    2.5k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 7 meses
    bases de datos

    Funciones avanzadas de AgentDB: sincronización QUIC, gestión de varias bases de datos, métricas de distancia personalizadas, búsqueda híbrida e integración con sistemas distribuidos multi-agente.

    Costo de contexto al activarse
    3.3k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 5 meses
    bases de datos

    Implementa patrones de memoria persistente para agentes de IA con AgentDB: memoria de sesión, almacenamiento a largo plazo, aprendizaje de patrones y gestión de contexto.

    Costo de contexto al activarse
    2.2k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 7 meses
    bases de datos