Skip to main content
Glama

GoHighLevel MCP Server

LLMエージェントにGoHighLevel CRMの操作制御を提供するModel Context Protocolサーバーです。114個のツールを24モジュールにわたり提供し、顧客連絡先、パイプライン、カレンダー、メッセージ、請求、支払いをGoHighLevel API v2で操作できます。

問題

GoHighLevelは小規模エージェンシーにとってのシステムオブレコードです。すべての顧客、すべての予約、すべての請求書がそこにあります。実際に一日を消費させる作業は、単一のCRM操作ではなく、操作と操作の間を結び付ける処理です。撮影が確定したら、誰かが商談を作成し、正しいパイプライン段階へ移動し、正しい連絡先に対してカレンダースロットを予約し、請求書を下書きし、メモを残さなければなりません。各ステップは30秒のクリック作業であり、この一連の流れは週に何度も実行されます。

この一連の流れこそ、CRMにアクセスできればエージェントが実行できることです。このサーバーはそのアクセス手段です。GoHighLevelを型付きで注釈付きのツールとして公開することで、エージェントは数文の指示からプロセス全体を実行できます。一方で破壊的な操作や外部へ向けた操作は、承認のために可視化されたままです。

Related MCP server: GoHighLevel MCP Server

アーキテクチャ

24個のツールモジュールは、stdioを介して単一のMcpServerに登録されます。すべては単一のghlRequest()を経由し、認証、必須のVersionヘッダー、クエリ文字列の組み立て、エラー整形を担当します。モジュールは起動時にGHL_DISABLED_MODULESで切り替え可能です。これは一見したよりも重要で、114個のツール定義は、エージェントがユーザーのリクエストを1語も読む前に、コンテキストウィンドウのかなりの量に相当します。予約だけを実行するデプロイは、6個のモジュールだけを登録して残りをスキップできます。

  MCP host (Claude Desktop / Claude Code)
          | stdio (JSON-RPC)
  +-------v--------------------------------------------+
  |  index.ts   MODULES registry, GHL_DISABLED_MODULES  |
  +-------+--------------------------------------------+
          |
  +-------v-----+ +---------------+ +-----------+ ......  24 modules
  |  contacts   | | opportunities | | invoices  |
  +-------+-----+ +-------+-------+ +-----+-----+
          |               |               |
          |               |         +-----v--------------+
          |               |         | billing-helpers.ts |
          |               |         |  businessDetails   |
          |               |         |  contactDetails    |
          |               |         |  sender resolution |
          |               |         +-----+--------------+
          +-------+-------+---------------+
                  |
        +---------v----------------------------+
        |  client.ts  ghlRequest()             |
        |   Bearer token + Version header      |
        |   status-specific error hints        |
        +---------+----------------------------+
                  |
          services.leadconnectorhq.com

すべての書き込みツールにはMCP注釈が付いており、17個はdestructiveHintとしてマークされています。また、ghl_send_message / ghl_send_invoiceは実際に顧客に連絡を取るため、外部向けとしてフラグ付けされます。ホストは呼び出しを承認する前にこれらを提示します。これは、請求書を作成するだけのエージェントと、偶発的に顧客に送信するエージェントの違いとなります。

本当に難しい部分

請求書の作成です。エンドポイントはbusinessDetailscontactDetailsのブロックを必要とし、ドキュメントは両方を過小評価しています。ドキュメントに従ってcontactIdと少数の明細項目を渡すと、どのフィールドなのかを述べないバリデーションエラーが返ります。両方のブロックは完全な状態で必須であり、さらにbusinessDetails.phoneNocontactDetails.phoneNoは必須に、メールアドレスはあるが電話番号がない連絡先には請求書を発行することができません。

さらに悪いことには、値は画面が生成したものと一致しなければなりません。そうしないと、APIで作成された請求書は手作業で作成された請求書と異なる表示になります。ロゴが異なる、条件が漏れる、番号が間違うなどです。このようなデフォルト値は、想定される場所であるロケーションプロフィールにはありません。GET /invoices/settingsの内側にあり、UIが事前入力されるのと同じソースです。

src/tools/billing-helpers.tsが両方のブロックを解決するため、ツールはcontactIdだけを渡せれば済みます。ビジネス詳細は4階層でフォールバックします。呼び出しごとの引数、GHL_BUSINESS_*環境変数、保存済みの請求設定、ロケーションプロフィールです。各階層は、前の階層が空にした項目だけを埋めます。連絡先詳細は取得して組み立てられ、nameはフルネーム、名+姓、会社名、メールアドレス、電話番号の順にフォールバックします。GoHighLevelは空の名前を拒否する上、実際のCRMレコードでは名前が欠落していることがしばしば存在するためです。どちらのパスでも、GHSLの不透明な422を表示するのではなく、欠落しているフィールドとその供給方法を明示するメッセージをスローします。各検索はロケーションごとにメモ済み化されるため、10件の請求書のバッチは設定取得が10回ではなく1回で済みます。

異なるならどうするか

  1. テストがない。 4,000行、ゼロ。billing-helpersのフォールバックチェーンは、フィクスチャデータだけを対象にした純粋なロジックです。リポジトリ内で最もテストしやすく、誤ると最もコストが高くなります。失敗の形が顧客に送られる不正な請求書となるためです。

  2. 429に対するリトライがない。 ghlRequestは呼び出し元に「レート制限されました。短時間あけて再試行してください」と伝えて、それ後リトライしません。バックオフはエージェントの判断ではなくクライアント側に置くべきです。

  3. キャッシュは無効化を持たないモジュールレベルの可変マップである。 ホストが自由に再起動するstdio用途のサーバーには正しいが、これが長時間実行という長期間プロセスになると不正確になります。ビジネスプロフィールの編集が反映されないでしょう。

  4. レスポンスは全体を通してRecord<string, unknown>である。 GoHighLevelはOpenAPIスペックを公開しているので、それからタイプを生成すればランタイムの予期しない問題の多くをコンパイルエラーに変えられます。

  5. **1つのサーバーに114ツールは多い。**モジュールトグルは回避策であって修正ではありません。より良い形は、小さいツールセットと検出メカニズムを合わせ、エージェントが使用していない分だけコストを支払うことです。

セットアップ

Node.js 20以上とGoHighLevelアカウントが必要です。

1. プライベート統合トークンを作成する

設定 → プライベート統合 → 新規統合作成します。 使用するツールに対応するスコープを有効にします。最低限:

contacts.readonlycontacts.writeopportunities.readonlyopportunities.writecalendars.readonlycalendars/events.writeconversations.readonlyconversations/message.writeinvoices.readonlyinvoices.writeproducts.readonlyproducts.writelocations/customFields.readonlyworkflows.readonly

コピーしてください。pit-で始まります。

2. Location IDを確認する

設定 → ビジネスプロフィール、またはダッシュボードのURLから確認します: .../location/<LOCATION_ID>/...

3. ビルド

git clone <this-repo>
cd ghl-mcp
npm install
npm run build

4. MCPホストに登録する

{
  "mcpServers": {
    "gohighlevel": {
      "command": "node",
      "args": ["/absolute/path/to/ghl-mcp/dist/index.js"],
      "env": {
        "GHL_API_KEY": "pit-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "GHL_LOCATION_ID": "your-location-id"
      }
    }
  }
}

ホストを再起動します。サポートされているすべての変数(請求書のビジネスブロックやモジュールのトグルを含む)は .env.example を参照してください。

ホストなしでサーバーを試すには:

GHL_API_KEY=pit-... GHL_LOCATION_ID=... npm run inspect

「オートメーションのビルド」についての注意

GoHighLevelのAPIはワークフローロジックを作成できません。ビジュアルビルダーはUI専用です。サポートされている方法は、UIでワークフローを一度ビルドし、ghl_list_workflowsでIDを見つけ、ghl_add_contact_to_workflowで連絡先を登録することです。

ツール参照

領域

ツール

連絡先

ghl_search_contactsghl_get_contactghl_create_contactghl_update_contactghl_add_contact_tagsghl_delete_contact

商談 / パイプライン

ghl_get_pipelinesghl_search_opportunitiesghl_get_opportunityghl_create_opportunityghl_update_opportunity

カレンダー / 予約

ghl_get_calendarsghl_get_free_slotsghl_create_appointmentghl_get_appointmentghl_update_appointmentghl_delete_appointment

会話 / メッセージ

ghl_search_conversationsghl_get_messagesghl_send_message

請求書

ghl_list_invoicesghl_get_invoiceghl_create_invoiceghl_send_invoiceghl_void_invoiceghl_delete_invoice

見積もり

ghl_list_estimatesghl_generate_estimate_numberghl_create_estimateghl_update_estimateghl_send_estimateghl_estimate_to_invoiceghl_delete_estimate

製品

ghl_list_productsghl_get_productghl_create_productghl_update_productghl_delete_productghl_list_product_pricesghl_create_product_price

カスタムフィールド

ghl_list_custom_fieldsghl_get_custom_fieldghl_create_custom_fieldghl_update_custom_fieldghl_delete_custom_field

タスク

ghl_list_contact_tasksghl_get_contact_taskghl_create_contact_taskghl_update_contact_taskghl_delete_contact_task

ノート

ghl_list_contact_notesghl_get_contact_noteghl_create_contact_noteghl_update_contact_noteghl_delete_contact_note

ワークフロー(オートメーション)

ghl_list_workflowsghl_add_contact_to_workflowghl_remove_contact_from_workflow

支払い

ghl_list_ordersghl_get_orderghl_list_transactionsghl_list_subscriptionsghl_get_subscription

フォーム & サーベイ

ghl_list_formsghl_get_form_submissionsghl_list_surveysghl_get_survey_submissions

ユーザー & チーム

ghl_list_usersghl_get_user

カレンダーイベント

ghl_get_calendar_eventsghl_block_calendar_slotghl_list_appointment_notesghl_create_appointment_note

ソーシャルプランナー

ghl_list_social_accountsghl_list_social_postsghl_get_social_postghl_create_social_postghl_delete_social_post

メディアライブラリ

ghl_list_mediaghl_upload_media_by_urlghl_delete_media

キャンペーン & リンク

ghl_list_campaignsghl_add_contact_to_campaignghl_remove_contact_from_campaignghl_list_trigger_linksghl_create_trigger_linkghl_delete_trigger_link

タグ

ghl_list_tagsghl_create_tagghl_update_tagghl_delete_tag

カスタム値

ghl_list_custom_valuesghl_get_custom_valueghl_create_custom_valueghl_update_custom_valueghl_delete_custom_value

ビジネス

ghl_list_businessesghl_get_businessghl_create_businessghl_update_businessghl_delete_business

カスタムオブジェクト

ghl_list_object_schemasghl_get_object_schemaghl_search_object_recordsghl_get_object_recordghl_create_object_recordghl_update_object_recordghl_delete_object_record

関連付け

ghl_list_associationsghl_get_record_relationsghl_create_relationghl_delete_relation

ファネル

ghl_list_funnelsghl_list_funnel_pages

ライセンス

MIT — LICENSEを参照してください。GoHighLevelとは関係なく、また承認を受けているものではありません。

Install Server
F
license - not found
B
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to perform CRM operations like creating contacts, managing deals, and updating leads through natural language using the Model Context Protocol.
    4
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to directly interact with the entire GoHighLevel CRM via 563+ tools across 44 categories, allowing natural language control for contacts, messaging, opportunities, calendars, and more.
    23
    1
    ISC
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to interact with a CRM covering companies, people, leads, deals, and more, with role checks, scoped agent keys, approval gates, and a shared audit trail.
    AGPL 3.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    An MCP-native CRM backend for AI agents, enabling customer, opportunity, note, follow-up, and pipeline health management through 15 MCP tools.

View all related MCP servers

Related MCP Connectors

  • Agent-native CRM. 25 tools — contacts, deals, sequences, enrichment waterfall, audit log.

  • SaaS intelligence for AI agents. 5 unified tools cover 1,000+ services with 91-96% token savings.

  • See, price, and control every tool call your AI agents make: policy checks, cost, and audit tools.

View all MCP Connectors

Latest Blog Posts

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/vmproductions631-tech/gohighlevel-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server