GHL MCP Server
GHL MCP Server
A remote MCP (Model Context Protocol) server running on Cloudflare Workers that gives AI agents full programmatic access to GoHighLevel.
What This Does
Your AI agents connect to this server as a tool. They can then create, read, update, and delete custom fields, custom values, and custom field folders in your GHL account — no manual work required.
Current capabilities (Phase 1):
Contact-level custom fields (full CRUD + bulk create)
Custom object fields (Custom Objects + Company)
Custom field folders
Custom values (location-wide variables)
Planned (Phase 2+):
Contacts management
Opportunities & Pipelines
Calendars & Appointments
Conversations & Messaging
Workflows
And every other GHL API endpoint
Architecture
Your AI Agent (Claude, GPT, etc.)
│
│ MCP Protocol (Streamable HTTP)
▼
┌─────────────────────────┐
│ Cloudflare Worker │
│ (GHL MCP Server) │
│ │
│ ┌────────────────────┐ │
│ │ McpAgent │ │ ← Durable Object (stateful sessions)
│ │ (tools defined) │ │
│ └────────┬───────────┘ │
│ │ │
│ ┌────────▼───────────┐ │
│ │ GHL API Client │ │ ← Typed HTTP client
│ └────────┬───────────┘ │
└───────────┼──────────────┘
│
│ REST API (Bearer token)
▼
┌─────────────────────────┐
│ GoHighLevel API │
│ services.leadconnector │
│ hq.com │
└─────────────────────────┘Setup
Prerequisites
Node.js 18+
A Cloudflare account
A GoHighLevel Private Integration Token
Your GHL Location ID (Sub-Account ID)
1. Clone & Install
git clone https://github.com/YOUR_USERNAME/ghl-mcp-server.git
cd ghl-mcp-server
npm install2. Configure Secrets
For local development, copy the example env file:
cp .dev.vars.example .dev.vars
# Edit .dev.vars with your actual GHL credentialsFor production deployment, set secrets via Wrangler:
npx wrangler secret put GHL_API_KEY
npx wrangler secret put GHL_LOCATION_ID3. Deploy
npm run deployYour MCP server will be live at: https://ghl-mcp-server.YOUR_SUBDOMAIN.workers.dev/sse
4. Connect Your AI Agent
Use the deployed URL as an MCP server endpoint in your AI agent's configuration.
For Claude Desktop (via mcp-remote proxy):
{
"mcpServers": {
"ghl": {
"command": "npx",
"args": [
"mcp-remote",
"https://ghl-mcp-server.YOUR_SUBDOMAIN.workers.dev/sse"
]
}
}
}Available Tools
Contact-Level Custom Fields
Tool | Description |
| List all contact custom fields |
| Get a specific field by ID |
| Create a single field |
| Update a field |
| Delete a field |
| Create multiple fields at once |
Custom Object Fields
Tool | Description |
| List fields for a custom object |
| Create a field on a custom object |
| Create a folder for organizing fields |
Custom Values
Tool | Description |
| List all custom values |
| Create a custom value |
| Update a custom value |
| Delete a custom value |
Supported Field Types
Type | Description |
| Single-line text |
| Multi-line text |
| Number |
| Phone number |
| Currency/money |
| Email address |
| Date picker |
| Checkbox |
| Dropdown (single select) |
| Multi-select |
| Radio buttons |
| File attachment |
| List of text inputs |
Roadmap
Phase 2: Contacts
Create, update, delete, search contacts
Bulk contact operations
Tag management
Notes and tasks
Phase 3: Opportunities & Pipelines
Pipeline management
Opportunity CRUD
Stage updates
Phase 4: Calendars & Conversations
Calendar management
Appointment scheduling
Send messages (SMS, email)
Phase 5: Workflows & Automation
Trigger workflows
Manage workflow configurations
Phase 6: Everything Else
Forms, Surveys, Funnels
Payments, Invoices, Products
Media library
Social media posting
Development
# Local development
npm run dev
# Deploy to production
npm run deployGHL API Reference
This server is built against the GoHighLevel API V2. The OpenAPI specs from the official docs repo are included in /api-specs for reference.
License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/drleadflow/ghl-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server