create_contactLABSCO SUMMARY
The scope list is your access control, so choose it deliberately.
This exposes the whole sub-account surface, which is the point and also the risk the author states plainly: full API access with your credentials, no built-in memory or recall guard, and real rate limits behind it. The practical lever is the Private Integration scope list — grant contacts.readonly and conversations.readonly and the same server becomes read-mostly. Scopes can be widened later from the same screen, so starting narrow costs nothing.
What it is
A foundation-layer server covering GoHighLevel's sub-account API surface. It is explicitly a base to build on: broad coverage first, with the expectation that you segment and extend it for your own use.
What you get
- The README's headline says 269 tools across 19+ categories; its catalogue names 219 of them
- Contacts (31):
create_contact,search_contacts,update_contact,upsert_contact,get_duplicate_contact, tag operations includingbulk_update_contact_tags, task and note CRUD, andadd_contact_to_workflow - Messaging (20):
send_sms,send_email,search_conversations,get_conversation,create_conversation, plus message retrieval and call recordings - Business operations: locations, custom objects, workflows and surveys
- Sales and revenue: opportunities, payments, invoices, estimates and billing
- Marketing: social media, email campaigns, blog management and the media library
- E-commerce: store management, products, inventory, shipping and order fulfilment
Requirements
Node.js 18 or newer, and a GoHighLevel Private Integrations API key — not a regular API key. Create it under Settings > Integrations > Private Integrations and select the scopes you need, such as contacts.write, conversations.write, calendars.write and invoices.write. Then set GHL_API_KEY, GHL_BASE_URL to https://services.leadconnectorhq.com, and GHL_LOCATION_ID from your location settings. It runs as a stdio server for Claude Desktop or as an HTTP server, with one-click deploys for Vercel and Railway.
Setup effort
Build from source — git clone https://github.com/hridayshah7/gohighlevel-mcp.git
USE CASES
Working a lead list by conversation
Search contacts, tag them in bulk, and drop the right ones into a workflow.
Following up without opening the CRM
Find the conversation, read what was said, and send the SMS or email.
Keeping records clean
Detect duplicates and upsert rather than creating a second copy of the same person.
Reviewing what happened this week
Pull opportunities, invoices and payments together instead of three dashboards.
219 tools
Listed in project docs. Your client may show a different list.
search_contactsget_contactupdate_contactdelete_contactadd_contact_tagsremove_contact_tagsget_contact_taskscreate_contact_taskupdate_contact_taskdelete_contact_taskget_contact_notescreate_contact_noteupdate_contact_notedelete_contact_noteupsert_contactget_duplicate_contactbulk_update_contact_tagsadd_contact_to_workflowremove_contact_from_workflowadd_contact_followersremove_contact_followerssend_smssend_emailsearch_conversationsget_conversationcreate_conversationget_messageget_email_messageupload_message_attachmentsupdate_message_statuscancel_scheduled_messageget_message_recordingget_message_transcriptiondownload_transcriptionadd_inbound_messageadd_outbound_calllive_chat_typingcreate_blog_postupdate_blog_postget_blog_postsget_blog_sitesget_blog_authorsget_blog_categoriescheck_url_slugsearch_opportunitiesget_pipelinescreate_opportunityupdate_opportunitydelete_opportunityupdate_opportunity_statusupsert_opportunityadd_opportunity_followersremove_opportunity_followersget_calendar_groupsget_calendarscreate_calendarupdate_calendardelete_calendarget_calendar_eventsget_free_slotscreate_appointmentget_appointmentupdate_appointmentdelete_appointmentcreate_block_slotupdate_block_slotget_email_campaignscreate_email_templateget_email_templatesupdate_email_templatedelete_email_templatesearch_locationsget_locationcreate_locationupdate_locationdelete_locationget_location_tagscreate_location_tagupdate_location_tagdelete_location_tagget_location_custom_fieldscreate_location_custom_fieldupdate_location_custom_fieldget_location_custom_valuescreate_location_custom_valueupdate_location_custom_valueget_location_templatesdelete_location_templateget_timezonesverify_emailsearch_social_postscreate_social_postget_social_postupdate_social_postdelete_social_postbulk_delete_social_postsget_social_accountsdelete_social_accountstart_social_oauthupload_social_csvget_csv_upload_statusset_csv_accountsget_social_categoriesget_social_tagsget_social_tags_by_idsget_media_filesupload_media_filedelete_media_fileget_all_objectscreate_object_schemaget_object_schemaupdate_object_schemacreate_object_recordget_object_recordupdate_object_recorddelete_object_recordsearch_object_recordsghl_get_all_associationsghl_create_associationghl_get_association_by_idghl_update_associationghl_delete_associationghl_create_relationghl_get_relations_by_recordghl_delete_relationghl_get_custom_field_by_idghl_create_custom_fieldghl_update_custom_fieldghl_delete_custom_fieldghl_get_custom_fields_by_object_keyghl_create_custom_field_folderghl_update_custom_field_folderghl_delete_custom_field_folderghl_get_workflowsghl_get_surveysghl_get_survey_submissionsghl_create_shipping_zoneghl_list_shipping_zonesghl_get_shipping_zoneghl_update_shipping_zoneghl_delete_shipping_zoneghl_get_available_shipping_ratesghl_create_shipping_rateghl_list_shipping_ratesghl_get_shipping_rateghl_update_shipping_rateghl_delete_shipping_rateghl_create_shipping_carrierghl_list_shipping_carriersghl_update_shipping_carrierghl_create_store_settingghl_get_store_settingghl_create_productghl_list_productsghl_get_productghl_update_productghl_delete_productghl_create_priceghl_list_pricesghl_list_inventoryghl_create_product_collectionghl_list_product_collectionscreate_whitelabel_integration_providerlist_whitelabel_integration_providerslist_ordersget_order_by_idcreate_order_fulfillmentlist_order_fulfillmentslist_transactionsget_transaction_by_idlist_subscriptionsget_subscription_by_idlist_couponscreate_couponupdate_coupondelete_couponget_couponcreate_custom_provider_integrationdelete_custom_provider_integrationget_custom_provider_configcreate_custom_provider_configcreate_invoice_templatelist_invoice_templatesget_invoice_templateupdate_invoice_templatedelete_invoice_templateupdate_invoice_template_late_feesupdate_invoice_template_payment_methodscreate_invoice_schedulelist_invoice_schedulesget_invoice_scheduleupdate_invoice_scheduledelete_invoice_scheduleschedule_invoice_scheduleauto_payment_invoice_schedulecancel_invoice_schedulecreate_invoicelist_invoicesget_invoiceupdate_invoicedelete_invoicevoid_invoicesend_invoicerecord_invoice_paymentgenerate_invoice_numbertext2pay_invoicecreate_estimatelist_estimatesupdate_estimatedelete_estimatesend_estimatecreate_invoice_from_estimategenerate_estimate_numberlist_estimate_templatescreate_estimate_templateupdate_estimate_templatedelete_estimate_templatepreview_estimate_templateBEFORE YOU INSTALL
What to know first
Tools you get
219 tools named in the project's documentation.
Requires
- node on PATH
- Node.js 18+
- GHL_API_KEY in your environment
- GHL_LOCATION_ID in your environment
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/hridayshah7/gohighlevel-mcp.git
cd gohighlevel-mcp
npm install
npm run buildMCP Clients
Claude Desktop
{
"mcpServers": {
"ghl-mcp-server": {
"command": "node",
"args": [
"<YOUR_PATH_TO_GOHIGHLEVEL_MCP>/dist/server.js"
],
"env": {
"GHL_API_KEY": "<YOUR_GHL_API_KEY>",
"GHL_BASE_URL": "https://services.leadconnectorhq.com",
"GHL_LOCATION_ID": "<YOUR_GHL_LOCATION_ID>"
}
}
}
}