Gohighlevel skill

Operate connected GoHighLevel CRM accounts through the NotFair MCP.

by nowork-studio·MIT license·★ 3,853 Stars on the repo·GitHub ↗

Use now

Files of Gohighlevel

nowork-studio/main1 file shown
SKILL.md
Show the full text38 lines

GoHighLevel

Follow ../docs/mcp-connection.md. Resolve ~~gohighlevel to the live connection. Use its current instructions and capability descriptions to choose tools, and verify the requested location from live data. Do not infer access from an ad platform or another connected CRM.

This skill is revenue-ops on the connected HighLevel account: contacts, conversations, opportunities, and calendar. Make writes only when the user explicitly requested them. Older clients may still reach a dedicated /api/mcp/gohighlevel route; do not add that as a second plugin MCP server. Authentication uses a NotFair PAT on the connect page; one PAT per HighLevel connection. If the connector is missing, unauthorized, or read-only for a requested write, direct the user to reconnect with the needed scopes and stop.

Establish the live location

  1. Confirm connected locations with a harmless read. Agency (Company) connections must pass an explicit locationId for per-location tools; Location connections may omit it.
  2. Prefer specific typed tools over the generic request escape hatch. That request surface is read-only GET.
  3. Record the account currency, location, pipeline or calendar context, and whether the session can mutate.

Core reads include contacts, conversations, opportunities, calendar events, and locations, plus metadata for users, pipelines, calendars, custom fields, tags, and tasks. Intake reads include forms, surveys, invoices, transactions, and products. Discover the exact schemas; do not treat any skill-level list as the only allowed surface.

Read before changing

Resolve identifiers before creating records so duplicates are not introduced. List custom fields before interpreting custom-field ids. Money is in account currency; cent values are often integers. Pagination cursors vary (startAfterId, startAfterDate, startAfter). Use ISO 8601 datetimes.

Lead with the current contact, conversation, opportunity, or calendar state and the smallest user-requested change.

Execute approved changes safely

Show the exact location, object, current value, proposed value, risk, and rollback before acting. Obtain approval, apply once, then read back.

Writes commonly include contact create/upsert/update, opportunity create/update, calendar appointment create/update/delete, tag create, and contact-task create. Choose from the live capability descriptions.

  • Do not write unless the user explicitly asked for that mutation.
  • Resolve existing ids first to avoid duplicate contacts, opportunities, or appointments.
  • After an approved mutation, use returned evidence or a fresh read to confirm the resulting state. Report partial failures plainly.

A proposed CRM change remains ready_for_review until the live connector confirms it.

1---
2name: gohighlevel
3description: Operate connected GoHighLevel CRM accounts through the NotFair MCP. Use for GoHighLevel, HighLevel, GHL contacts, conversations, opportunities, calendars, pipelines, tags, tasks, forms, invoices, products, or approved CRM changes.
4argument-hint: "<location, contact, opportunity, or GHL question>"
5---
6 
7# GoHighLevel
8 
9Follow [`../docs/mcp-connection.md`](../docs/mcp-connection.md). Resolve `~~gohighlevel` to the live connection. Use its current instructions and capability descriptions to choose tools, and verify the requested location from live data. Do not infer access from an ad platform or another connected CRM.
10 
11This skill is revenue-ops on the connected HighLevel account: contacts, conversations, opportunities, and calendar. Make writes only when the user explicitly requested them. Older clients may still reach a dedicated `/api/mcp/gohighlevel` route; do not add that as a second plugin MCP server. Authentication uses a NotFair PAT on the connect page; one PAT per HighLevel connection. If the connector is missing, unauthorized, or read-only for a requested write, direct the user to reconnect with the needed scopes and stop.
12 
13## Establish the live location
14 
151. Confirm connected locations with a harmless read. Agency (Company) connections must pass an explicit `locationId` for per-location tools; Location connections may omit it.
162. Prefer specific typed tools over the generic request escape hatch. That request surface is read-only GET.
173. Record the account currency, location, pipeline or calendar context, and whether the session can mutate.
18 
19Core reads include contacts, conversations, opportunities, calendar events, and locations, plus metadata for users, pipelines, calendars, custom fields, tags, and tasks. Intake reads include forms, surveys, invoices, transactions, and products. Discover the exact schemas; do not treat any skill-level list as the only allowed surface.
20 
21## Read before changing
22 
23Resolve identifiers before creating records so duplicates are not introduced. List custom fields before interpreting custom-field ids. Money is in account currency; cent values are often integers. Pagination cursors vary (`startAfterId`, `startAfterDate`, `startAfter`). Use ISO 8601 datetimes.
24 
25Lead with the current contact, conversation, opportunity, or calendar state and the smallest user-requested change.
26 
27## Execute approved changes safely
28 
29Show the exact location, object, current value, proposed value, risk, and rollback before acting. Obtain approval, apply once, then read back.
30 
31Writes commonly include contact create/upsert/update, opportunity create/update, calendar appointment create/update/delete, tag create, and contact-task create. Choose from the live capability descriptions.
32 
33- Do not write unless the user explicitly asked for that mutation.
34- Resolve existing ids first to avoid duplicate contacts, opportunities, or appointments.
35- After an approved mutation, use returned evidence or a fresh read to confirm the resulting state. Report partial failures plainly.
36 
37A proposed CRM change remains `ready_for_review` until the live connector confirms it.
38 

Discussion

Alternatives

⚡ NEXUS Quick-Start Guide> Get from zero to orchestrated multi-agent pipeline in 5 minutes.Business & ops · MIT🎯 NEXUS Agent Activation Prompts> Ready-to-use prompt templates for activating any agent within the NEXUS pipeline. Copy, customize the [PLACEHOLDERS], and deploy.Business & ops · MITArbor — Autonomous Optimization via Hypothesis Tree RefinementAutonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree Refinement (HTR) from the Arbor paper. Use this whenever someone wants to iteratively optimize something over many experiments without overfitting — e.g. "get my model's eval score up", "improve this agent/harness", "tune this pipeline", "beat the baseline on this benchmark", "run a search over approaches and keep the best", "do an MLE-bench / Kaggle-style optimization", or any long-horizon "make this artifact better and don't just memorize the dev set" task. Trigger it even when the user doesn't say "Arbor" or "hypothesis tree" but describes repeated experiment-and-evaluate loops, branching exploration of competing ideas, or worries about a dev/test gap. Runs Claude itself as the coordinator with subagent executors in isolated git worktrees; for the standalone `arbor` CLI tool see references/arbor-upstream.md.Science · MIT/cs:cro-review — CRO Forcing Questions/cs:cro-review <plan> — Pipeline-paranoid interrogation of revenue, win rate, NRR, and ramp time. Use when the forecast misses pipeline coverage, win rates drop, or before scaling the sales team. · MIT