Close MCP connector
OAuth 2.1/DCRCRM & SalesCommunicationClose is a CRM and sales platform. The Close MCP server provides a standardized interface that allows any compatible AI model or agent to access Close CRM...
Close MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'closemcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Close MCP:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'closemcp_activity_search',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "closemcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Close MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="closemcp_activity_search",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Update task, sms template, pipeline — Update an existing task
- Search paginate, lead — Perform a natural language search for leads or contacts
- Call schedule voice agent — Schedule a voice agent to call a lead’s contact
- Users org — Return active users (memberships) which are part of the current org
- Info org — Get information about the Close organization including organization ID, name, and other org-level details
- Get voice agents, voice agent performance report, voice agent overview report — Return detailed configuration for one or more voice agents
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
closemcp_activity_search#Search for activities. Results are returned ordered by date descending.
Examples:
- To list activities on a lead, use the lead_ids filter.
- To list conversations, filter for calls and meetings.8 params
Search for activities. Results are returned ordered by date descending. Examples: - To list activities on a lead, use the lead_ids filter. - To list conversations, filter for calls and meetings.
activity_atstringoptionalFilter activities by the date/time the activity occurred.activity_typesstringoptionalFilter by activity types. Valid values include activity.call, activity.email, activity.note, activity.meeting, activity.sms, activity.custom_activity, and others.agent_config_idsstringoptionalFilter by voice agent config IDs. Matches Call, Email, and SMS activities that carry an agent_config_id; other activity types are filtered out implicitly because the field is not indexed for them.contact_idsstringoptionalFilter by contact IDs. Only activities associated with these contacts will be returned.cursorstringoptionalPagination cursor. Provide only when more results are requested from a previous response.lead_idsstringoptionalFilter by lead IDs. Only activities on these leads will be returned.lead_smart_view_idsstringoptionalFilter by lead smart view IDs. Only activities on leads matching these smart views will be returned.user_idsstringoptionalFilter by user IDs. Only activities created by these users will be returned.closemcp_aggregation#Perform an aggregation to answer questions like:
- How many emails were sent this week?
- Calls by user this week (Who made the most?)
You MUST first fetch the list of available leads of fields using the
`get_fields` tool.6 params
Perform an aggregation to answer questions like: - How many emails were sent this week? - Calls by user this week (Who made the most?) You MUST first fetch the list of available leads of fields using the `get_fields` tool.
include_typesarrayrequiredObject types to include in aggregation. Valid values: lead, contact, opportunity, task, email, call, note, meeting, sms, whatsapp, custom_activity, custom_object, sequence_subscription, lead_status_change, opportunity_status_change.aggregationsstringoptionalAggregation specifications to compute. Each item must specify an aggregation_type (e.g. count, sum, average, min, max, median, cardinality, percent_empty, etc.) and most require a field name.display_modestringoptionalHow to display the aggregation results. Determined automatically by default.group_bystringoptionalReference or enum fields to group by (maximum 2). Use field names returned by the get_fields tool.intervalstringoptionalInterval to aggregate by when using date fields. Determined automatically by default.time_bucketsstringoptionalTime buckets configuration for grouping results by time period.closemcp_apply_voice_agent_update#Apply a previously proposed voice agent update.
This tool persists the server-stored proposal identified by proposal_id.
It does not rerun the feedback processor, and it fails if the proposal has
expired or the voice agent changed after the proposal was created.1 param
Apply a previously proposed voice agent update. This tool persists the server-stored proposal identified by proposal_id. It does not rerun the feedback processor, and it fails if the proposal has expired or the voice agent changed after the proposal was created.
proposal_idstringrequiredProposal ID returned by propose_voice_agent_update.closemcp_close_product_knowledge_search#Search Close product documentation and knowledge base for relevant information.
Use this tool when users ask about:
- How to use specific Close features
- Close API documentation and integration
- Workflow automation and best practices
- Product capabilities and limitations
- Setup and configuration guidance
Example queries:
- "How do I set up automated lead assignment?"
- "What are Close's API rate limits?"
- "How to create custom fields in Close?"
- "Best practices for email templates in Close"1 param
Search Close product documentation and knowledge base for relevant information. Use this tool when users ask about: - How to use specific Close features - Close API documentation and integration - Workflow automation and best practices - Product capabilities and limitations - Setup and configuration guidance Example queries: - "How do I set up automated lead assignment?" - "What are Close's API rate limits?" - "How to create custom fields in Close?" - "Best practices for email templates in Close"
querystringrequiredNatural language query to search Close product documentation and knowledge. For example: 'How do I set up automated lead assignment?' or 'What are Close API rate limits?'closemcp_create_address#Add a new address to an existing lead (company).8 params
Add a new address to an existing lead (company).
address_1stringrequiredAddress line 1 (street address)citystringrequiredCitycountrystringrequiredCountry code in ISO 3166-1 alpha-2 format (e.g. US, GB, DE)labelstringrequiredLabel for the address. One of: business, mailing, other.lead_idstringrequiredID of the lead to add the address tostatestringrequiredState or provincezipcodestringrequiredZIP or postal codeaddress_2stringoptionalAddress line 2 (suite, unit, etc.)closemcp_create_call_task#Schedule a call task on a lead, assigned to either a user or a
voice agent (Chloe).
A call task represents a scheduled outbound call that will be made
to the specified contact at the given time. The task can be assigned
to a specific user or dispatched to a voice agent.6 params
Schedule a call task on a lead, assigned to either a user or a voice agent (Chloe). A call task represents a scheduled outbound call that will be made to the specified contact at the given time. The task can be assigned to a specific user or dispatched to a voice agent.
contact_idstringrequiredID of the contact to call. Must belong to the specified lead.lead_idstringrequiredID of the lead this call task belongs toagent_config_idstringoptionalID of the voice agent (Chloe) to dispatch the call task to. Mutually exclusive with assigned_to.assigned_tostringoptionalID of the user to assign the call task to. Mutually exclusive with agent_config_id.due_datestringoptionalDue date or datetime for the call task. Can be a date (YYYY-MM-DD) or datetime (ISO 8601). If not provided, the task will be due immediately.textstringoptionalThe call task description/instructions.closemcp_create_comment#Add a comment to a commentable object (note, call, opportunity, task,
custom object, etc.).
If the object already has a comment thread, the new comment is appended
to it. Otherwise a new thread is started for the object. Use this tool
for both starting a conversation and replying to an existing one — the
object_id alone determines which.
Comments support @-mentions of users and groups. The body is HTML.2 params
Add a comment to a commentable object (note, call, opportunity, task, custom object, etc.). If the object already has a comment thread, the new comment is appended to it. Otherwise a new thread is started for the object. Use this tool for both starting a conversation and replying to an existing one — the object_id alone determines which. Comments support @-mentions of users and groups. The body is HTML.
bodystringrequiredBody of the comment as Close rich text (HTML). Must be a valid Close rich-text document: wrap the whole content in a single <body> tag and put each line/paragraph in a block-level tag. Supported tags include <p>, <h1>-<h6>, <ul>/<ol> with <li>, <blockquote>, <hr>, <a href=...>, <br>, and inline formatting <strong>/<b>, <em>/<i>, <u>, <s>, <code>, <span>. Emoji and unicode are accepted. Escape literal '&' as '&' and literal '<' as '<' in text content.
To @-mention a user, call the `org_users` tool to look up the target user and embed their `mention_html` value verbatim in the body. To @-mention a group, call the `find_groups` tool to look up the target group and embed their `mention_html` value verbatim in the body. Example: <body><p>Nice work <span data-type="mention" data-id="user_abc123" data-label="Jane Doe" class="mention">@Jane Doe</span> on closing this!</p></body>object_idstringrequiredID of the commentable object: an activity ID (acti_..., e.g. a note, call, email, SMS, meeting, or custom activity), an opportunity ID (oppo_...), a task notification ID (task_...), or a custom object ID (custobj_...). One comment thread exists per object; this tool adds to it or creates it if none exists yet.closemcp_create_contact#Create a new contact for a lead.
A contact represents a person associated with a lead (company).7 params
Create a new contact for a lead. A contact represents a person associated with a lead (company).
lead_idstringrequiredID of the lead this contact belongs tocustom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.emailsstringoptionalList of email addresses for the contact. Each entry needs a type (office, mobile, home, direct, fax, url, other) and an email address.namestringoptionalFull name of the contactphonesstringoptionalList of phone numbers for the contact. Each entry needs a type (office, mobile, home, direct, fax, url, other) and a phone number in international format (e.g. +16505551234).titlestringoptionalJob title of the contact (e.g. CEO, VP of Sales)urlsstringoptionalList of URLs for the contact (e.g. LinkedIn, personal website). Each entry needs a type and a URL.closemcp_create_custom_activity_instance#Create a new custom activity instance on a lead.
A custom activity instance is an activity of a custom activity type,
holding the custom field values defined by that type. Use the
find_custom_activities tool to look up the available custom activity
types.
If in an interactive session, ask the user for the relevant field values
(including custom fields) before creating, even if they are not required.9 params
Create a new custom activity instance on a lead. A custom activity instance is an activity of a custom activity type, holding the custom field values defined by that type. Use the find_custom_activities tool to look up the available custom activity types. If in an interactive session, ask the user for the relevant field values (including custom fields) before creating, even if they are not required.
custom_activity_type_idstringrequiredID of the custom activity type. Use the find_custom_activities tool to look up the available custom activity types.lead_idstringrequiredID of the lead this custom activity belongs toactivity_atstringoptionalWhen the custom activity occurredcontact_idstringoptionalID of the contact to associate with the custom activitycustom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.date_createdstringoptionalWhen the custom activity was created. Defaults to now; set this to backfill an activity at a past time.pinnedbooleanoptionalWhether to pin the custom activity to the top of the lead's timelinestatusstringoptionalStatus of the custom activity. Published activities validate required custom fields; draft activities do not.user_idstringoptionalID of the user to attribute the custom activity to (defaults to the caller)closemcp_create_email_template#Create a new email template.
Handling of attachments and unsubscribe links via this tool is currently unsupported.
Email template body should be HTML formatted.
Use template tags as placeholders, for example:
{{ organization.name }} to refer to the sender's organization name.
{{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the email.
{{ lead.display_name }} to refer to the lead name (recipient's name/company).
{{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.6 params
Create a new email template. Handling of attachments and unsubscribe links via this tool is currently unsupported. Email template body should be HTML formatted. Use template tags as placeholders, for example: {{ organization.name }} to refer to the sender's organization name. {{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the email. {{ lead.display_name }} to refer to the lead name (recipient's name/company). {{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.
bodystringrequiredHTML body of the email template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}namestringrequiredName of the email templatesubjectstringrequiredSubject line of the email templatebccstringoptionalList of BCC email addressesccstringoptionalList of CC email addressesis_sharedbooleanoptionalShare this template with the organization (required for use in workflows)closemcp_create_lead#Create a new lead (company).
After creating a lead, you should usually add an address or contact
(including phone or email) to the lead.5 params
Create a new lead (company). After creating a lead, you should usually add an address or contact (including phone or email) to the lead.
custom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.descriptionstringoptionalDescription of the leadnamestringoptionalName of the leadstatus_idstringoptionalID of the lead status. Use find_lead_statuses to get available status IDs.urlstringoptionalURL of the lead's websiteclosemcp_create_lead_status#Create a new lead status.1 param
Create a new lead status.
labelstringrequiredLabel for the lead statusclosemcp_create_note#Create a new note on a lead.
A note is a text-based activity attached to a lead. At least one
of note (plaintext) or note_html (rich text) must be provided.8 params
Create a new note on a lead. A note is a text-based activity attached to a lead. At least one of note (plaintext) or note_html (rich text) must be provided.
lead_idstringrequiredID of the lead this note belongs toactivity_atstringoptionalWhen the note activity occurred (ISO 8601 date-time)contact_idstringoptionalID of the contact to associate with the notenotestringoptionalPlaintext note content. At least one of note or note_html must be provided.note_htmlstringoptionalRich-text (HTML) note content. At least one of note or note_html must be provided.pinnedstringoptionalWhether to pin the note to the top of the leadtitlestringoptionalTitle of the noteuser_idstringoptionalID of the user to attribute the note to (defaults to caller)closemcp_create_opportunity#Create a new opportunity.
Requires a lead ID and status ID. Other fields are optional. The value should be specified in cents (e.g., $100.00 = 10000).11 params
Create a new opportunity. Requires a lead ID and status ID. Other fields are optional. The value should be specified in cents (e.g., $100.00 = 10000).
lead_idstringrequiredID of the lead this opportunity belongs tostatus_idstringrequiredID of the opportunity status. Use find_pipelines_and_opportunity_statuses to list valid IDs.close_atstringoptionalExpected close date in ISO 8601 formatconfidencestringoptionalConfidence percentage (0-100) that the opportunity will closecontact_idstringoptionalID of the primary contact for this opportunitycustom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.notestringoptionalPlaintext note to attach to the opportunitynote_htmlstringoptionalRich-text HTML version of the note, wrapped in `<body>...</body>`. When set, `note` is automatically derived from it.user_idstringoptionalID of the user assigned to this opportunity. Defaults to the current user.valuestringoptionalMonetary value of the opportunity in cents (e.g., $100.00 = 10000)value_periodstringoptionalRecurrence period for the value: 'one_time', 'monthly', or 'annual'closemcp_create_opportunity_status_tool#Create a new opportunity status.3 params
Create a new opportunity status.
labelstringrequiredLabel for the opportunity statuspipeline_idstringrequiredID of the pipeline to add the status totypestringrequiredType of the opportunity status. One of: 'won', 'lost', 'active'.closemcp_create_pipeline#Create a new opportunity pipeline.
Use the create_opportunity_status tool to add statuses to the pipeline.1 param
Create a new opportunity pipeline. Use the create_opportunity_status tool to add statuses to the pipeline.
namestringrequiredName of the pipeline.closemcp_create_sms_template#Create a new SMS template.
Handling of attachments via this tool is currently unsupported.
Use template tags as placeholders, for example:
{{ organization.name }} to refer to the sender's organization name.
{{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the message.
{{ lead.display_name }} to refer to the lead name (recipient's name/company).
{{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.3 params
Create a new SMS template. Handling of attachments via this tool is currently unsupported. Use template tags as placeholders, for example: {{ organization.name }} to refer to the sender's organization name. {{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the message. {{ lead.display_name }} to refer to the lead name (recipient's name/company). {{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.
namestringrequiredName of the SMS templatetextstringrequiredText content of the SMS template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}is_sharedbooleanoptionalShare this template with the organization (required for use in workflows)closemcp_create_task#Create a new task for a lead.
A task represents a to-do item that can be assigned to a user
and optionally associated with a contact.7 params
Create a new task for a lead. A task represents a to-do item that can be assigned to a user and optionally associated with a contact.
lead_idstringrequiredID of the lead this task belongs totextstringrequiredThe task descriptionassigned_tostringoptionalID of the user to assign the task to. Defaults to the current user if not provided.contact_idstringoptionalID of the contact associated with this task. Must belong to the specified lead.due_datestringoptionalDue date or datetime for the task. Can be a date (YYYY-MM-DD) or datetime (ISO 8601). If not provided, the task will be due immediately.prioritystringoptionalTask priority: 'high' or 'medium'. Defaults to 'medium'. Only set to high if the user explicitly says it's a high priority task.send_notificationbooleanoptionalSend an email notification to the assigned user. Assume notifications should be sent unless the user explicitly tells you not to.closemcp_create_workflow#Create a new workflow (a.k.a. sequence) with Draft status.3 params
Create a new workflow (a.k.a. sequence) with Draft status.
namestringrequiredWorkflow name. Must be unique within the organization.stepsarrayrequiredSteps in the workflow. Each step must have a step_type that exactly matches one of: 'email', 'call', 'task', 'sms', 'create-opportunity', 'update-opportunity', 'update-lead', 'lead-assignment'. Each step also requires a delay (ISO 8601 duration, e.g. 'PT0S' for immediate, 'P1D' for 1 day). At least one step is required.triggerstringoptionalThe trigger that determines when and how the workflow fires. The trigger_type must exactly match one of the defined types. Use 'contact-manual' (the default) when the user does not specify a trigger. Supported trigger_type values: 'contact-manual', 'lead-manual', 'lead-event', 'contact-event', 'opportunity-event', 'call-event', 'custom-activity-event', 'meeting-event', 'form-submission-event'.closemcp_delete_address#Delete an address from an existing lead (company) if there is an exact match.8 params
Delete an address from an existing lead (company) if there is an exact match.
address_1stringrequiredAddress line 1 — must match exactlycitystringrequiredCity — must match exactlycountrystringrequiredCountry code (ISO 3166-1 alpha-2) — must match exactlylabelstringrequiredLabel for the address (e.g. business, mailing, other)lead_idstringrequiredID of the lead to delete the address fromstatestringrequiredState or province — must match exactlyzipcodestringrequiredZIP or postal code — must match exactlyaddress_2stringoptionalAddress line 2 — must match exactly if presentclosemcp_delete_contact#Permanently delete an existing contact.
This will remove the contact from its lead including its email addresses,
phone numbers, and URLs will be removed. Activities on the lead are not
affected.
This action cannot be undone.
ONLY call this if the user specifically instructed you to delete the contact.1 param
Permanently delete an existing contact. This will remove the contact from its lead including its email addresses, phone numbers, and URLs will be removed. Activities on the lead are not affected. This action cannot be undone. ONLY call this if the user specifically instructed you to delete the contact.
idstringrequiredID of the contact to deleteclosemcp_delete_custom_activity_instance#Permanently delete an existing custom activity instance.
This action cannot be undone.
ONLY call this if the user specifically instructed you to delete the
custom activity instance.1 param
Permanently delete an existing custom activity instance. This action cannot be undone. ONLY call this if the user specifically instructed you to delete the custom activity instance.
idstringrequiredID of the custom activity instance to deleteclosemcp_delete_email_template#Permanently delete an email template.
If the template is used in any workflows (sequences), it cannot be deleted.1 param
Permanently delete an email template. If the template is used in any workflows (sequences), it cannot be deleted.
idstringrequiredID of the email template to deleteclosemcp_delete_lead#Permanently delete an existing lead (company) by ID including all of its addresses, contacts, opportunities, tasks, and activities.
ONLY call this if the user specifically instructed you to delete the lead, and you confirmed what the deletion will entail and that it cannot be reversed.1 param
Permanently delete an existing lead (company) by ID including all of its addresses, contacts, opportunities, tasks, and activities. ONLY call this if the user specifically instructed you to delete the lead, and you confirmed what the deletion will entail and that it cannot be reversed.
idstringrequiredID of the lead to deleteclosemcp_delete_lead_smart_view#Permanently delete a lead smart view (saved search).1 param
Permanently delete a lead smart view (saved search).
idstringrequiredID of the lead smart view to deleteclosemcp_delete_lead_status#Permanently delete a lead status.
Cannot delete if it's the last lead status in the organization or there are
leads currently using this status.1 param
Permanently delete a lead status. Cannot delete if it's the last lead status in the organization or there are leads currently using this status.
idstringrequiredID of the lead status to deleteclosemcp_delete_note#Permanently delete an existing note.
This action cannot be undone.
ONLY call this if the user specifically instructed you to delete
the note.1 param
Permanently delete an existing note. This action cannot be undone. ONLY call this if the user specifically instructed you to delete the note.
idstringrequiredID of the note to deleteclosemcp_delete_opportunity#Permanently delete an opportunity.
This action cannot be undone. All data associated with the opportunity will be removed.1 param
Permanently delete an opportunity. This action cannot be undone. All data associated with the opportunity will be removed.
idstringrequiredID of the opportunity to deleteclosemcp_delete_opportunity_status_tool#Permanently delete an opportunity status.
Cannot delete if it's the last opportunity status in the organization or there are opportunities currently using this status.1 param
Permanently delete an opportunity status. Cannot delete if it's the last opportunity status in the organization or there are opportunities currently using this status.
idstringrequiredID of the opportunity status to deleteclosemcp_delete_pipeline#Permanently delete an opportunity pipeline.
A pipeline can only be deleted if it has no statuses. The last pipeline cannot be deleted.1 param
Permanently delete an opportunity pipeline. A pipeline can only be deleted if it has no statuses. The last pipeline cannot be deleted.
idstringrequiredID of the pipeline to deleteclosemcp_delete_sms_template#Permanently delete an SMS template.
If the template is used in any workflows (sequences), it cannot be deleted.1 param
Permanently delete an SMS template. If the template is used in any workflows (sequences), it cannot be deleted.
idstringrequiredID of the SMS template to deleteclosemcp_delete_task#Permanently delete an existing task by ID.
This action cannot be undone.
ONLY call this if the user specifically instructed you to delete the task.1 param
Permanently delete an existing task by ID. This action cannot be undone. ONLY call this if the user specifically instructed you to delete the task.
idstringrequiredID of the task to deleteclosemcp_enrich_field#Use AI to determine and set the value of a field on a lead or contact.
The field is enriched using available data on the object and external
sources, and the enriched value is written back to the object. By default
the value is only written if the field is currently empty; set
overwrite_existing_value to True to replace an existing value.
Returns the enriched value along with the model's reasoning and confidence.4 params
Use AI to determine and set the value of a field on a lead or contact. The field is enriched using available data on the object and external sources, and the enriched value is written back to the object. By default the value is only written if the field is currently empty; set overwrite_existing_value to True to replace an existing value. Returns the enriched value along with the model's reasoning and confidence.
field_idstringrequiredThe ID of the field to enrich. This may be a built-in field name or a custom field ID.object_idstringrequiredThe ID of the lead or contact to enrich (e.g. 'lead_xxx' or 'cont_xxx').object_typestringrequiredThe type of object whose field should be enriched.overwrite_existing_valuebooleanoptionalWhether to overwrite an existing value. When False, the field is only written if it is currently empty.closemcp_fetch_comment#Fetch a single comment by ID.
Returns the comment's rich-text (HTML) body, the thread and lead it
belongs to, its @-mentions, and the resolved author and last-editor
names.1 param
Fetch a single comment by ID. Returns the comment's rich-text (HTML) body, the thread and lead it belongs to, its @-mentions, and the resolved author and last-editor names.
idstringrequiredID of the comment to fetch.closemcp_fetch_contact#Fetch an existing contact by ID.
Returns the contact's details including name, title, email addresses, phone numbers, and URLs.1 param
Fetch an existing contact by ID. Returns the contact's details including name, title, email addresses, phone numbers, and URLs.
idstringrequiredID of the contact to fetchclosemcp_fetch_custom_activity_instance#Fetch an existing custom activity instance by ID.
A custom activity instance is an activity of a custom activity type,
holding the custom field values defined by that type. Returns the
full instance, including its custom field values and the resolved
lead, contact, and user names.1 param
Fetch an existing custom activity instance by ID. A custom activity instance is an activity of a custom activity type, holding the custom field values defined by that type. Returns the full instance, including its custom field values and the resolved lead, contact, and user names.
idstringrequiredID of the custom activity instance to fetchclosemcp_fetch_custom_object_type#Fetch a custom object type by ID.
A custom object type defines the shape of a category of custom objects,
including the custom fields its instances hold. Returns the type with
its custom fields.1 param
Fetch a custom object type by ID. A custom object type defines the shape of a category of custom objects, including the custom fields its instances hold. Returns the type with its custom fields.
idstringrequiredID of the custom object type to fetch.closemcp_fetch_email_template#Fetch an email template by ID.
Returns the complete email template with all its details.1 param
Fetch an email template by ID. Returns the complete email template with all its details.
idstringrequiredID of the email template to fetchclosemcp_fetch_lead#Fetch an existing lead (company) by ID.1 param
Fetch an existing lead (company) by ID.
idstringrequiredID of the lead to fetchclosemcp_fetch_lead_smart_view#Fetch a lead smart view (saved search) by ID.1 param
Fetch a lead smart view (saved search) by ID.
idstringrequiredID of the lead smart view to fetchclosemcp_fetch_lead_status#Fetch a lead status by ID.1 param
Fetch a lead status by ID.
idstringrequiredID of the lead status to fetchclosemcp_fetch_note#Fetch an existing note by ID.
Returns the full note details including title, text, and metadata.1 param
Fetch an existing note by ID. Returns the full note details including title, text, and metadata.
idstringrequiredID of the note to fetchclosemcp_fetch_opportunity#Fetch a specific opportunity by ID.
Returns the complete opportunity with all its details.1 param
Fetch a specific opportunity by ID. Returns the complete opportunity with all its details.
idstringrequiredID of the opportunity to fetchclosemcp_fetch_opportunity_status#Fetch an opportunity status by ID.1 param
Fetch an opportunity status by ID.
idstringrequiredID of the opportunity status to fetchclosemcp_fetch_pipeline_and_opportunity_statuses#Fetch an opportunity pipeline, including its opportunity statuses, by ID.1 param
Fetch an opportunity pipeline, including its opportunity statuses, by ID.
idstringrequiredID of the pipeline to fetch.closemcp_fetch_sms_template#Fetch an SMS template by ID.
Returns the complete SMS template with all its details.1 param
Fetch an SMS template by ID. Returns the complete SMS template with all its details.
idstringrequiredID of the SMS template to fetchclosemcp_fetch_task#Fetch an existing task by ID.
Returns the task's details including the associated lead, contact,
assignee, due date, priority, and completion status.1 param
Fetch an existing task by ID. Returns the task's details including the associated lead, contact, assignee, due date, priority, and completion status.
idstringrequiredID of the task to fetchclosemcp_find_call_outcomes#List all outcomes applicable to calls available in the organization.0 params
List all outcomes applicable to calls available in the organization.
closemcp_find_contact_custom_fields#List all contact custom fields defined for the organization.
Includes both contact-specific fields and shared fields associated
with contacts. Returns each field's ID, name, description, type,
allowed choices (for choice fields), whether multiple values are
accepted, and whether it is a shared field. Useful for deciding which
custom field to read or write when working with contacts.0 params
List all contact custom fields defined for the organization. Includes both contact-specific fields and shared fields associated with contacts. Returns each field's ID, name, description, type, allowed choices (for choice fields), whether multiple values are accepted, and whether it is a shared field. Useful for deciding which custom field to read or write when working with contacts.
closemcp_find_custom_activities#List all active (non-archived) Custom Activity Types in the organization,
along with the custom fields defined on each type.
Call this before creating a workflow with a "custom-activity-event" trigger
so you can look up the correct Custom Activity Type ID.0 params
List all active (non-archived) Custom Activity Types in the organization, along with the custom fields defined on each type. Call this before creating a workflow with a "custom-activity-event" trigger so you can look up the correct Custom Activity Type ID.
closemcp_find_custom_activity_instances#Find a lead's custom activity instances based on various filters.
A custom activity instance is an activity of a custom activity type,
holding the custom field values defined by that type. Always scoped
to a single lead; optionally filter by attributed user, one or more
custom activity types, or activity date. Results are sorted by most
recent activity first and are cursor-paginated.5 params
Find a lead's custom activity instances based on various filters. A custom activity instance is an activity of a custom activity type, holding the custom field values defined by that type. Always scoped to a single lead; optionally filter by attributed user, one or more custom activity types, or activity date. Results are sorted by most recent activity first and are cursor-paginated.
lead_idstringrequiredThe lead whose custom activity instances to findactivity_atstringoptionalFilter custom activity instances by their activity date rangecursorstringoptionalPagination cursor for retrieving the next pagecustom_activity_type_idsstringoptionalFilter by the custom activity types the instances belong to. Provide one or more type IDs to match instances of any of them.user_idstringoptionalFilter custom activity instances by the user they are attributed to (their owner)closemcp_find_custom_object_types#List all custom object types in the organization, along with the
custom fields defined on each type.0 params
List all custom object types in the organization, along with the custom fields defined on each type.
closemcp_find_email_templates#List or find email templates3 params
List or find email templates
cursorstringoptionalPagination cursor, give only when more results are requested.name_searchstringoptionalTemplate name case-insensitive contains searchstatusstringoptionalUse all to return all except archived.closemcp_find_forms#List all web forms in the organization.
Call this before creating a workflow with a "form-submission-event" trigger
so you can look up the correct Form ID.0 params
List all web forms in the organization. Call this before creating a workflow with a "form-submission-event" trigger so you can look up the correct Form ID.
closemcp_find_groups#List all groups in the organization.0 params
List all groups in the organization.
closemcp_find_lead_custom_fields#List all lead custom fields defined for the organization.
Returns each field's ID, name, description, type, allowed choices
(for choice fields), whether multiple values are accepted, and whether
it is a shared field. Useful for deciding which custom field to read
or write when working with leads.0 params
List all lead custom fields defined for the organization. Returns each field's ID, name, description, type, allowed choices (for choice fields), whether multiple values are accepted, and whether it is a shared field. Useful for deciding which custom field to read or write when working with leads.
closemcp_find_lead_smart_views#List lead smart views (saved searches).3 params
List lead smart views (saved searches).
cursorstringoptionalPagination cursor, give only when more results are requested.filterstringoptionalFilter to show only pinned smart views (those shown in the sidebar), or all available smart views. When the user asks about smart views you should filter for pinned smart views unless the user is requesting to see all views or searches by name.name_searchstringoptionalSmart view name case-insensitive contains search. When using name search you should filter by all smart views.closemcp_find_lead_statuses#List or find lead statuses for the organization0 params
List or find lead statuses for the organization
closemcp_find_meeting_outcomes#List all outcomes applicable to meetings available in the organization.0 params
List all outcomes applicable to meetings available in the organization.
closemcp_find_notes#Find notes based on various filters.6 params
Find notes based on various filters.
activity_atstringoptionalFilter notes by activity date rangecontact_idstringoptionalFilter notes by associated contact IDcursorstringoptionalPagination cursor for retrieving the next pagedate_createdstringoptionalFilter notes by creation date rangelead_idstringoptionalFilter notes by lead IDuser_idstringoptionalFilter notes by the user who created themclosemcp_find_opportunities#Find opportunities by status (active/won/lost), owner, lead, or close-date range, optionally only those needing attention, sorted by soonest close, largest value, or highest confidence. Returns each opportunity with resolved lead, contact, owner, and status names; cursor-paginated.11 params
Find opportunities by status (active/won/lost), owner, lead, or close-date range, optionally only those needing attention, sorted by soonest close, largest value, or highest confidence. Returns each opportunity with resolved lead, contact, owner, and status names; cursor-paginated.
close_atstringoptionalFilter opportunities by expected close date rangecreated_atstringoptionalFilter by opportunity creation date rangecursorstringoptionalPagination cursor, give only when more results are requested.lead_idstringoptionalFilter by the ID of the lead the opportunities belong tolead_view_idstringoptionalFilter by a lead smart view IDneeds_attentionstringoptionalFilter by opportunities that may be stalled and need attention. To see why an opportunity is stalled, direct the user to the opportunities pipeline page.sort_bystringoptionalSort order: 'closing_soonest', 'largest_value', or 'largest_confidence'status_idsstringoptionalFilter by specific opportunity status IDsstatus_typestringoptionalFilter by status type: 'won', 'lost', or 'active'updated_atstringoptionalFilter by opportunity last updated date rangeuser_idsstringoptionalFilter by owner user IDsclosemcp_find_opportunity_custom_fields#List all opportunity custom fields defined for the organization.
Includes both opportunity-specific fields and shared fields associated
with opportunities. Returns each field's ID, name, description, type,
allowed choices (for choice fields), whether multiple values are
accepted, and whether it is a shared field. Useful for deciding which
custom field to read or write when working with opportunities.0 params
List all opportunity custom fields defined for the organization. Includes both opportunity-specific fields and shared fields associated with opportunities. Returns each field's ID, name, description, type, allowed choices (for choice fields), whether multiple values are accepted, and whether it is a shared field. Useful for deciding which custom field to read or write when working with opportunities.
closemcp_find_pipelines_and_opportunity_statuses#List all opportunity pipelines and their opportunity statuses in the organization.0 params
List all opportunity pipelines and their opportunity statuses in the organization.
closemcp_find_scheduling_links#List available scheduling links for the user and org.
User-owned personal links come with a URL. Shared links come with a special
template tag. Each can be inserted into generated templates.2 params
List available scheduling links for the user and org. User-owned personal links come with a URL. Shared links come with a special template tag. Each can be inserted into generated templates.
cursorstringoptionalPagination cursor. Give only when more results are desired.name_searchstringoptionalScheduling Link name. Case-insensitive substring search.closemcp_find_sms_templates#List or find SMS templates3 params
List or find SMS templates
cursorstringoptionalPagination cursor, give only when more results are requested.name_searchstringoptionalTemplate name case-insensitive contains searchstatusstringoptionalUse all to return all except archived.closemcp_find_tasks#Find tasks based on various filters.
You can filter by lead, assignee, completion state, and due/created/
updated dates.7 params
Find tasks based on various filters. You can filter by lead, assignee, completion state, and due/created/ updated dates.
assigned_tostringoptionalFilter by the ID of the user the task is assigned tocreated_atstringoptionalFilter by task creation date rangecursorstringoptionalPagination cursor, give only when more results are requested.due_datestringoptionalFilter by task due date rangeis_completestringoptionalFilter by completion status. If not provided, both complete and incomplete tasks are returned.lead_idstringoptionalFilter by lead IDupdated_atstringoptionalFilter by task last updated date rangeclosemcp_find_voice_agents#List all voice agents configured for the organization. Voice agents are
AI callers that place outbound calls to leads' contacts on the user's
behalf.
Returns each voice agent's ID and name. Use this to find the right
voice agent ID when scheduling a call or assigning a call step in a
workflow.
Users may refer to voice agents as "voice agents", "Chloe", or by their
configured name. When more than one agent exists, pick the most
appropriate one based on the name.0 params
List all voice agents configured for the organization. Voice agents are AI callers that place outbound calls to leads' contacts on the user's behalf. Returns each voice agent's ID and name. Use this to find the right voice agent ID when scheduling a call or assigning a call step in a workflow. Users may refer to voice agents as "voice agents", "Chloe", or by their configured name. When more than one agent exists, pick the most appropriate one based on the name.
closemcp_find_workflows#List or find workflows3 params
List or find workflows
cursorstringoptionalPagination cursor. Provide only when more results are requested from a previous response.name_searchstringoptionalWorkflow name case-insensitive contains search. Returns workflows whose name contains this string.statusstringoptionalFilter workflows by status. Use 'all' to return all workflows regardless of status.closemcp_get_fields#Use this field ONLY to get a list of fields for the aggregation tool.0 params
Use this field ONLY to get a list of fields for the aggregation tool.
closemcp_get_voice_agent_overview_report#Cross-agent rollup for the Voice Agents list page.
Returns one row per active agent — agents with completed calls
in `date_range` or queued upcoming calls. Cumulative funnel
counts (`answered`, `engaged`, `objective_met`) plus `total_calls`.
`upcoming_calls` is the agent's queued (not yet completed) calls and
is not bound by `date_range` — open tasks are open regardless of
when scheduled (so an agent with only upcoming calls still appears).
Use this to compare agents;
for one agent's outcomes, sentiment, or time saved use
`get_voice_agent_performance_report`. For an inventory of all
configured voice agents regardless of activity, use
`find_agent_configs`.
The Voice Agents list (Agents tab) shows all-time stats, so leave
`date_range` at its default (`all_time`) unless the user asks for a
specific window. (The Upcoming and Recent tabs are call lists, not
this rollup — search Calls for those.)
Rows are sorted server-side per the `sort` field (default
`most_calls`); pass a different mode rather than re-sorting in
your reply. Set `reverse=True` to invert (e.g. `sort=most_calls,
reverse=True` for least active first) — necessary to surface the
bottom of the ordering, since `rows` are capped before they reach
you. `truncated` and `total_agent_count` flag in-scope active
agents; `dormant_agent_count` reports in-scope agents with
neither completed calls in the date range nor queued
upcoming calls (not included in `rows`).4 params
Cross-agent rollup for the Voice Agents list page. Returns one row per active agent — agents with completed calls in `date_range` or queued upcoming calls. Cumulative funnel counts (`answered`, `engaged`, `objective_met`) plus `total_calls`. `upcoming_calls` is the agent's queued (not yet completed) calls and is not bound by `date_range` — open tasks are open regardless of when scheduled (so an agent with only upcoming calls still appears). Use this to compare agents; for one agent's outcomes, sentiment, or time saved use `get_voice_agent_performance_report`. For an inventory of all configured voice agents regardless of activity, use `find_agent_configs`. The Voice Agents list (Agents tab) shows all-time stats, so leave `date_range` at its default (`all_time`) unless the user asks for a specific window. (The Upcoming and Recent tabs are call lists, not this rollup — search Calls for those.) Rows are sorted server-side per the `sort` field (default `most_calls`); pass a different mode rather than re-sorting in your reply. Set `reverse=True` to invert (e.g. `sort=most_calls, reverse=True` for least active first) — necessary to surface the bottom of the ordering, since `rows` are capped before they reach you. `truncated` and `total_agent_count` flag in-scope active agents; `dormant_agent_count` reports in-scope agents with neither completed calls in the date range nor queued upcoming calls (not included in `rows`).
agent_config_idsstringoptionalOptional list of voice agent IDs to filter the report to. If omitted, all active agents are included.date_rangestringoptionalTime window for the report. Defaults to all_time.reversebooleanoptionalWhether to reverse the sort order. Set to true to invert (e.g. least active first when sort=most_calls).sortstringoptionalSort order for the rows. Defaults to most_calls.closemcp_get_voice_agent_performance_report#Performance metrics for one voice agent.
Returns the numbers shown on the Performance tab of a Voice Agent
detail page. Passing multiple `agent_config_ids` pools metrics
into a single aggregate (not a per-agent breakdown — for that,
use `get_voice_agent_overview_report`). For per-call drill-down,
search Calls filtered by `agent_config_id`.
When the user is on a Voice Agent page, pull `date_range` from
`page_context.date_range` so the numbers match the UI.
Percentages: `*_pct` is over `total_calls`;
`engaged_over_answered_pct` and `objective_met_over_answered_pct`
are over `answered` (tier-to-tier conversion). For any other
denominator, compute from `*_count`.
`funnel_previous_period_deltas` is null when the date range has
no defined previous period (e.g. `all_time`).2 params
Performance metrics for one voice agent. Returns the numbers shown on the Performance tab of a Voice Agent detail page. Passing multiple `agent_config_ids` pools metrics into a single aggregate (not a per-agent breakdown — for that, use `get_voice_agent_overview_report`). For per-call drill-down, search Calls filtered by `agent_config_id`. When the user is on a Voice Agent page, pull `date_range` from `page_context.date_range` so the numbers match the UI. Percentages: `*_pct` is over `total_calls`; `engaged_over_answered_pct` and `objective_met_over_answered_pct` are over `answered` (tier-to-tier conversion). For any other denominator, compute from `*_count`. `funnel_previous_period_deltas` is null when the date range has no defined previous period (e.g. `all_time`).
agent_config_idsarrayrequiredIDs of the voice agents to get performance metrics for. Use `find_voice_agents` to discover available agent IDs.date_rangestringoptionalTime window for the report. Defaults to all_time.closemcp_get_voice_agents#Return detailed configuration for one or more voice agents.
Includes each agent's objective, user instructions, and which skills are
enabled. Use this as the follow-up to `find_voice_agents` once one or
more agent IDs have been selected.1 param
Return detailed configuration for one or more voice agents. Includes each agent's objective, user instructions, and which skills are enabled. Use this as the follow-up to `find_voice_agents` once one or more agent IDs have been selected.
agent_config_idsarrayrequiredIDs of the voice agents (AgentConfig) to fetch details for. Up to 30 IDs per call. Use `find_voice_agents` to discover available agent IDs.closemcp_lead_search#Perform a simple lead search and return the initial set of results.
Use this to retrieve all leads, most recent leads, search leads by
keyword, or filter by lead status and smart view. For more complex
searches use the `search` tool instead.
Leads will be returned by last updated first.4 params
Perform a simple lead search and return the initial set of results. Use this to retrieve all leads, most recent leads, search leads by keyword, or filter by lead status and smart view. For more complex searches use the `search` tool instead. Leads will be returned by last updated first.
full_textstringoptionalFull text search across lead datalead_status_idstringoptionalFilter by lead status IDnamestringoptionalSearch lead name or contact namesmart_view_idstringoptionalFilter by smart view ID (saved search)closemcp_org_info#Get information about the Close organization including organization ID, name, and other org-level details.0 params
Get information about the Close organization including organization ID, name, and other org-level details.
closemcp_org_users#Return active users (memberships) which are part of the current org.0 params
Return active users (memberships) which are part of the current org.
closemcp_paginate_search#Paginate a search to retrieve more results.
Provide exactly one of:
- `search_id`: a `share_*` id from a previous search or shared entry, or
- `smart_view_id`: a `save_*` Smart View (saved search) id the user is
viewing.3 params
Paginate a search to retrieve more results. Provide exactly one of: - `search_id`: a `share_*` id from a previous search or shared entry, or - `smart_view_id`: a `save_*` Smart View (saved search) id the user is viewing.
cursorstringoptionalPagination cursor from a previous search responsesearch_idstringoptionalShared-entry/search id (share_*) to paginate. Provide exactly one of search_id or smart_view_id.smart_view_idstringoptionalSmart View (saved search) id (save_*) to paginate. Provide exactly one of search_id or smart_view_id.closemcp_propose_voice_agent_update#Propose a voice agent configuration update from natural-language feedback.
This tool does not apply changes to the voice agent. It returns a short
behavioral summary and proposal ID when the requested edit is clear. If the
feedback is ambiguous, it returns clarification questions instead of making
a proposal. Use apply_voice_agent_update with the proposal ID only after
the user approves the proposal.3 params
Propose a voice agent configuration update from natural-language feedback. This tool does not apply changes to the voice agent. It returns a short behavioral summary and proposal ID when the requested edit is clear. If the feedback is ambiguous, it returns clarification questions instead of making a proposal. Use apply_voice_agent_update with the proposal ID only after the user approves the proposal.
agent_config_idstringrequiredID of the voice agent to update.feedbackstringrequiredNatural-language feedback describing how the voice agent should change.proposal_idstringoptionalExisting proposal ID to refine. Omit when creating a new proposal.closemcp_schedule_voice_agent_call#Schedule a voice agent to call a lead's contact.
Creates a call task assigned to the voice agent. The voice agent will
place the call automatically at the scheduled time, or as soon as the
queue picks it up when no time is given.
Use `find_voice_agents` first to discover which voice agents are
available in this organization.4 params
Schedule a voice agent to call a lead's contact. Creates a call task assigned to the voice agent. The voice agent will place the call automatically at the scheduled time, or as soon as the queue picks it up when no time is given. Use `find_voice_agents` first to discover which voice agents are available in this organization.
agent_config_idstringrequiredID of the voice agent (AgentConfig) that should make the call. Use `find_voice_agents` to discover available agents.lead_idstringrequiredID of the lead to call.contact_idstringoptionalOptional contact to call. If omitted, the first contact on the lead that has a phone number will be selected.scheduled_atstringoptionalWhen the call should be made. ISO 8601 datetime, timezone-aware. If omitted, the call is scheduled to run as soon as the voice agent queue picks it up (ASAP).closemcp_search#Perform a natural language search for leads or contacts.
If a more specific search tool (like lead_search or activity_search)
satisfies the request, use that tool instead.
You can reference related objects like activities (such as calls, emails,
meetings, notes, custom activities, etc.), opportunities, tasks as long as
they are part of a lead query.
Example queries:
- leads not contacted in the past week
- leads assigned to me with uncompleted tasks
- leads with an active opportunity over $500
- contacts with CTO title
Each returned result will contain a title label, preview text, object ID,
and URL.
The initial set of results, total count of all results, and a URL to open
the results in Close is returned. To retrieve more results, use the
returned cursor and call the paginate_search tool using the cursor and
search ID returned in this response.1 param
Perform a natural language search for leads or contacts. If a more specific search tool (like lead_search or activity_search) satisfies the request, use that tool instead. You can reference related objects like activities (such as calls, emails, meetings, notes, custom activities, etc.), opportunities, tasks as long as they are part of a lead query. Example queries: - leads not contacted in the past week - leads assigned to me with uncompleted tasks - leads with an active opportunity over $500 - contacts with CTO title Each returned result will contain a title label, preview text, object ID, and URL. The initial set of results, total count of all results, and a URL to open the results in Close is returned. To retrieve more results, use the returned cursor and call the paginate_search tool using the cursor and search ID returned in this response.
querystringrequiredNatural language search query. For example: 'leads not contacted in the past week', 'leads with an active opportunity over $500', or 'contacts with CTO title'.closemcp_update_contact#Update an existing contact.
You can update a contact's name, title, email addresses, phone numbers, and URLs.
Only fields that are provided will be updated.7 params
Update an existing contact. You can update a contact's name, title, email addresses, phone numbers, and URLs. Only fields that are provided will be updated.
idstringrequiredID of the contact to updatecustom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.emailsstringoptionalWhen providing this field, you must provide the full updated list of email addresses for the contact.namestringoptionalName of the contactphonesstringoptionalWhen providing this field, you must provide the full updated list of phone numbers for the contact.titlestringoptionalJob title of the contacturlsstringoptionalWhen providing this field, you must provide the full updated list of URLs for the contact.closemcp_update_custom_activity_instance#Update an existing custom activity instance.
A custom activity instance is an activity of a custom activity type,
holding the custom field values defined by that type.
Only fields that are provided will be updated. For custom fields, only
the custom fields included are modified; pass null to clear one. Pass
'clear' for contact_id to detach the contact.6 params
Update an existing custom activity instance. A custom activity instance is an activity of a custom activity type, holding the custom field values defined by that type. Only fields that are provided will be updated. For custom fields, only the custom fields included are modified; pass null to clear one. Pass 'clear' for contact_id to detach the contact.
idstringrequiredID of the custom activity instance to updateactivity_atstringoptionalWhen the custom activity occurredcontact_idstringoptionalID of the contact to associate with the custom activity; must belong to the same lead. Pass 'clear' to remove the existing contact.custom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.pinnedstringoptionalWhether to pin the custom activity to the top of the lead's timelinestatusstringoptionalNew status of the custom activity. Publishing a draft validates required custom fields; leave unset to keep the current status.closemcp_update_email_template#Update an existing email template.
Only fields that are provided and not None will be updated.
Handling of attachments and unsubscribe links via this tool is currently unsupported.
Email template body should be HTML formatted.
Use template tags as placeholders, for example:
{{ organization.name }} to refer to the sender's organization name.
{{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the email.
{{ lead.display_name }} to refer to the lead name (recipient's name/company).
{{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.8 params
Update an existing email template. Only fields that are provided and not None will be updated. Handling of attachments and unsubscribe links via this tool is currently unsupported. Email template body should be HTML formatted. Use template tags as placeholders, for example: {{ organization.name }} to refer to the sender's organization name. {{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the email. {{ lead.display_name }} to refer to the lead name (recipient's name/company). {{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.
idstringrequiredID of the email template to updatebccstringoptionalList of BCC email addressesbodystringoptionalHTML body of the email template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}ccstringoptionalList of CC email addressesis_archivedstringoptionalWhether to archive this templateis_sharedstringoptionalWhether to share this template with the organization (required for use in workflows)namestringoptionalNew name for the email templatesubjectstringoptionalNew subject line for the email templateclosemcp_update_lead#Update an existing lead (company).
Only fields that are provided and not None will be updated.6 params
Update an existing lead (company). Only fields that are provided and not None will be updated.
idstringrequiredID of the lead to updatecustom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.descriptionstringoptionalDescription of the leadnamestringoptionalName of the leadstatus_idstringoptionalID of the lead status. Use find_lead_statuses to look up valid status IDs.urlstringoptionalURL of the lead's websiteclosemcp_update_lead_smart_view#Update a lead smart view (saved search).
Only fields that are provided and not None will be updated.3 params
Update a lead smart view (saved search). Only fields that are provided and not None will be updated.
idstringrequiredID of the lead smart view to updatedescriptionstringoptionalNew description for the smart viewnamestringoptionalNew name for the smart viewclosemcp_update_lead_status#Update the label of an existing lead status.2 params
Update the label of an existing lead status.
idstringrequiredID of the lead status to updatelabelstringrequiredNew label for the lead statusclosemcp_update_note#Update an existing note.
Only fields that are provided will be updated. Note content is
provided as rich text (HTML) via note_html; the plaintext note is
automatically derived.6 params
Update an existing note. Only fields that are provided will be updated. Note content is provided as rich text (HTML) via note_html; the plaintext note is automatically derived.
idstringrequiredID of the note to updateactivity_atstringoptionalWhen the note activity occurred (ISO 8601 date-time)contact_idstringoptionalID of the contact to associate with the note. Pass 'clear' to remove the existing contact.note_htmlstringoptionalUpdated note content as Close rich text (HTML). Must be a valid Close rich-text document: wrap the whole content in a single <body> tag and put each line/paragraph in a block-level tag. Supported tags include <p>, <h1>-<h6>, <ul>/<ol> with <li>, <blockquote>, <hr>, <a href=...>, <br>, and inline formatting <strong>/<b>, <em>/<i>, <u>, <s>, <code>, <span>. Escape literal ampersands as '&'. Example: <body><p>Spoke with <strong>Jane</strong> about pricing.</p><ul><li>Wants a demo</li><li>Budget approved</li></ul></body>pinnedstringoptionalWhether to pin the note to the top of the leadtitlestringoptionalTitle of the note. Pass an empty string to remove the existing title.closemcp_update_opportunity#Update an existing opportunity.
Only fields that are provided will be updated. The value should be specified in cents (e.g., $100.00 = 10000). Pass 'clear' for value or close_at to remove those values.11 params
Update an existing opportunity. Only fields that are provided will be updated. The value should be specified in cents (e.g., $100.00 = 10000). Pass 'clear' for value or close_at to remove those values.
idstringrequiredID of the opportunity to updateclose_atstringoptionalExpected close date in ISO 8601 format. Pass 'clear' to remove an existing date.confidencestringoptionalConfidence percentage (0-100) that the opportunity will closecontact_idstringoptionalID of the primary contact for this opportunitycustom_fieldsarrayoptionalCustom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.notestringoptionalPlaintext version of the notenote_htmlstringoptionalRich-text HTML version of the note, wrapped in `<body>...</body>`. When set, `note` is automatically derived from it.status_idstringoptionalID of the opportunity status. Use find_pipelines_and_opportunity_statuses to list valid IDs.user_idstringoptionalID of the user assigned to this opportunityvaluestringoptionalMonetary value of the opportunity in cents. Pass 'clear' to remove an existing value.value_periodstringoptionalRecurrence period for the value: 'one_time', 'monthly', or 'annual'closemcp_update_opportunity_status_tool#Update the label of an existing opportunity status.2 params
Update the label of an existing opportunity status.
idstringrequiredID of the opportunity status to updatelabelstringrequiredNew label for the opportunity statusclosemcp_update_pipeline#Update an existing opportunity pipeline.
Only fields that are provided will be updated.2 params
Update an existing opportunity pipeline. Only fields that are provided will be updated.
idstringrequiredID of the pipeline to updatenamestringoptionalNew name for the pipelineclosemcp_update_sms_template#Update an existing SMS template.
Only fields that are provided will be updated. Fields that are not provided will remain unchanged.
Handling of attachments via this tool is currently unsupported.
Use template tags as placeholders, for example:
{{ organization.name }} to refer to the sender's organization name.
{{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the message.
{{ lead.display_name }} to refer to the lead name (recipient's name/company).
{{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.5 params
Update an existing SMS template. Only fields that are provided will be updated. Fields that are not provided will remain unchanged. Handling of attachments via this tool is currently unsupported. Use template tags as placeholders, for example: {{ organization.name }} to refer to the sender's organization name. {{ user.first_name }} {{ user.last_name }} {{ user.email }} {{ user.phone }} to refer to the user sending the message. {{ lead.display_name }} to refer to the lead name (recipient's name/company). {{ contact.first_name }} {{ contact.last_name }} to refer to the recipient.
idstringrequiredID of the SMS template to updateis_archivedstringoptionalWhether to archive this templateis_sharedstringoptionalWhether to share this template with the organization (required for use in workflows)namestringoptionalNew name for the SMS templatetextstringoptionalNew text content for the SMS template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}closemcp_update_task#Update an existing task.
Only fields that are provided will be updated. Pass 'clear' for
contact_id or due_date to clear those values.7 params
Update an existing task. Only fields that are provided will be updated. Pass 'clear' for contact_id or due_date to clear those values.
idstringrequiredID of the task to updateassigned_tostringoptionalID of the user to assign the task to. Tasks must always have an assignee, so this cannot be cleared.contact_idstringoptionalID of the contact associated with this task. Must belong to the task's lead. Pass 'clear' to remove the existing contact.due_datestringoptionalDue date or datetime for the task. Can be a date (YYYY-MM-DD) or datetime (ISO 8601). Pass 'clear' to make the task dateless (due immediately).is_completestringoptionalMark the task as complete (true) or reopen it (false).prioritystringoptionalTask priority: 'high' or 'medium'. Only set to 'high' if the user explicitly says it's a high priority task.textstringoptionalUpdated task description. Cannot be blank.