@elitedcs/ghl-mcp 3.88.1 → 3.89.0-beta.1
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 +34 -0
- package/README.md +8 -6
- package/dist/index.js +12404 -5579
- package/guide/guide.html +50 -13
- package/package.json +1 -1
- package/skills/blueprint/presets/clinic.preset.json +2 -2
- package/skills/blueprint/presets/coach.preset.json +1 -1
- package/skills/blueprint/presets/ecommerce.preset.json +1 -1
- package/skills/blueprint/presets/generic-client.preset.json +1 -1
- package/skills/blueprint/presets/local-service.preset.json +1 -1
- package/skills/blueprint/presets/med-spa.preset.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,39 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 3.89.0-beta.1: test build with safer workflow changes, one-click fixes and branded reports
|
|
4
|
+
|
|
5
|
+
This is a beta, a test build for members who want the next release early. It is published under the "beta" label, so a normal install stays on 3.88.2 until the full release. Everything below is new since 3.88.2.
|
|
6
|
+
|
|
7
|
+
**How to try the beta.** Paste this in a terminal: `npx -y @elitedcs/ghl-mcp@beta cli install --beta`, then quit Claude fully and open it again. If you build client accounts from the cockpit, also paste `npx -y @elitedcs/ghl-mcp@beta cli install --claude-code --beta` (it switches an existing GHL Command entry in Claude Code to the beta and says what it changed). To go back to the normal release, paste `npx -y @elitedcs/ghl-mcp@beta cli install --latest`, which points the Claude app back at the normal release and keeps your settings. If you added the beta to Claude Code, also paste `claude mcp remove ghl -s user` and then `claude mcp add --scope user -t stdio ghl -- npx -y @elitedcs/ghl-mcp@latest`. If you installed the cockpit's desktop launcher from the beta, run `npx -y @elitedcs/ghl-mcp@latest install-launcher` once so it falls back to the normal release too. When the full release comes out, a beta install does not move to it by itself: it stays on the beta until you run those go-back lines. Asking Claude for the GHL Command version on a beta says whether you are ahead of the normal release or whether a full release is out, and gives the go-back line.
|
|
8
|
+
|
|
9
|
+
**Switching a workflow on is checked first.** Before a workflow goes live, GHL Command runs the same checks as validate_workflow on exactly the version that would go live. If any check finds an error, nothing is switched on and each error is named. Changes to a workflow that is already live get the same check before they are saved, so a broken step never reaches real contacts. Warnings never block.
|
|
10
|
+
|
|
11
|
+
**A workflow update can no longer delete steps by accident.** When Claude saves a workflow's steps, the list it sends replaces the whole workflow. If that list would remove steps that are there now, the save is refused and the steps are listed, unless the exact number being removed is confirmed. A save also keeps the workflow's sender phone number, which some saves used to clear.
|
|
12
|
+
|
|
13
|
+
**Webhook keys stay hidden.** Any reply that shows a workflow now hides the keys, tokens and passwords inside its webhook steps, showing only the last four characters. Sending that workflow back unchanged keeps the real keys, and a hidden key pasted anywhere else is refused.
|
|
14
|
+
|
|
15
|
+
**Reports can carry your brand.** Each report can show your agency's name, colour and logo, a neutral look, or the GHL Command look, and the choice is remembered for each client. Your logo can be a file on your computer, so it prints and travels with a saved copy.
|
|
16
|
+
|
|
17
|
+
**Secret Shopper for prospects (part of the cockpit plan).** Ask Claude to "run the Secret Shopper on" a prospect's website and it builds a one-page sales report: what a visitor would find missing, scored the same way every time. Gaps are pitched only under services you say you sell, and the report can end with a "Book the walkthrough" button that opens your own booking link, set in your agency profile.
|
|
18
|
+
|
|
19
|
+
**One-click fixes on the Workflow Audit Pro report (part of the cockpit plan).** Some problems on the report now have a fix button, for example a message that greets a lead with a blank name. The button shows the exact change first and writes nothing until you approve. After you approve, it writes the change, reads it back from GoHighLevel to check it held, and offers Undo. If leads are waiting at that step, the fix stops and tells you why. On a live workflow, a fix is refused only if it would add a new problem; problems that were already there are listed as "already there, not changed by this fix" and do not block it.
|
|
20
|
+
|
|
21
|
+
**Add your staff first (part of the cockpit plan).** Each client card now has an "Add your staff" step before Intake. List who works at the client; the cockpit checks the account's users by email, and Intake and Build wait until everyone listed is there, saying who is missing. With an agency key, "Add them for me" adds them; otherwise the step shows exactly where to add them in GoHighLevel. When a calendar is held back because its people are missing, the build says so in one plain sentence instead of building it with a blank name.
|
|
22
|
+
|
|
23
|
+
**Clearer first steps for new members (part of the cockpit plan).** The cockpit's readiness check now also checks that GHL Command is added to Claude Code, which every client-build stage runs through, and `npx -y @elitedcs/ghl-mcp@beta cli install --claude-code --beta` adds it during the beta (on the full release it is the same line with `@latest` and without `--beta`). Every place that tells you where to find the Private Integration key, the Location ID or the staff page now gives the same directions, checked on a real GoHighLevel screen. A missing workflow builder login now says "Unlock the Workflow Builder", and the Verify step says it only reads, since builds no longer make pages.
|
|
24
|
+
|
|
25
|
+
**Zoom in the cockpit (part of the cockpit plan).** Zoom is now on the Connections page. It reads only, and your recent recordings show in the daily brief.
|
|
26
|
+
|
|
27
|
+
**Two clinics in one sub-account.** Blueprint can build a second clinic into a sub-account that already holds one. Each clinic's records carry its own short prefix, the cockpit keeps each clinic's records apart, and a build never changes the other clinic's live workflows.
|
|
28
|
+
|
|
29
|
+
**Smaller changes.** Claude Desktop's menu now lists the server as GHL Command, and running the installer again renames an old entry instead of adding a second one. get_custom_values and export_account now show each custom value's value. The clinic preset says privacy instead of naming a specific privacy law.
|
|
30
|
+
|
|
31
|
+
**What to try:** switch on a workflow that has a known error and see it named; ask Claude to change one step of a live workflow; run Workflow Audit Pro on a sandbox client and try a fix, then Undo; pick a brand for a report and save it as a PDF; ask Claude to run the Secret Shopper on a prospect's site; add a client's staff from the new step before Intake.
|
|
32
|
+
|
|
33
|
+
## 3.88.2: a workflow waiting on a calendar is never switched on
|
|
34
|
+
|
|
35
|
+
When a build asks to switch its workflows on, any workflow whose calendar could not be made yet now stays a draft, and the build lists it as a step for you with the reason. Before this fix such a workflow could be switched on without its calendar filter, so it would have reacted to bookings on every calendar in the account. Set up the calendar, then switch the workflow on.
|
|
36
|
+
|
|
3
37
|
## 3.88.1: light or dark, your choice
|
|
4
38
|
|
|
5
39
|
The circle at the top right of the cockpit now opens your menu: your agency, connections, the Members Hub, and Appearance. Choose Light or Dark to keep that look whatever your computer is set to, or Auto to follow it. The choice is remembered on this computer and applied before the page appears, so it never flashes the other way.
|
package/README.md
CHANGED
|
@@ -113,7 +113,7 @@ Open Claude Desktop → **Settings...** → **Developer** → **Edit Config**. T
|
|
|
113
113
|
```json
|
|
114
114
|
{
|
|
115
115
|
"mcpServers": {
|
|
116
|
-
"
|
|
116
|
+
"GHL Command": {
|
|
117
117
|
"command": "npx",
|
|
118
118
|
"args": ["-y", "@elitedcs/ghl-mcp@latest"]
|
|
119
119
|
}
|
|
@@ -121,7 +121,9 @@ Open Claude Desktop → **Settings...** → **Developer** → **Edit Config**. T
|
|
|
121
121
|
}
|
|
122
122
|
```
|
|
123
123
|
|
|
124
|
-
|
|
124
|
+
Older installs show it as ghl; that is the same thing.
|
|
125
|
+
|
|
126
|
+
If it already has other tools in it, do **not** paste over them — add only the `"GHL Command": { ... }` entry inside your existing `"mcpServers"` object. Save, then fully quit and reopen Claude. (Unsure? Run `npx -y @elitedcs/ghl-mcp@latest cli install --dry-run` to preview exactly what would change, or `--print-only` to get the merged file printed for you.)
|
|
125
127
|
|
|
126
128
|
</details>
|
|
127
129
|
|
|
@@ -448,7 +450,7 @@ Highlights (full guide: [`docs/HEADLESS.md`](docs/HEADLESS.md)):
|
|
|
448
450
|
| `create_workflow` | Create a new workflow from scratch (starts as draft) |
|
|
449
451
|
| `update_workflow_actions` | Add, edit, or remove actions, triggers, and branches in an existing workflow |
|
|
450
452
|
| `delete_workflow_full` | Permanently delete a workflow |
|
|
451
|
-
| `publish_workflow` | Publish a draft workflow to make it active |
|
|
453
|
+
| `publish_workflow` | Publish a draft workflow to make it active. Runs the `validate_workflow` checks on the live version first and refuses if they find any error |
|
|
452
454
|
| `get_trigger_registry` | Discover GHL's marketplace trigger apps (Zoom, WooCommerce, Shopify, etc.) and their available trigger templates |
|
|
453
455
|
| `validate_workflow` | Pre-flight validation: scans every action and trigger for references to pipelines, stages, custom fields, users, and other workflows; verifies each ID exists. Catches the silent-failure bug where invalid IDs make GHL skip subsequent actions |
|
|
454
456
|
| `build_goal_event` | Build a correctly-shaped goal-event node. Goals sit inline in the action chain — when the goal condition fires (e.g., review_request_clicked), the configured action runs (default: exit the workflow). Returns a `workflow_goal` node ready to wire into your actions array |
|
|
@@ -878,12 +880,12 @@ How the deny-list behaves:
|
|
|
878
880
|
|---|---|---|
|
|
879
881
|
| Only `setup_ghl_mcp` shows up; no other tools | Bootstrap mode — credentials not yet activated | Run `setup_ghl_mcp` with all four required fields, then restart Claude |
|
|
880
882
|
| MCP tools don't appear (CLI) | Server not registered | Run `claude mcp add --scope user -t stdio ghl -- npx -y @elitedcs/ghl-mcp@latest` |
|
|
881
|
-
| MCP tools don't appear (Desktop App) | Config missing or wrong | Check `~/Library/Application Support/Claude/claude_desktop_config.json` has a `
|
|
883
|
+
| MCP tools don't appear (Desktop App) | Config missing or wrong | Check `~/Library/Application Support/Claude/claude_desktop_config.json` has a `GHL Command` entry under `mcpServers` (see Quick Start above for the exact block) |
|
|
882
884
|
| MCP tools don't appear (Desktop App) | App not restarted | Quit the Claude app completely (Cmd+Q on Mac) and reopen it |
|
|
883
885
|
| `License key not found` | Wrong email or license_key | Both must match exactly what we have on file. Check spam for the welcome email. |
|
|
884
886
|
| `License key already activated on 3 devices` | Activation limit hit | Email `support@ghlcommand.com` to reset |
|
|
885
887
|
| `locationId is required` | Tool needs a location ID | Set `GHL_LOCATION_ID` in your env, or tell Claude which location to use |
|
|
886
|
-
| `GHL API Error 401` | Invalid or expired key |
|
|
888
|
+
| `GHL API Error 401` | Invalid or expired key | Create a new key in the sub-account at Settings → Private Integrations (under Other settings) → Create New Integration |
|
|
887
889
|
| `GHL API Error 403` | Key from wrong sub-account | Create a new Private Integration **inside the correct sub-account** |
|
|
888
890
|
| `GHL API Error 403` (alt) | Missing permission scope | Edit your Private Integration in GHL and enable the required scope |
|
|
889
891
|
| `GHL API Error 422` | Invalid request data | Check the error message for which field is wrong |
|
|
@@ -897,7 +899,7 @@ Built by **[Elite DCs, LLC](https://elitedcs.com)** — a digital marketing and
|
|
|
897
899
|
|
|
898
900
|
**Tech stack:** TypeScript, Node.js, esbuild, MCP SDK, Zod, GHL API v2, Firebase Auth
|
|
899
901
|
|
|
900
|
-
**Version:** 3.
|
|
902
|
+
**Version:** 3.89.0-beta.1
|
|
901
903
|
|
|
902
904
|
---
|
|
903
905
|
|