@elitedcs/ghl-mcp 3.74.0 → 3.75.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +50 -0
- package/README.md +11 -9
- package/dist/index.js +4807 -2049
- package/guide/guide.html +28 -6
- package/package.json +4 -4
- package/skills/blueprint/references/copy-guide.md +1 -1
- package/dist/assessment.html +0 -789
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,55 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.75.0 — what you install is only what you bought
|
|
4
|
+
|
|
5
|
+
Your install shipped a 49KB page for a product that is not on sale, and named that
|
|
6
|
+
product in seven places your assistant reads on every message — including the
|
|
7
|
+
description of a tool you own, the intake-form installer. A tool that is not part of
|
|
8
|
+
your licence still appears in the list; only running it is refused. So the words in its
|
|
9
|
+
description reached you whether or not you could ever call it.
|
|
10
|
+
|
|
11
|
+
None of it was usable and none of it was an upgrade prompt you asked for. All of it is
|
|
12
|
+
gone. Tools now say what they DO, the page is no longer in the package, and the desktop
|
|
13
|
+
launcher — which installed an entry for something your licence cannot open — now checks
|
|
14
|
+
your licence first.
|
|
15
|
+
|
|
16
|
+
Two guards were added so this cannot come back: one reads the actual package npm would
|
|
17
|
+
publish and fails on the asset, and one registers every tool and reads the real
|
|
18
|
+
descriptions, which is the surface that reached people.
|
|
19
|
+
|
|
20
|
+
Support email is now `support@ghlcommand.com` everywhere.
|
|
21
|
+
|
|
22
|
+
Also in this release: accounts you protect are enforced at the tool layer and in both
|
|
23
|
+
HTTP clients, a Claude Code version floor with a first-run check, a per-run cost meter,
|
|
24
|
+
and `get_user_guide` now RETURNS the guide's contents instead of taking over your screen
|
|
25
|
+
with a browser window — pass `open=true` when you actually want it opened.
|
|
26
|
+
|
|
27
|
+
Counts unchanged: 248 tools, 51 modules, free tier 112.
|
|
28
|
+
|
|
29
|
+
## Unreleased — your income is not all one shape
|
|
30
|
+
|
|
31
|
+
Not part of the GHL Command licence; these tools answer with a notice. The commercial
|
|
32
|
+
record could hold exactly one kind of thing: a
|
|
33
|
+
client whose GoHighLevel account you run. Pointed at a real Stripe account it found
|
|
34
|
+
**26 customers and could record none of them**, because most of them buy software and
|
|
35
|
+
have no sub-account at all — so the brief kept answering "no client has a commercial
|
|
36
|
+
record yet", which reads as "you have not filled it in" when the truth was "there is
|
|
37
|
+
nowhere to put the answer".
|
|
38
|
+
|
|
39
|
+
Every record now carries what kind of income it is: **a client whose account you run**,
|
|
40
|
+
**software** they bought from you, or **other** — event fees, revenue shares, training.
|
|
41
|
+
The distinction is not a label. Only a client appears on your build board, so recording
|
|
42
|
+
that a licence buyer pays you can never make them show up as a build you have not
|
|
43
|
+
started; and only a client is measured against your price floor, so a $97 licence is
|
|
44
|
+
never reported as underpriced against a minimum you set for running whole accounts.
|
|
45
|
+
|
|
46
|
+
`set_client_engagement` takes `key` alongside `locationId` for income with no account,
|
|
47
|
+
and refuses a key that collides with a real one. `sync_stripe` gains `recordAsIncome`,
|
|
48
|
+
which turns an unpairable Stripe customer into its own record and fills in what they pay
|
|
49
|
+
and when they renew. Your recurring revenue now counts every kind and shows the split.
|
|
50
|
+
|
|
51
|
+
Counts unchanged: 248 tools, 51 modules, free tier 112.
|
|
52
|
+
|
|
3
53
|
## 3.74.0 — your brief can see your Stripe
|
|
4
54
|
|
|
5
55
|
Command OS only; on the $97 licence these tools answer with upgrade information and
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# GHL Command — GoHighLevel MCP Server
|
|
2
2
|
|
|
3
|
-
**Full GoHighLevel API access for Claude.**
|
|
3
|
+
**Full GoHighLevel API access for Claude.** 248 tools across 51 modules — manage contacts, conversations, pipelines, calendars, funnels, workflows, invoices, custom objects, webhooks, and more. **Includes full workflow builder, funnel/page editor, form builder, pipeline builder, bulk operations, account export, and workflow cloning** — capabilities no other GHL tool offers. **Multi-tenant:** one install can run the workflow builder across multiple clients' GHL accounts.
|
|
4
4
|
|
|
5
5
|
**Distributed via npm as [`@elitedcs/ghl-mcp`](https://www.npmjs.com/package/@elitedcs/ghl-mcp).** Buyers install with one config block — no git, no Node.js setup, no terminal commands. Updates flow automatically (`npx @latest` re-resolves on every Claude restart).
|
|
6
6
|
|
|
@@ -8,12 +8,14 @@ Works with **both the Claude Desktop App and Claude Code terminal** — your cho
|
|
|
8
8
|
|
|
9
9
|
**License required.** Get it at [ghlcommand.com](https://ghlcommand.com?utm_source=npm&utm_medium=readme) — $97/mo, covering UNLIMITED GoHighLevel sub-accounts on up to 3 machines (never billed per account). **30-day time-back guarantee**: save 5+ hours on one client build or your first month back.
|
|
10
10
|
|
|
11
|
-
**Try it FREE (read-only tier).** Grab an instant free key at [ghlcommand.com/free](https://ghlcommand.com/free?utm_source=npm&utm_medium=readme) —
|
|
11
|
+
**Try it FREE (read-only tier).** Grab an instant free key at [ghlcommand.com/free](https://ghlcommand.com/free?utm_source=npm&utm_medium=readme) — 112 read-only tools on your own GHL account once the two-step install is finished (the same install as the paid tier — upgrading later is just a license swap): the account-wide workflow audit (`audit_workflows` finds the silently broken references GHL never warns you about), account health, and every read across contacts, pipelines, funnels, and workflows. Write tools stay visible and answer with upgrade info. Buying later with the same email upgrades your key in place — 1 machine on free, 3 when you upgrade.
|
|
12
12
|
|
|
13
13
|
**How this differs from HighLevel's official MCP.** HighLevel ships an official Anthropic MCP that reads and writes your CRM (contacts, conversations, calendars, opportunities, payments, social) over the public API — it's free and it's good; use it for that. What it *cannot* do, because the public API doesn't expose it: **build or edit workflows, build funnels/landing pages, or build forms.** That's exactly what GHL Command does — the programmatic Workflow Builder, funnel/page builder, form builder, deep workflow cloning, the silent-failure `audit_workflows`, and Blueprint (build a whole client account from one intake — ships as a guided skill that **installs itself automatically** with this package; nothing to download), all on GHL's internal APIs. **Official MCP = read/write your CRM. GHL Command = build and fix it.** They stack fine together.
|
|
14
14
|
|
|
15
15
|
**Bundled skills (install automatically).** The package ships guided skills that teach Claude complete multi-step workflows on top of the raw tools. On every start the server installs/updates them into your `~/.claude/skills/` (never overwriting files you've edited — your version wins and is reported). Current skills: **Blueprint** — turn one client intake into a complete reviewed GHL account build; **Clone Site** — point at a live URL and get a rebranded, deploy-ready copy for a client, with a recorded rights declaration, a style-only lane when you have no rights, and a mandatory pre-launch report of every lead/booking/payment destination, borrowed testimonial and inherited claim still belonging to the original owner; **GHL Reports** — counts, lists, and weekly reports that come back fast and verified (one-call windowed contact counts via `get_contact_count`, clean CSV list recipes, composed account summaries — never a guessed number, works on the free tier). Verify or repair any time by asking Claude to `run install_skills`, then fully restart Claude so new skills load.
|
|
16
16
|
|
|
17
|
+
**The user guide, in the conversation.** `get_user_guide` lists what is in the bundled guide library — every guide by title, plus the file path — and answers in the chat without touching your screen. Ask for the guide itself (`open=true`) and it opens in your browser. It used to only ever launch a browser window, which meant an assistant consulting the guide on your behalf threw a window in front of whatever you were doing; now reading is the default and opening is something you ask for.
|
|
18
|
+
|
|
17
19
|
Built by [Elite DCs, LLC](https://elitedcs.com).
|
|
18
20
|
|
|
19
21
|
---
|
|
@@ -135,7 +137,7 @@ Run setup_ghl_mcp to activate GHL Command:
|
|
|
135
137
|
ghl_location_id: YOUR_LOCATION_ID
|
|
136
138
|
```
|
|
137
139
|
|
|
138
|
-
Approve the tool call. Server validates your license, verifies your GHL credentials, writes them to a per-user config file. **Quit Claude one more time and reopen** — the full core toolset is now unlocked (
|
|
140
|
+
Approve the tool call. Server validates your license, verifies your GHL credentials, writes them to a per-user config file. **Quit Claude one more time and reopen** — the full core toolset is now unlocked (248 tools total with the optional Workflow Builder Firebase add-on).
|
|
139
141
|
|
|
140
142
|
### 4. Try it
|
|
141
143
|
|
|
@@ -175,7 +177,7 @@ https://app.gohighlevel.com/v2/location/YOUR_LOCATION_ID/dashboard
|
|
|
175
177
|
|
|
176
178
|
## Enable the Workflow Builder
|
|
177
179
|
|
|
178
|
-
The builder + cloner + validator tools (workflow builder, funnel builder, form builder, pipeline builder, workflow cloner, validate_workflow) use GHL's internal API and require Firebase credentials. Without them, the other
|
|
180
|
+
The builder + cloner + validator tools (workflow builder, funnel builder, form builder, pipeline builder, workflow cloner, validate_workflow) use GHL's internal API and require Firebase credentials. Without them, the other 195 tools work fine — you just won't have workflow/funnel/form/pipeline editing. This is the flagship feature: do this step.
|
|
179
181
|
|
|
180
182
|
**One-click capture (v3.49.0+, the supported path):**
|
|
181
183
|
|
|
@@ -521,7 +523,7 @@ Highlights (full guide: [`docs/HEADLESS.md`](docs/HEADLESS.md)):
|
|
|
521
523
|
|---|---|
|
|
522
524
|
| `get_mcp_version` | Check installed version against the latest published to npm. Confirms an upgrade landed after restarting Claude. Available even before GHL credentials are configured. |
|
|
523
525
|
| `health_check` | Run a full health check: npm registry + version status, GHL API key validity, default location reachability, Firebase auth status, token registry presence. Use when something feels broken. |
|
|
524
|
-
| `enable_workflow_builder` | Add Firebase credentials to an existing install to unlock
|
|
526
|
+
| `enable_workflow_builder` | Add Firebase credentials to an existing install to unlock 53 additional Firebase-gated tools (workflow builder, funnel builder, form builder, pipeline builder, workflow cloner, smart lists, reputation, email campaigns, email templates, memberships, validate_workflow). No need to re-enter license / API key / location ID. Run this any time after the basic setup, on the buyer's schedule. |
|
|
525
527
|
|
|
526
528
|
### Other Modules
|
|
527
529
|
|
|
@@ -578,7 +580,7 @@ Highlights (full guide: [`docs/HEADLESS.md`](docs/HEADLESS.md)):
|
|
|
578
580
|
- **`src/workflow-builder-client.ts`** — Internal API client for workflow CRUD. Firebase auth with thread-safe token refresh (promise lock), retry/backoff, Zod-validated `WorkflowFull` responses, and pre-flight `validateActionChain()` that catches common action attribute errors before GHL can silently fail.
|
|
579
581
|
- **`src/api-schemas.ts`** — Zod response schemas for contacts, pipelines, and calendars. Runtime validation on the most-used API paths.
|
|
580
582
|
- **`src/workflow-action-types.ts`** — Discriminated union types for all 11 documented workflow action types. Compile-time enforcement of action-specific attributes (SMS needs `body`, email needs `subject`+`html`, etc.).
|
|
581
|
-
- **`src/tool-helpers.ts`** — `safeTool()` wrapper (automatic try/catch + JSON formatting
|
|
583
|
+
- **`src/tool-helpers.ts`** — `safeTool()` wrapper (automatic try/catch + JSON formatting, used by most tools), response helpers, error formatting.
|
|
582
584
|
- **`src/token-registry.ts`** — Per-location API key storage, Zod-validated on load with corruption backup.
|
|
583
585
|
- **`src/tools/index.ts`** — Type-safe registry array. Compiler catches missing tool registrations.
|
|
584
586
|
- **`src/tools/*.ts`** — One file per GHL domain. Most use `safeTool()` for zero-boilerplate handlers.
|
|
@@ -801,7 +803,7 @@ Source repo is private. Contributors need an invitation from `drjerryrelth`. The
|
|
|
801
803
|
|
|
802
804
|
### Reducing context / token usage
|
|
803
805
|
|
|
804
|
-
Every registered MCP tool's schema is shipped to the model on every message. With
|
|
806
|
+
Every registered MCP tool's schema is shipped to the model on every message. With 248 tools that's a meaningful per-message context cost even in chats that never touch GHL. If you only use a slice of GHL Command, restrict the tool surface with `GHL_ENABLED_MODULES` and/or `GHL_ENABLED_TOOLS`:
|
|
805
807
|
|
|
806
808
|
```jsonc
|
|
807
809
|
// Claude Desktop config — enable whole modules
|
|
@@ -879,7 +881,7 @@ How the deny-list behaves:
|
|
|
879
881
|
| MCP tools don't appear (Desktop App) | Config missing or wrong | Check `~/Library/Application Support/Claude/claude_desktop_config.json` has a `ghl` entry under `mcpServers` (see Quick Start above for the exact block) |
|
|
880
882
|
| MCP tools don't appear (Desktop App) | App not restarted | Quit the Claude app completely (Cmd+Q on Mac) and reopen it |
|
|
881
883
|
| `License key not found` | Wrong email or license_key | Both must match exactly what we have on file. Check spam for the welcome email. |
|
|
882
|
-
| `License key already activated on 3 devices` | Activation limit hit | Email `support@
|
|
884
|
+
| `License key already activated on 3 devices` | Activation limit hit | Email `support@ghlcommand.com` to reset |
|
|
883
885
|
| `locationId is required` | Tool needs a location ID | Set `GHL_LOCATION_ID` in your env, or tell Claude which location to use |
|
|
884
886
|
| `GHL API Error 401` | Invalid or expired key | Generate a new API key in GHL > Settings > Integrations |
|
|
885
887
|
| `GHL API Error 403` | Key from wrong sub-account | Create a new Private Integration **inside the correct sub-account** |
|
|
@@ -895,7 +897,7 @@ Built by **[Elite DCs, LLC](https://elitedcs.com)** — a digital marketing and
|
|
|
895
897
|
|
|
896
898
|
**Tech stack:** TypeScript, Node.js, esbuild, MCP SDK, Zod, GHL API v2, Firebase Auth
|
|
897
899
|
|
|
898
|
-
**Version:** 3.
|
|
900
|
+
**Version:** 3.75.0
|
|
899
901
|
|
|
900
902
|
---
|
|
901
903
|
|