← Back to Skills Marketplace
fr3kstyle

HubSpot CRM

by fr3kstyle · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
120
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install hubspot-crm-skill
Description
Full HubSpot CRM automation — contacts, deals, companies, activities, and pipeline reports via the HubSpot API.
README (SKILL.md)

HubSpot CRM

Automate your entire HubSpot CRM from the command line. Create and manage contacts, deals, and companies; log activities (calls, emails, meetings, notes); and pull pipeline reports with conversion rates — all via the official HubSpot API with a single Bearer token.

Setup

Set your HubSpot Private App token as an environment variable:

export HUBSPOT_API_KEY="pat-na1-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"

Get your token: HubSpot → Settings → Integrations → Private Apps → Create a private app. Required scopes: crm.objects.contacts, crm.objects.deals, crm.objects.companies, crm.schemas.contacts, sales-email-read.

Commands / Usage

# ── CONTACTS ────────────────────────────────────────────
# List contacts (default 20, up to 100)
python3 scripts/hubspot_crm.py contacts-list
python3 scripts/hubspot_crm.py contacts-list --limit 50

# Search contacts by email or name
python3 scripts/hubspot_crm.py contacts-search --query "[email protected]"
python3 scripts/hubspot_crm.py contacts-search --query "John Smith"

# Create a contact
python3 scripts/hubspot_crm.py contacts-create --email "[email protected]" --firstname "Jane" --lastname "Doe" --phone "+1-555-0100" --company "Acme"

# Update a contact
python3 scripts/hubspot_crm.py contacts-update --id 12345 --phone "+1-555-9999" --jobtitle "CTO"

# Delete a contact
python3 scripts/hubspot_crm.py contacts-delete --id 12345

# ── DEALS ───────────────────────────────────────────────
# List all deals
python3 scripts/hubspot_crm.py deals-list
python3 scripts/hubspot_crm.py deals-list --limit 50

# Create a deal
python3 scripts/hubspot_crm.py deals-create --name "Acme Enterprise License" --stage "appointmentscheduled" --amount 12000 --contact-id 12345

# Update a deal
python3 scripts/hubspot_crm.py deals-update --id 67890 --stage "closedwon" --amount 15000

# Move deal stage
python3 scripts/hubspot_crm.py deals-move-stage --id 67890 --stage "contractsent"

# List pipeline stages
python3 scripts/hubspot_crm.py pipeline-list

# ── COMPANIES ───────────────────────────────────────────
# Create a company
python3 scripts/hubspot_crm.py companies-create --name "Acme Corp" --domain "acme.com" --industry "TECHNOLOGY"

# Search companies
python3 scripts/hubspot_crm.py companies-search --query "Acme"

# Associate contact with company
python3 scripts/hubspot_crm.py companies-associate --company-id 11111 --contact-id 22222

# ── ACTIVITIES ──────────────────────────────────────────
# Log an email activity
python3 scripts/hubspot_crm.py log-email --contact-id 12345 --subject "Follow-up" --body "Hi Jane, just checking in..."

# Log a call
python3 scripts/hubspot_crm.py log-call --contact-id 12345 --duration 300 --notes "Discussed pricing, very interested"

# Log a meeting
python3 scripts/hubspot_crm.py log-meeting --contact-id 12345 --title "Demo call" --notes "Showed product, positive feedback"

# Log a note
python3 scripts/hubspot_crm.py log-note --contact-id 12345 --body "Called and left voicemail"

# ── REPORTS ─────────────────────────────────────────────
# Get deal pipeline summary
python3 scripts/hubspot_crm.py report-pipeline

# Get conversion rates per stage
python3 scripts/hubspot_crm.py report-conversions

Requirements

  • Python 3.8+
  • requests (standard: pip install requests)
  • HUBSPOT_API_KEY environment variable
Usage Guidance
This skill's code and README legitimately require a HubSpot private app token (HUBSPOT_API_KEY) and only call api.hubapi.com. However, the registry metadata does not advertise that credential and the package has no listed source or homepage. Before installing, verify the skill's provenance (who published it), confirm you trust that publisher, and ensure you use a least-privilege HubSpot private app token with only the scopes documented. Consider testing in an isolated environment or with a dedicated HubSpot sandbox account/token first. If you need higher assurance, ask the publisher to update registry metadata to declare HUBSPOT_API_KEY as a required credential and to provide a source URL or repository you can audit.
Capability Analysis
Type: OpenClaw Skill Name: hubspot-crm-skill Version: 1.0.0 The HubSpot CRM skill is a standard automation tool for managing CRM objects (contacts, deals, companies, and activities) via the official HubSpot API. The implementation in `scripts/hubspot_crm.py` is transparent, using the `requests` library to interact exclusively with `api.hubapi.com` and handling authentication through a user-provided environment variable. No indicators of data exfiltration, malicious execution, or prompt injection were found in the code or documentation.
Capability Assessment
Purpose & Capability
Name/description match the code: the Python CLI implements contacts, deals, companies, activities and reports via the HubSpot API, which legitimately requires a HubSpot API token. However, the registry metadata lists no required environment variables or primary credential even though both SKILL.md and the script require HUBSPOT_API_KEY. That metadata mismatch is an incoherence.
Instruction Scope
SKILL.md instructs only to set HUBSPOT_API_KEY and to run the provided CLI commands. The instructions stay inside the stated purpose and reference only HubSpot API usage. They do not instruct reading unrelated files, scanning system state, or sending data to external endpoints other than api.hubapi.com.
Install Mechanism
No install spec (instruction-only with a bundled script). This is low-risk — nothing is downloaded or installed automatically by the skill bundle. The script requires the 'requests' Python package, which is documented in SKILL.md.
Credentials
The code and SKILL.md require a HUBSPOT_API_KEY (a bearer token) with CRM scopes, which is appropriate for the stated functionality. But the registry metadata declares no required env vars or primary credential — that omission is unexpected and reduces transparency. Also provenance is unknown (no source/homepage), increasing risk if the token is provided without verifying the skill's origin.
Persistence & Privilege
The skill is not 'always' enabled and does not request elevated platform privileges or modify other skills. It can be invoked by the user and (by default) autonomously, which is the platform norm and acceptable here given the rest of the footprint.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install hubspot-crm-skill
  3. After installation, invoke the skill by name or use /hubspot-crm-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Contacts, deals, companies, activities, pipeline reports via HubSpot API
Metadata
Slug hubspot-crm-skill
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is HubSpot CRM?

Full HubSpot CRM automation — contacts, deals, companies, activities, and pipeline reports via the HubSpot API. It is an AI Agent Skill for Claude Code / OpenClaw, with 120 downloads so far.

How do I install HubSpot CRM?

Run "/install hubspot-crm-skill" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is HubSpot CRM free?

Yes, HubSpot CRM is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does HubSpot CRM support?

HubSpot CRM is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created HubSpot CRM?

It is built and maintained by fr3kstyle (@fr3kstyle); the current version is v1.0.0.

💬 Comments