GoHighLevel MCP Server - 162 AI-Powered Tools

Interact with GoHighLevel CRM through natural language. Manage contacts, opportunities, conversations, calendars, campaigns, workflows, forms, companies, invoices, and more.

CRM Free or usage-based

Tool capabilities

Full tool listing grouped by capability area.

Accounts

  • get-social-accounts

    Read only

    Get connected social media accounts for the GoHighLevel location. Use this to get valid account IDs for creating posts.

Ads

  • add-opportunity-follower

    Add follower(s) to a GoHighLevel opportunity.

  • mark-conversation-read

    Mark a GoHighLevel conversation as read by setting unread count to zero.

  • mark-conversation-unread

    Mark a GoHighLevel conversation as unread by setting unread count to one.

  • upload-message-attachment

    Upload and send message attachments in a GoHighLevel conversation.

  • upload-media-file

    Upload a media file to GoHighLevel storage by URL.

Campaigns

  • get-campaigns

    Read only

    List all campaigns in GoHighLevel for the connected location.

Companies

  • get-company

    Read only

    Get a GoHighLevel company by ID.

  • create-company

    Create a new company in GoHighLevel.

  • update-company

    Update an existing GoHighLevel company.

Contacts

  • search-contacts

    Read only

    Search GoHighLevel contacts by query string. Returns matching contacts with their details.

  • get-contact

    Read only

    Get a GoHighLevel contact by ID. Returns full contact details including custom fields and tags.

  • get-contact-by-email

    Read only

    Look up a GoHighLevel contact by exact email address. Use this to check if a contact exists before creating a new one to prevent duplicates.

  • get-contact-by-phone

    Read only

    Look up a GoHighLevel contact by phone number. Use for dedup checks before creating contacts.

  • create-contact

    Create a new contact in GoHighLevel. IMPORTANT: Before creating, use GetContactByEmail to check if the contact already exists to prevent duplicates.

  • update-contact

    Update an existing GoHighLevel contact by ID.

  • delete-contact

    Destructive

    Permanently delete a GoHighLevel contact by ID. This action cannot be undone.

  • upsert-contact

    Create or update a contact by email address. Searches for existing contact first, then creates or updates. This is the safest way to add contacts without creating duplicates.

  • add-tags-to-contact

    Add one or more tags to a GoHighLevel contact.

  • remove-tags-from-contact

    Remove one or more tags from a GoHighLevel contact.

  • get-contact-tasks

    Read only

    Get all tasks associated with a GoHighLevel contact.

  • get-contact-followers

    Read only

    Get the list of followers (users) for a GoHighLevel contact.

  • add-contact-follower

    Add a follower (user) to a GoHighLevel contact. Followers receive notifications about the contact.

  • remove-contact-follower

    Remove a follower (user) from a GoHighLevel contact.

  • get-contact-appointments

    Read only

    Get all appointments/events for a GoHighLevel contact.

  • get-contact-dnd

    Read only

    Get the Do Not Disturb (DND) settings for a GoHighLevel contact. Shows which channels (Call, Email, SMS, WhatsApp, etc.) are blocked.

  • update-contact-dnd

    Update Do Not Disturb (DND) settings for a GoHighLevel contact. Control which channels (Call, Email, SMS, WhatsApp, GMB, FB) are blocked.

  • bulk-create-contacts

    Bulk create multiple contacts in GoHighLevel at once. Each contact should have at least an email or phone.

  • bulk-update-contacts

    Bulk update multiple contacts in GoHighLevel at once. Each contact object must include the contact ID.

  • get-contact-notes

    Read only

    Get all notes for a GoHighLevel contact.

  • add-contact-to-campaign

    Add a contact to a GoHighLevel campaign. Use GetCampaigns to get valid campaign IDs first.

  • remove-contact-from-campaign

    Remove a contact from a specific campaign in GoHighLevel.

  • add-contact-to-workflow

    Add a contact to a GoHighLevel workflow. Use GetWorkflows to get valid workflow IDs first.

  • remove-contact-from-workflow

    Remove a contact from a specific workflow in GoHighLevel.

  • get-messages-by-contact

    Read only

    Get conversations and messages for a specific GoHighLevel contact.

Custom Fields

  • get-custom-fields

    Read only

    Get all custom field definitions for the GoHighLevel location.

  • create-custom-field

    Create a new custom field definition in GoHighLevel.

  • update-custom-field

    Update an existing custom field definition in GoHighLevel.

  • delete-custom-field

    Delete a custom field definition from GoHighLevel.

  • create-custom-field-folder

    Create a new custom field folder/group in GoHighLevel to organize custom fields.

Emails

  • send-email-conversation

    Send an email message within a GoHighLevel conversation. Supports HTML content, subject lines, and attachments.

  • list-email-templates

    Read only

    List email templates in GoHighLevel for the connected location.

  • get-email-template

    Read only

    Get a specific GoHighLevel email template by ID with full details.

  • create-email-template

    Create a new email template in GoHighLevel.

  • update-email-template

    Update an existing GoHighLevel email template.

  • delete-email-template

    Destructive

    Delete a GoHighLevel email template.

  • verify-email

    Read only

    Verify an email address for deliverability using GoHighLevel email verification service.

Events

  • get-calendar-events

    Read only

    Get events/appointments for a GoHighLevel calendar within a date range.

Followers

  • get-opportunity-followers

    Read only

    Get the list of followers (users) for a GoHighLevel opportunity.

  • remove-opportunity-follower

    Remove follower(s) from a GoHighLevel opportunity.

General

  • create-note

    Create a new note for a GoHighLevel contact.

  • update-note

    Update an existing note for a GoHighLevel contact.

  • delete-note

    Delete a note from a GoHighLevel contact.

  • search-opportunities

    Read only

    Search GoHighLevel opportunities (deals). Filter by pipeline, stage, or status.

  • get-opportunity

    Read only

    Get a GoHighLevel opportunity by ID with full details.

  • create-opportunity

    Create a new opportunity (deal) in GoHighLevel. Use GetPipelines first to get valid pipeline and stage IDs.

  • update-opportunity

    Update an existing GoHighLevel opportunity.

  • delete-opportunity

    Permanently delete a GoHighLevel opportunity.

  • update-opportunity-status

    Update the status of a GoHighLevel opportunity/deal (open, won, lost, abandoned).

  • get-conversations

    Read only

    List GoHighLevel conversations. Returns recent conversations with pagination support.

  • get-conversation

    Read only

    Get a GoHighLevel conversation by ID with details.

  • create-conversation

    Create a new conversation in GoHighLevel for a contact.

  • update-conversation

    Update a GoHighLevel conversation. Can star/unstar, change unread count, or update other properties.

  • delete-conversation

    Destructive

    Permanently delete a GoHighLevel conversation by ID. This action cannot be undone.

  • search-conversations

    Read only

    Search GoHighLevel conversations by contact name, phone, or email.

  • get-messages

    Read only

    Get messages in a GoHighLevel conversation.

  • get-message-by-id

    Read only

    Get a single GoHighLevel message by its ID.

  • send-message

    Send a message in GoHighLevel. Can send SMS, Email, or other message types.

  • update-message-status

    Update the delivery status of a GoHighLevel message.

  • cancel-scheduled-message

    Cancel a scheduled message in GoHighLevel before it is sent.

  • get-recording

    Read only

    Get the call recording URL for a GoHighLevel message (voice call).

  • get-transcription

    Read only

    Get the transcription for a GoHighLevel voice call message.

  • create-inbound-message

    Create an inbound message in GoHighLevel. Used to record messages received from external channels.

  • get-scheduled-messages

    Read only

    Get scheduled (pending) messages in a GoHighLevel conversation.

  • get-calendar

    Read only

    Get a specific GoHighLevel calendar by ID with full details.

  • create-calendar

    Create a new calendar in GoHighLevel.

  • update-calendar

    Update an existing GoHighLevel calendar.

  • delete-calendar

    Delete a GoHighLevel calendar. This is permanent and cannot be undone.

  • get-calendar-slots

    Read only

    Get available time slots for a GoHighLevel calendar. Useful for booking appointments.

  • get-appointment

    Read only

    Get a GoHighLevel appointment/event by ID.

  • create-appointment

    Create a new appointment/event in GoHighLevel. Use ListCalendars to get valid calendar IDs first.

  • update-appointment

    Update an existing GoHighLevel appointment/event.

  • delete-appointment

    Delete a GoHighLevel appointment/event.

  • block-calendar-slot

    Block a time slot on a GoHighLevel calendar to prevent bookings during that period.

  • delete-blocked-slot

    Remove a blocked time slot from a GoHighLevel calendar, making it available for bookings again.

  • get-calendar-groups

    Read only

    Get all calendar groups for the GoHighLevel location.

  • get-custom-object-schema

    Read only

    Get a specific custom object schema by ID with field definitions.

  • create-custom-object-schema

    Create a new custom object schema in GoHighLevel with field definitions.

  • update-custom-object-schema

    Update an existing custom object schema in GoHighLevel.

  • delete-custom-object-schema

    Delete a custom object schema from GoHighLevel. This removes the schema and all its records permanently.

  • get-custom-object-record

    Read only

    Get a specific custom object record by ID from GoHighLevel.

  • create-custom-object-record

    Create a new record for a custom object schema in GoHighLevel.

  • update-custom-object-record

    Update an existing custom object record in GoHighLevel.

  • get-association

    Read only

    Get a GoHighLevel association by ID.

  • get-association-by-keys

    Read only

    Get a GoHighLevel association by object key and related object key pair.

  • create-association

    Create an association between objects in GoHighLevel. Supports contact-to-contact and contact-to-custom-object associations.

  • update-association

    Update an existing GoHighLevel association by ID.

  • delete-association

    Delete a GoHighLevel association. This also removes all related relations.

  • bulk-create-associations

    Bulk create multiple associations between objects in GoHighLevel.

  • bulk-delete-associations

    Bulk delete multiple GoHighLevel associations by their IDs.

  • create-association-schema

    Create a new association schema (type definition) in GoHighLevel to define how two object types can relate.

  • get-custom-values

    Read only

    Get custom field values for a GoHighLevel contact.

  • update-custom-values

    Update custom field values for a GoHighLevel contact. Use GetCustomFields first to get valid field IDs.

  • get-tags

    Read only

    Get all available tags for the GoHighLevel location.

  • get-forms

    Read only

    List all forms in GoHighLevel for the connected location.

  • get-form-submissions

    Read only

    Get form submissions in GoHighLevel. Optionally filter by form ID and date range.

  • get-surveys

    Read only

    List all surveys in GoHighLevel for the connected location.

  • get-location

    Read only

    Get GoHighLevel location (sub-account) details. Returns location info including name, address, and settings.

  • search-locations

    Read only

    Search GoHighLevel locations (sub-accounts) by company ID.

  • search-companies

    Read only

    Search GoHighLevel companies by query.

  • get-invoice

    Read only

    Get a GoHighLevel invoice by ID.

  • create-invoice

    Create a new invoice in GoHighLevel.

  • get-product

    Read only

    Get a GoHighLevel product by ID.

  • create-product

    Create a new product in GoHighLevel.

  • update-product

    Update an existing GoHighLevel product.

  • delete-product

    Destructive

    Delete a GoHighLevel product. This action cannot be undone.

  • get-business

    Read only

    Get a GoHighLevel business by ID.

  • create-business

    Create a new business in GoHighLevel.

  • update-business

    Update an existing GoHighLevel business.

  • get-social-post

    Read only

    Get a GoHighLevel social media post by ID.

  • create-social-post

    Create and schedule a social media post in GoHighLevel. Use GetSocialAccounts to get valid account IDs first.

  • delete-social-post

    Destructive

    Delete a GoHighLevel social media post.

  • get-social-post-stats

    Read only

    Get engagement statistics for a GoHighLevel social media post.

  • get-social-categories

    Read only

    Get social media post categories for the GoHighLevel location.

  • get-blog-categories

    Read only

    Get all blog categories for the GoHighLevel location.

  • get-blog-post

    Read only

    Get a GoHighLevel blog post by ID.

  • create-blog-post

    Create a new blog post in GoHighLevel.

  • update-blog-post

    Update an existing GoHighLevel blog post.

  • delete-blog-post

    Destructive

    Delete a GoHighLevel blog post.

  • search-trigger-links

    Read only

    Search trigger links in GoHighLevel. Trigger links are trackable URLs that can trigger workflows when clicked.

  • create-trigger-link

    Create a new trigger link in GoHighLevel. Trigger links are trackable URLs that trigger workflows when clicked.

  • update-trigger-link

    Update an existing GoHighLevel trigger link.

  • delete-trigger-link

    Destructive

    Delete a GoHighLevel trigger link.

  • get-funnel-pages

    Read only

    Get pages within a GoHighLevel funnel. Use ListFunnels to get valid funnel IDs first.

  • delete-media-file

    Delete a media file from GoHighLevel storage.

  • get-course

    Read only

    Get a GoHighLevel course or membership by ID.

  • import-courses

    Import courses into GoHighLevel.

Lists

  • list-calendars

    Read only

    List all calendars in GoHighLevel for the connected location.

  • list-custom-object-schemas

    Read only

    List all custom object schemas defined in the GoHighLevel location.

  • list-custom-object-records

    Read only

    List records for a custom object schema in GoHighLevel with pagination.

  • list-associations

    Read only

    List all associations (object relationships) for the GoHighLevel location.

  • list-association-schemas

    Read only

    List all available association type definitions (schemas) for the GoHighLevel location.

  • list-custom-field-folders

    Read only

    List all custom field folders/groups in GoHighLevel.

  • list-invoices

    Read only

    List invoices in GoHighLevel. Optionally filter by status.

  • list-transactions

    Read only

    List payment transactions in GoHighLevel.

  • list-subscriptions

    Read only

    List payment subscriptions in GoHighLevel.

  • list-products

    Read only

    List products in GoHighLevel. Optionally search by name.

  • list-businesses

    Read only

    List all businesses for the GoHighLevel location.

  • list-social-posts

    Read only

    List social media posts in GoHighLevel. Optionally filter by type.

  • list-blog-posts

    Read only

    List blog posts in GoHighLevel. Optionally filter by category or status.

  • list-blog-authors

    Read only

    List all blog authors for the GoHighLevel location.

  • list-funnels

    Read only

    List all funnels in GoHighLevel for the connected location.

  • list-funnel-redirects

    Read only

    List URL redirects configured in GoHighLevel funnels.

  • list-media-files

    Read only

    List media files in GoHighLevel storage.

  • list-courses

    Read only

    List courses and memberships in GoHighLevel.

Pipelines

  • get-pipelines

    Read only

    Get all pipelines and their stages in GoHighLevel. Use this to get valid pipeline and stage IDs before creating or updating opportunities.

Tasks

  • create-task

    Create a new task for a GoHighLevel contact.

  • update-task

    Update an existing task for a GoHighLevel contact.

  • delete-task

    Delete a task from a GoHighLevel contact.

Users

  • get-users

    Read only

    List all users in the GoHighLevel location. Use this to get valid user IDs for assignments.

  • get-user

    Read only

    Get a GoHighLevel user by ID.

Workflows

  • get-workflows

    Read only

    List all workflows in GoHighLevel for the connected location.

Connection instructions

Use the same MCP endpoint for Claude Desktop and Claude Code CLI.

Claude Code CLI

claude mcp add gohighlevel -- npx -y mcp-remote https://mcpplug.ai/mcp/gohighlevel

Claude Desktop JSON

{
  "mcpServers": {
    "gohighlevel": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcpplug.ai/mcp/gohighlevel"
      ]
    }
  }
}

Frequently asked questions

How do I connect GoHighLevel to Claude?

Use the MCP endpoint at https://mcpplug.ai/mcp/gohighlevel in Claude Desktop or Claude Code. Authorize your account during the OAuth flow, then the tools become available instantly.

What tools are available in the GoHighLevel MCP server?

GoHighLevel includes 162 tools. You can view every tool grouped by capability directly on this page.

Is GoHighLevel MCP server free?

Yes. GoHighLevel is available with free or usage-based access on MCPPlug.

Can I use this server with AI clients beyond Claude?

Yes. Any MCP-compatible client can connect to this endpoint, including CLI and IDE clients that support HTTP MCP transports.