home / mcp / gohighlevel mcp server
Model Context Protocol (MCP) server for GoHighLevel API - Complete access to contacts, opportunities, calendars, workflows, and more
Configuration
View docs{
"mcpServers": {
"drausal-gohighlevel-mcp": {
"command": "npx",
"args": [
"@drausal/gohighlevel-mcp"
],
"env": {
"BEARER_TOKEN_BEARER": "your_api_key_here",
"BEARER_TOKEN_BEARERAUTH": "your_api_key_here"
}
}
}
}You run a GoHighLevel MCP Server to securely access the complete GoHighLevel API from MCP clients. This server lets you work with contacts, opportunities, calendars, workflows, and more, using a type-safe, OAuth-ready bridge between your applications and GoHighLevel services.
You connect an MCP client to the GoHighLevel MCP Server to perform API operations. The server exposes all GoHighLevel endpoints and handles authentication, so your client can focus on business logic rather than token management. Use either a local (stdio) setup or a cloud-based invocation from your MCP client, and configure authentication to suit your security needs.
Prerequisites: install Node.js and have a GoHighLevel account with API access.
# Quick start: run without installation
npx @drausal/gohighlevel-mcp
# Optional: install globally for persistent use
npm install -g @drausal/gohighlevel-mcpYou authenticate to the GoHighLevel API using either a Bearer API key or OAuth2 client credentials. The server will manage tokens when OAuth2 is used, including automatic refresh.
Bearer Token authentication uses environment variables to pass the API key. Set the following in your environment and your MCP client configuration.
BEARER_TOKEN_BEARERAUTH=your_api_key_here
BEARER_TOKEN_BEARER=your_api_key_here
```
For OAuth2, supply client credentials for agency-wide operations and location-specific operations as needed. The server will obtain access tokens via the client credentials flow and refresh them when expired.If you are developing or customizing the server, you can clone the project, install dependencies, build, and start the server. This flow runs locally and uses the built JavaScript output.
git clone https://github.com/drausal/gohighlevel-mcp.git
cd gohighlevel-mcp
pnpm install
pnpm run build
pnpm startIf the server fails to start, verify your Node.js version is at least 20.0.0, confirm the build completed, and check your environment variables. For authentication issues, verify your API key or OAuth2 client credentials. If you encounter integration issues with Claude Desktop or other MCP clients, confirm your configuration paths and restart the client after changes.
The server is built with TypeScript and validates inputs using Zod. It provides an OpenAPI-derived schema and supports JSON-schema-to-zod validators for runtime safety.
Keep API keys and OAuth client secrets secure. Do not share tokens in source control. Use separate credentials for development and production environments, and rotate tokens as recommended by GoHighLevel.
Create, update, search, and manage contact records within GoHighLevel.
Manage sales pipeline stages, activities, and opportunities.
Schedule and manage calendar events and availability.
Trigger automated workflows and manage automation rules.
Handle messaging and chat interactions.
Manage email campaigns and templates.
Send and manage SMS campaigns and messages.
Publish and manage social media campaigns.
Create and manage blog content.
Capture leads through forms and landing pages.
Process transactions and payments.
Billing and invoice management.
Manage team members and permissions.
Manage sub-accounts and locations.