GoHighLevel MCP Starter

GoHighLevel MCP Starter

MCP server that lets you talk to your GoHighLevel sub-account in plain English, offering six tools to search contacts, list calendars, check free slots, and book appointments with dry-run safety and explicit error messages.

Category
访问服务器

README

GoHighLevel MCP Starter

Talk to your GoHighLevel sub-account from Claude, in plain English.

A small, readable Model Context Protocol server for GoHighLevel API v2. Six tools, roughly 300 lines, MIT licensed. Built to be read in one sitting and forked into whatever you actually need.

You:    Who booked with us last week, and is Tuesday at 2 open?
Claude: [search_contacts] [list_calendars] [get_free_slots]
        Three new contacts. Tuesday 2:00 is not offered, the calendar runs
        at quarter past. 2:15 and 3:15 are open.

Why another GHL MCP server

Most of them are a thin wrapper around the API surface. This one is opinionated about the three things that actually bite you in production:

1. It never hides an error. GHL explains its failures in the response body, but almost every wrapper throws away the body and surfaces a bare 400. That single decision turns a ten second fix into an hour of guessing. This client always reads the body and puts the real message in the error.

2. Writes are opt-in. Every mutating tool is a dry run by default. It returns the exact payload it would send so you can look at it first. Add confirm: true to actually write. Letting a model create records in a live CRM on the first try is how you end up with 40 test contacts named "John Doe" in a client account.

3. It looks before it leaps. book_appointment pulls live availability and checks your requested time against it before writing, then tells you the real open slots if you missed. GHL would just return a bare 400.

Plus GOTCHAS.md, which is the list of GHL API quirks that cost real debugging time. That file may be more valuable than the code.

Tools

Tool What it does
search_contacts Find contacts by name, email, or phone
get_contact Fetch one contact by id
create_contact Create a contact (dry run by default)
list_calendars All calendars with ids and slot durations
get_free_slots Real bookable times, epoch conversion handled
book_appointment Verify the slot, then book (dry run by default)

Setup

1. Install

git clone https://github.com/rockurbusinesscs-ship-it/gohighlevel-mcp-starter.git
cd gohighlevel-mcp-starter
npm install

2. Get a Private Integration Token

In GoHighLevel, go to your sub-account (not the agency):

Settings > Private Integrations > Create new integration

Grant the scopes you need. For these six tools: contacts read/write, calendars read, calendars/events write. Copy the token, it is shown once.

Use a test sub-account while you are learning. See Safety below.

3. Configure

cp .env.example .env

Fill in GHL_TOKEN and GHL_LOCATION_ID. The server loads .env automatically, and env vars set by your MCP client take precedence, so either approach works.

4. Connect to Claude

Claude Code:

claude mcp add ghl -- node /absolute/path/to/gohighlevel-mcp-starter/src/index.js

Claude Desktop, in claude_desktop_config.json:

{
  "mcpServers": {
    "ghl": {
      "command": "node",
      "args": ["/absolute/path/to/gohighlevel-mcp-starter/src/index.js"],
      "env": {
        "GHL_TOKEN": "your_token",
        "GHL_LOCATION_ID": "your_location_id"
      }
    }
  }
}

Restart, then ask it to search your contacts.

Use cases

Pipeline triage without the UI. "Show me everyone tagged hot who has not been contacted in 14 days." Reading a CRM conversationally is faster than clicking through filters, and it is where most of the daily value is.

Booking without the back and forth. "Is Wednesday afternoon open, and book Sarah into the first slot." The slot verification means it fails loudly with real options instead of a mystery error.

Data hygiene. Point it at your contacts and ask what is malformed: missing emails, phone numbers that are not E.164, duplicates. It is very good at spotting the mess.

Onboarding automation. Chain contact creation and booking into a single request when a new client signs, with the dry run keeping you in the loop before anything writes.

Learning the API. Honestly, this is the big one. Fork it, add a seventh tool against an endpoint you care about, and you will understand GHL's API better in an afternoon than a week of reading docs.

Safety

  • Never commit .env. It is gitignored. Check before you push anyway.
  • Use a test sub-account first. A Private Integration Token can write to a real client's CRM. Learn on data you can afford to break.
  • Keep the dry run. If you remove the confirm gate, you have handed write access to a language model that occasionally misreads intent.
  • One token, one location. Do not reach for an agency token to avoid setting locationId.

Contributing

Found a gotcha not in GOTCHAS.md? That is the most valuable PR you can send. Bug reports and new tools welcome too.

License

MIT. Use it commercially, fork it, ship it in your product, no obligations.


Not affiliated with or endorsed by GoHighLevel / HighLevel Inc.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选