HighLevel Agency & Builder MCP

Full-stack GoHighLevel (GHL) MCP for funnels, client DNS/SSL, LeadShield spam blockers & snapshots.

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
90%
Naming quality
80%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'ghl_custom_values_audit' description contains placeholder textin ghl_custom_values_audit
  • INFOTool description contains placeholder or incomplete textin ghl_custom_values_audit

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,167Tokens (tool definitions)
~948 BTypical response size
Moderate attention impact (1.69% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "highlevel-agency-mcp": {
      "url": "https://www.ghlagencymcp.com/mcp"
    }
  }
}

Remote endpoints

https://www.ghlagencymcp.com/mcpstreamable-http

What it can do

Tool inventory

Tools (13)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢ghl_agency_connection_health(context, company, includeDoctor)

Check HighLevel Agency MCP connection health, active Safe-Writes Policy preset, and progressive discovery status. Example: ghl_agency_connection_health({"context":"moosh-growth","includeDoctor":true})

Input Schema

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "enum": [
        "moosh-growth",
        "marketplace-sandbox"
      ],
      "description": "Target HighLevel agency account context."
    },
    "company": {
      "type": "string",
      "minLength": 1,
      "maxLength": 16384,
      "description": "Optional HighLevel company ID override."
    },
    "includeDoctor": {
      "type": "boolean",
      "description": "Run an inline PIT and session readiness doctor check."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_agency_tools_search(query, category)

Search HighLevel automation blueprint presets and configuration templates by keyword or category. Example: ghl_agency_tools_search({"query":"funnel","category":"onboarding"})

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 16384,
      "description": "Keyword to search across blueprint templates and descriptions."
    },
    "category": {
      "type": "string",
      "enum": [
        "all",
        "core",
        "onboarding",
        "saas",
        "ai",
        "telephony",
        "commerce",
        "governance",
        "crm",
        "billing",
        "announcements"
      ],
      "description": "Optional template category filter."
    }
  },
  "required": [],
  "additionalProperties": false
}
⚪ghl_agency_tools_enable(policyPreset)

Configure the active Safe-Writes Policy preset (read-only, dry-run-first, or standard) for the current HighLevel agency session. Example: ghl_agency_tools_enable({"policyPreset":"dry-run-first"})

Input Schema

{
  "type": "object",
  "properties": {
    "policyPreset": {
      "type": "string",
      "enum": [
        "read-only",
        "dry-run-first",
        "standard"
      ],
      "description": "Safe-Writes Policy preset to apply to the current session."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_agency_contexts(context)

List configured HighLevel agency account contexts and known sub-account locations without mutating state. Example: ghl_agency_contexts({"context":"moosh-growth"})

Input Schema

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "enum": [
        "moosh-growth",
        "marketplace-sandbox"
      ],
      "description": "Optional HighLevel context name to inspect."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_agency_doctor(context, company)

Verify HighLevel agency Private Integration Token (PIT), CRM session, company, and seed location readiness. Example: ghl_agency_doctor({"context":"moosh-growth"})

Input Schema

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "enum": [
        "moosh-growth",
        "marketplace-sandbox"
      ],
      "description": "Target HighLevel agency context."
    },
    "company": {
      "type": "string",
      "minLength": 1,
      "maxLength": 16384,
      "description": "Optional HighLevel company ID."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_agency_locations(context, location, company)

Inspect a HighLevel sub-account location profile, timezone, and readiness configuration without mutating state. Example: ghl_agency_locations({"context":"moosh-growth","location":"loc_123"})

Input Schema

{
  "type": "object",
  "properties": {
    "context": {
      "type": "string",
      "enum": [
        "moosh-growth",
        "marketplace-sandbox"
      ],
      "description": "Target HighLevel agency context."
    },
    "location": {
      "type": "string",
      "minLength": 1,
      "maxLength": 16384,
      "description": "Target sub-account location ID or alias."
    },
    "company": {
      "type": "string",
      "minLength": 1,
      "maxLength": 16384,
      "description": "Optional HighLevel company ID."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_snapshot_diff_audit(locationId, snapshotId)

Compare a live HighLevel client sub-account against a reference Master Snapshot without overwriting assets. Example: ghl_snapshot_diff_audit({"locationId":"loc_123","snapshotId":"snap_456"})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Live HighLevel sub-account location ID to audit."
    },
    "snapshotId": {
      "type": "string",
      "description": "Reference Master Snapshot ID to compare against."
    }
  },
  "required": [],
  "additionalProperties": false
}
⚪ghl_site_builder_sync(locationId, funnelId, stepId, dryRun)

Synchronize a HighLevel funnel step layout while preserving 2-step carts and 1-click upsells. Example: ghl_site_builder_sync({"locationId":"loc_123","funnelId":"fnl_1","dryRun":true})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Target HighLevel sub-account location ID."
    },
    "funnelId": {
      "type": "string",
      "description": "Target funnel or website ID."
    },
    "stepId": {
      "type": "string",
      "description": "Optional funnel step or page ID."
    },
    "dryRun": {
      "type": "boolean",
      "description": "Preview layout and CSS diff without mutating the live page."
    }
  },
  "required": [],
  "additionalProperties": false
}
⚪ghl_domain_ssl_onboard(locationId, domain, dryRun)

Plan, verify, and attach HighLevel custom funnel domains and branded short-link CNAME/A/TXT records with SSL checks. Example: ghl_domain_ssl_onboard({"locationId":"loc_123","domain":"go.example.com","dryRun":true})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Target HighLevel sub-account location ID."
    },
    "domain": {
      "type": "string",
      "description": "Custom funnel, website, or branded-link hostname."
    },
    "dryRun": {
      "type": "boolean",
      "description": "Verify DNS propagation and preview changes before applying."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟡ghl_workflow_ivr_builder(locationId, preset, dryRun)

Synthesize and publish HighLevel workflows, LeadShield contact form spam guards, and call-screening IVRs. Example: ghl_workflow_ivr_builder({"locationId":"loc_123","preset":"leadshield-form-guard","dryRun":true})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Target HighLevel sub-account location ID."
    },
    "preset": {
      "type": "string",
      "enum": [
        "leadshield-form-guard",
        "spam-shield-ivr",
        "multi-step-intake"
      ],
      "description": "Workflow or IVR blueprint preset to compile."
    },
    "dryRun": {
      "type": "boolean",
      "description": "Preview workflow graph diff before publishing."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_custom_values_audit(locationId)

Read-only audit of sub-account Custom Values and SMS/email templates for broken merge tags or missing placeholders. Example: ghl_custom_values_audit({"locationId":"loc_123"})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Target HighLevel sub-account location ID."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_phone_wallet_audit(locationId)

Read-only audit of sub-account LC Phone numbers, number pools, forwarding loops, and unassigned monthly wallet drain. Example: ghl_phone_wallet_audit({"locationId":"loc_123"})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Target HighLevel sub-account location ID."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢ghl_user_role_governance(locationId, preset)

Read-only audit of sub-account staff permissions against least-privilege role presets (va-support, sales-rep, client-admin, agency-admin). Example: ghl_user_role_governance({"locationId":"loc_123","preset":"va-support"})

Input Schema

{
  "type": "object",
  "properties": {
    "locationId": {
      "type": "string",
      "description": "Target HighLevel sub-account location ID."
    },
    "preset": {
      "type": "string",
      "enum": [
        "va-support",
        "sales-rep",
        "client-admin",
        "agency-admin"
      ],
      "description": "Least-privilege role preset to audit against."
    }
  },
  "required": [],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded13 tools