Command Center

Connections live

10/10

All ✓ Connected

Tools per client

36

9 categories

Total tool calls

360

36 × 10 routes

MCP endpoint

services.leadconnectorhq.com/mcp/

PIT + locationId per client

flag Why this page exists

Topher generated a Private Integration Token (PIT) in each GHL sub-account and Vegas/Linq wired 10 separate MCP connections in ~/.claude.json, each pointed at GoHighLevel's native MCP server. Confirmed via claude mcp list on 2026-05-21.

Circa didn't know this existed. Without this playbook, Circa tells Topher to "go into the sub-account and add this tag" — manual work. With this playbook, Circa calls mcp__ghl-bclean__contacts_add-tags directly and reports back. Same outcome, zero Topher friction.

This is the internal-setup proof-of-concept work behind CLI-51 "the gate" — AD's own house first, then serial client rollout. One Circa upgrade benefits all 10 clients in parallel.

alt_route Per-client routing matrix

Map of MCP namespace → client. To act in a client's GHL, prefix the tool with the right namespace.

Namespace Client Phase
ghl-bclean B Clean Carpet launch
ghl-delawarelanes Delaware Lanes launch
ghl-keeler Keeler Carpentry launch
ghl-madebyaspire Made By Aspire

Agency marketing site, not a client engagement

live
ghl-modernmaid The Modern Maid launch
ghl-nrx NRX Asphalt live
ghl-patina Patina Salon build
ghl-petalswings PetalsWings launch
ghl-photosbyb4 PhotosbyB4 live
ghl-tees Tees Flooring launch

Clients in the roster without MCP connections

  • Paved By Infiniti · contract — Pre-launch — no live GHL sub-account yet
  • Heel Quik · build — Pre-launch — no live GHL sub-account yet
  • Willowbrook HOA · build — HOA — no commercial GHL engagement

Onboard each via the runbook below when their sub-account goes live.

build Tool catalog — 36 tools per namespace

Every namespace exposes all 36 tools. Total addressable surface: 360 tool routes.

person

Contacts

(8 tools)
read-safe / write-confirm
safe

contacts_get-contact

Fetch full contact profile by ID

safe

contacts_get-contacts

List contacts with filtering

safe

contacts_get-all-tasks

Pull all tasks for a contact

low-write

contacts_add-tags

Add tags to a contact

low-write

contacts_remove-tags

Remove tags from a contact

confirm

contacts_create-contact

Create new contact

confirm

contacts_update-contact

Update existing contact fields

confirm

contacts_upsert-contact

Update-or-create contact (dedupe)

forum

Conversations

(3 tools)
read-safe / send-CONFIRM
safe

conversations_search-conversation

Search/filter conversations

safe

conversations_get-messages

Get message history by conversation ID

confirm

conversations_send-a-new-message

Send a new message into a thread

calendar_today

Calendars

(2 tools)
read-safe
safe

calendars_get-calendar-events

List calendar events (by user/group/cal)

safe

calendars_get-appointment-notes

Notes for a specific appointment

monitoring

Opportunities

(4 tools)
read-safe / update-confirm
safe

opportunities_get-pipelines

List all pipelines

safe

opportunities_search-opportunity

Search opportunities

safe

opportunities_get-opportunity

Fetch opportunity by ID

confirm

opportunities_update-opportunity

Update opportunity stage/fields

payments

Payments

(2 tools)
read-safe
safe

payments_get-order-by-id

Retrieve a payment order

safe

payments_list-transactions

Paginated transactions list

place

Locations

(2 tools)
read-safe
safe

locations_get-location

Sub-account details by location ID

safe

locations_get-custom-fields

Custom field definitions for a location

edit_note

Blogs

(7 tools)
read-safe / publish-CONFIRM
safe

blogs_get-blogs

List all blog sites for a location

safe

blogs_get-blog-post

Get posts for a blog site

safe

blogs_get-all-blog-authors-by-location

List blog authors

safe

blogs_get-all-categories-by-location

List blog categories

safe

blogs_check-url-slug-exists

Check slug availability before publish

confirm

blogs_create-blog-post

Create new blog post

confirm

blogs_update-blog-post

Update existing blog post

mail

Emails

(2 tools)
read-safe / template-confirm
safe

emails_fetch-template

Get email templates by location

confirm

emails_create-template

Create a new email template

share

Social media posting

(6 tools)
read-safe / post-CONFIRM
safe

social-media-posting_get-account

List connected accounts + groups

safe

social-media-posting_get-social-media-statistics

Analytics across multiple accounts

safe

social-media-posting_get-posts

List posts

safe

social-media-posting_get-post

Get a specific post

confirm

social-media-posting_create-post

Publish a post

confirm

social-media-posting_edit-post

Edit an existing post

policy Governance — when Circa acts directly vs. confirms first

safe Act directly, report the result.

All get_* / list_* / search_* reads. Lookups, transcripts, calendars, statistics, lists. No side effects, no customer-visible change.

low-write Act directly, but always note what you did.

Tag adds/removes on contacts. Internal organization that isn't customer-facing. State the namespace + contact ID + action in the response so Topher can verify after.

confirm Confirm with Topher first.

Anything the customer sees or persists in the CRM: send-a-new-message, create-contact, update-contact, upsert-contact, update-opportunity, create-blog-post, create-post, create-template. Show what you're about to do, wait for "go."

The risk badges in the tool catalog above match this scheme. When in doubt, default to confirm — over-asking is fine in early adoption; under-asking is not.

add_link New-client onboarding runbook

Wire client #11 (or any new sub-account) into Circa's MCP surface.

  1. Generate a PIT in the client's GHL sub-account.

    Settings → Private Integrations → Create New Integration. Grant the full scope set (Contacts read+edit, Conversations read+edit + messages, Opportunities read+edit, Calendars read+edit + events, Payments read, Custom Fields read, Forms read, Locations read, plus Blogs / Emails / Social Media if the client uses them). Copy the token.

  2. Store the PIT securely.

    Add to the credentials store (1Password, ~/.aspire.env, or a chmod-600 non-synced file on the M4). Note: 10 existing PITs are still in a plaintext doc on the M4 — separate hygiene cleanup queued.

  3. Wire the MCP connection.

    In terminal:

    claude mcp add ghl-<client-slug> \
      --transport http \
      --url https://services.leadconnectorhq.com/mcp/ \
      --header "Authorization: Bearer <PIT>" \
      --header "locationId: <sub-account-id>"

    Restart Claude Code so it picks up the new connection.

  4. Verify.

    Run claude mcp list — confirm the new ghl-<client-slug> shows ✓ Connected. Test with a safe read like locations_get-location.

  5. Update this page.

    Add the new client to the routing matrix above (edit connections[] in circa-ghl-mcp.astro). Flag ghlSubAccount: true in the playbook's clients.json for consistency.

menu_book References Circa can pull for deeper context

Hermes syncs the GHL knowledge base to M3 daily (447 articles current as of 2026-05-21). Path: ~/.hermes/vault/circa-sync/aspire-digital/agents/circa/knowledge/ghl/.

  • description

    155000007981-highlevel-mcp-server-model-context-protocol.md

    Canonical GHL MCP server setup + configuration guide (captured 2026-05-20)

  • description

    how-to-use-the-ai-agent-studio-in-highlevel.md

    GHL's AI Agent Studio — for client-facing voice/chat agent recommendations (captured 2026-05-21)

  • description

    how-to-use-the-mcp-server-within-ask-ai.md

    How to use GHL MCP from inside GHL's own Ask AI

  • description

    ai-tools-in-highlevel.md

    Full survey of GHL's AI tooling (captured 2026-05-21)

Recent GHL changelog entries (last 3 weeks) worth surfacing in client audits: AI Agent Knowledge Base Search tool (5/20), AI Agent Update Custom Value tool (5/19), Wait Action revamp (5/21), Embedded Voice AI Widgets (5/4), Conversation AI Bot Sleep Controls (5/1).

warning Open items

  • key

    Credential hygiene — 10 PITs in a plaintext doc on the M4.

    Each PIT is full-scoped to its sub-account. Doc location to confirm; move to 1Password / chmod-600 secret file. Low priority but non-zero risk.

  • sync_problem

    Data drift in playbook's clients.json.

    Only 3 clients flagged ghlSubAccount: true (PhotosbyB4, Made By Aspire, B Clean), but 10 have live MCP connections. Update on next playbook touch.

  • explore

    Per-client scope audit not yet done.

    All 10 PITs work, but actual scope grants per client are unverified. Some may be narrower than the full set listed in the onboarding runbook. First failed tool call per namespace will reveal it; track here as we go.

  • extension

    GHL roadmap: 250+ tools, OAuth, npx package.

    Current set is 36 tools. GHL's published roadmap is to expand to 250+ and add OAuth (vs. PIT) — re-audit this catalog quarterly to add new tools as they ship. Hermes's daily KB sync will surface the additions via changelog.