Communication and meetings

The GoHighLevel connector.

CRM, pipelines, calendars, and conversations. Connect once with your own key. Every agent your team runs reads the same 11 tools under one permission model.

How access is governed

10

Read tools

Open by default. They run when called, and every call is logged with the endpoint, tool and capability.

1

Write tools

Available through governed Slack workflows. MCP endpoints do not expose write tools.

0

Destructive tools

GoHighLevel defines no destructive tools. Nothing here deletes data.

Defaults come from the capability on each tool definition, and an admin can tighten or open any tool individually. The endpoint's capability ceiling can only tighten that policy. An endpoint scoped to read never surfaces a write tool.

Every GoHighLevel tool

11 tools, named as the agent sees them.

  • search_contactsread

    Search contacts in GoHighLevel by query string. Returns matching contacts with name, email, phone, and tags.

  • get_contactread

    Get a single contact by ID from GoHighLevel. Returns full contact details including custom fields, tags, and deal associations.

  • get_contact_tasksread

    Get tasks associated with a specific contact in GoHighLevel. Useful for checking overdue or upcoming follow-ups.

  • add_contact_notewrite

    Add a note to a contact in GoHighLevel. Use this to post sales call summaries, meeting notes, or any other text to a contact record.

  • get_pipelinesread

    List all sales pipelines and their stages in GoHighLevel. Call this first to discover pipeline IDs before querying opportunities.

  • get_opportunitiesread

    List opportunities (deals) in a SINGLE pipeline. Supports pagination via startAfter/startAfterId cursors. For cross-pipeline queries, use get_all_opportunities instead.

  • get_all_opportunitiesread

    Get opportunities across ALL pipelines in a single call. Automatically iterates every pipeline. Best for cross-pipeline reporting like "all won deals", "total pipeline value", or "all open deals". Returns up to 100 results per pipeline. The response includes pipeline stage names for each deal.

  • get_opportunityread

    Get a single opportunity (deal) by ID. Requires the pipeline ID — if unknown, use get_pipelines first or use get_all_opportunities to search.

  • get_calendarsread

    List all calendar services (booking calendars) in GoHighLevel.

  • get_calendar_slotsread

    Get available free slots for a specific calendar in GoHighLevel.

  • get_appointmentsread

    Get calendar appointments from GoHighLevel. Requires at least one of calendarId, userId, or teamId.

Use it from any agent

The same GoHighLevel tools reach Claude Code, Cursor, Claude Desktop or your own agent through one MCP endpoint. The endpoint is scoped to a group, the token is issued per group and revocable from the dashboard, and an allowed-tool list and capability ceiling limit what it exposes. Reads run. Gated writes refuse unless an admin opens them. Destructive tools remain unavailable over MCP.

.mcp.json · works for Cursor and Claude Desktop too
{
  "mcpServers": {
    "growth": {
      "type": "http",
      "url": "https://app.notara.ai/mcp/g/acme/growth",
      "headers": {
        "Authorization": "Bearer ntr_mcp_xxxxxxxxxxxxxxxxxxxx"
      }
    }
  }
}

The URL and token are placeholders. Real endpoints are issued per group from the dashboard.

Setup

  1. 01

    Create a GoHighLevel API Key in your GoHighLevel account (where to find it). The key is yours: Notara stores it encrypted and never sees a bill.

  2. 02

    Paste it into the Notara dashboard. Credentials can be scoped to the workspace or to one person.

  3. 03

    The tools appear with their capability defaults already set. Tighten or open any of them per tool, then invite the agent to a channel or issue an MCP token.

More in communication and meetings

Connect GoHighLevel once. Use it everywhere.

Use Notara directly, or bring us the workflow that needs to be redesigned and built.