Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Close MCP connector

OAuth 2.1 CRM & SalesCommunication

Close 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

  1. Terminal window
    npm install @scalekit-sdk/node

    Full SDK reference: Node.js | Python

  2. Add your Scalekit credentials to your .env file. 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>
  3. Register your Close MCP credentials with Scalekit so it handles the token lifecycle. You do this once per environment.

    Dashboard setup steps

    Register your Firecrawl API key with Scalekit so it can authenticate and proxy scraping requests on behalf of your users. Close MCP uses API key authentication — there is no redirect URI or OAuth flow.

    1. Get a Firecrawl API key

      • Go to firecrawl.dev and sign in or create a free account.
      • Your API key is shown on the Overview page under API Key. Copy it — it starts with fc-.
    2. Create a connection in Scalekit

      • In the Scalekit dashboard, go to AgentKitConnectionsCreate Connection.
      • Search for Close MCP and click Create.
      • Note the Connection name — use this as connection_name in your code (e.g., closemcp).
    3. Add a connected account

      Connected accounts link a specific user identifier in your system to a Firecrawl API key. Add them via the dashboard for testing, or via the Scalekit API in production.

      Via dashboard (for testing)

      • Open the connection and click the Connected Accounts tab → Add account.
      • Fill in Your User’s ID and API Key, then click Save.

      Via API (for production)

      await scalekit.actions.upsertConnectedAccount({
      connectionName: 'closemcp',
      identifier: 'user_123',
      credentials: { token: 'fc-...' },
      });
  4. 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.actions
    const connector = 'closemcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { 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 call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'closemcp_activity_search',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Search activity, close product knowledge, lead — Search for activities

  • Aggregation records — 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

  • Update apply voice agent, propose voice agent, contact — Apply a previously proposed voice agent update
  • Create address, call task, comment — Add a new address to an existing lead (company)
  • Delete address, contact, custom activity instance — Delete an address from an existing lead (company) if there is an exact match
  • Field enrich — Use AI to determine and set the value of a field on a lead or contact

Scrape a page

Use closemcp_firecrawl_scrape to extract clean markdown content from any URL.

const result = await actions.executeTool({
connectionName: 'closemcp',
identifier: 'user_123',
toolName: 'closemcp_firecrawl_scrape',
toolInput: {
url: 'https://docs.example.com/getting-started',
onlyMainContent: true,
},
});
console.log(result.data);

Search the web

Use closemcp_firecrawl_search to run a live web search and get scraped content from the top results.

const result = await actions.executeTool({
connectionName: 'closemcp',
identifier: 'user_123',
toolName: 'closemcp_firecrawl_search',
toolInput: {
query: 'best practices for API rate limiting 2026',
limit: 5,
},
});
console.log(result.data);

Extract structured data from a URL

Use closemcp_firecrawl_extract with a natural-language prompt and optional JSON Schema to pull structured data from one or more pages.

const result = await actions.executeTool({
connectionName: 'closemcp',
identifier: 'user_123',
toolName: 'closemcp_firecrawl_extract',
toolInput: {
urls: ['https://example.com/pricing'],
prompt: 'Extract all pricing plan names and their monthly costs.',
},
});
console.log(result.data);

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_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.

Name Type Required Description
include_types array required Object 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.
aggregations string optional Aggregation 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_mode string optional How to display the aggregation results. Determined automatically by default.
group_by string optional Reference or enum fields to group by (maximum 2). Use field names returned by the get_fields tool.
interval string optional Interval to aggregate by when using date fields. Determined automatically by default.
time_buckets string optional Time 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.

Name Type Required Description
proposal_id string required Proposal ID returned by propose_voice_agent_update.
closemcp_create_address # Add a new address to an existing lead (company). 8 params

Add a new address to an existing lead (company).

Name Type Required Description
address_1 string required Address line 1 (street address)
city string required City
country string required Country code in ISO 3166-1 alpha-2 format (e.g. US, GB, DE)
label string required Label for the address. One of: business, mailing, other.
lead_id string required ID of the lead to add the address to
state string required State or province
zipcode string required ZIP or postal code
address_2 string optional Address 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.

Name Type Required Description
contact_id string required ID of the contact to call. Must belong to the specified lead.
lead_id string required ID of the lead this call task belongs to
agent_config_id string optional ID of the voice agent (Chloe) to dispatch the call task to. Mutually exclusive with assigned_to.
assigned_to string optional ID of the user to assign the call task to. Mutually exclusive with agent_config_id.
due_date string optional Due 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.
text string optional The 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.

Name Type Required Description
body string required Body 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 '&amp;' and literal '<' as '&lt;' 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_id string required ID 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).

Name Type Required Description
lead_id string required ID of the lead this contact belongs to
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
emails string optional List of email addresses for the contact. Each entry needs a type (office, mobile, home, direct, fax, url, other) and an email address.
name string optional Full name of the contact
phones string optional List 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).
title string optional Job title of the contact (e.g. CEO, VP of Sales)
urls string optional List 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.

Name Type Required Description
custom_activity_type_id string required ID of the custom activity type. Use the find_custom_activities tool to look up the available custom activity types.
lead_id string required ID of the lead this custom activity belongs to
activity_at string optional When the custom activity occurred
contact_id string optional ID of the contact to associate with the custom activity
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
date_created string optional When the custom activity was created. Defaults to now; set this to backfill an activity at a past time.
pinned boolean optional Whether to pin the custom activity to the top of the lead's timeline
status string optional Status of the custom activity. Published activities validate required custom fields; draft activities do not.
user_id string optional ID 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.

Name Type Required Description
body string required HTML body of the email template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}
name string required Name of the email template
subject string required Subject line of the email template
bcc string optional List of BCC email addresses
cc string optional List of CC email addresses
is_shared boolean optional Share 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.

Name Type Required Description
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
description string optional Description of the lead
name string optional Name of the lead
status_id string optional ID of the lead status. Use find_lead_statuses to get available status IDs.
url string optional URL of the lead's website
closemcp_create_lead_status # Create a new lead status. 1 param

Create a new lead status.

Name Type Required Description
label string required Label for the lead status
closemcp_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.

Name Type Required Description
lead_id string required ID of the lead this note belongs to
activity_at string optional When the note activity occurred (ISO 8601 date-time)
contact_id string optional ID of the contact to associate with the note
note string optional Plaintext note content. At least one of note or note_html must be provided.
note_html string optional Rich-text (HTML) note content. At least one of note or note_html must be provided.
pinned string optional Whether to pin the note to the top of the lead
title string optional Title of the note
user_id string optional ID 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).

Name Type Required Description
lead_id string required ID of the lead this opportunity belongs to
status_id string required ID of the opportunity status. Use find_pipelines_and_opportunity_statuses to list valid IDs.
close_at string optional Expected close date in ISO 8601 format
confidence string optional Confidence percentage (0-100) that the opportunity will close
contact_id string optional ID of the primary contact for this opportunity
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
note string optional Plaintext note to attach to the opportunity
note_html string optional Rich-text HTML version of the note, wrapped in `<body>...</body>`. When set, `note` is automatically derived from it.
user_id string optional ID of the user assigned to this opportunity. Defaults to the current user.
value string optional Monetary value of the opportunity in cents (e.g., $100.00 = 10000)
value_period string optional Recurrence 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.

Name Type Required Description
label string required Label for the opportunity status
pipeline_id string required ID of the pipeline to add the status to
type string required Type 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.

Name Type Required Description
name string required Name 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.

Name Type Required Description
name string required Name of the SMS template
text string required Text content of the SMS template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}
is_shared boolean optional Share 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.

Name Type Required Description
lead_id string required ID of the lead this task belongs to
text string required The task description
assigned_to string optional ID of the user to assign the task to. Defaults to the current user if not provided.
contact_id string optional ID of the contact associated with this task. Must belong to the specified lead.
due_date string optional Due 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.
priority string optional Task priority: 'high' or 'medium'. Defaults to 'medium'. Only set to high if the user explicitly says it's a high priority task.
send_notification boolean optional Send 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.

Name Type Required Description
name string required Workflow name. Must be unique within the organization.
steps array required Steps 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.
trigger string optional The 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.

Name Type Required Description
address_1 string required Address line 1 — must match exactly
city string required City — must match exactly
country string required Country code (ISO 3166-1 alpha-2) — must match exactly
label string required Label for the address (e.g. business, mailing, other)
lead_id string required ID of the lead to delete the address from
state string required State or province — must match exactly
zipcode string required ZIP or postal code — must match exactly
address_2 string optional Address line 2 — must match exactly if present
closemcp_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.

Name Type Required Description
id string required ID of the contact to delete
closemcp_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.

Name Type Required Description
id string required ID of the custom activity instance to delete
closemcp_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.

Name Type Required Description
id string required ID of the email template to delete
closemcp_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.

Name Type Required Description
id string required ID of the lead to delete
closemcp_delete_lead_smart_view # Permanently delete a lead smart view (saved search). 1 param

Permanently delete a lead smart view (saved search).

Name Type Required Description
id string required ID of the lead smart view to delete
closemcp_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.

Name Type Required Description
id string required ID of the lead status to delete
closemcp_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.

Name Type Required Description
id string required ID of the note to delete
closemcp_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.

Name Type Required Description
id string required ID of the opportunity to delete
closemcp_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.

Name Type Required Description
id string required ID of the opportunity status to delete
closemcp_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.

Name Type Required Description
id string required ID of the pipeline to delete
closemcp_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.

Name Type Required Description
id string required ID of the SMS template to delete
closemcp_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.

Name Type Required Description
id string required ID of the task to delete
closemcp_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.

Name Type Required Description
field_id string required The ID of the field to enrich. This may be a built-in field name or a custom field ID.
object_id string required The ID of the lead or contact to enrich (e.g. 'lead_xxx' or 'cont_xxx').
object_type string required The type of object whose field should be enriched.
overwrite_existing_value boolean optional Whether 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.

Name Type Required Description
id string required ID 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.

Name Type Required Description
id string required ID of the contact to fetch
closemcp_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.

Name Type Required Description
id string required ID of the custom activity instance to fetch
closemcp_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.

Name Type Required Description
id string required ID 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.

Name Type Required Description
id string required ID of the email template to fetch
closemcp_fetch_lead # Fetch an existing lead (company) by ID. 1 param

Fetch an existing lead (company) by ID.

Name Type Required Description
id string required ID of the lead to fetch
closemcp_fetch_lead_smart_view # Fetch a lead smart view (saved search) by ID. 1 param

Fetch a lead smart view (saved search) by ID.

Name Type Required Description
id string required ID of the lead smart view to fetch
closemcp_fetch_lead_status # Fetch a lead status by ID. 1 param

Fetch a lead status by ID.

Name Type Required Description
id string required ID of the lead status to fetch
closemcp_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.

Name Type Required Description
id string required ID of the note to fetch
closemcp_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.

Name Type Required Description
id string required ID of the opportunity to fetch
closemcp_fetch_opportunity_status # Fetch an opportunity status by ID. 1 param

Fetch an opportunity status by ID.

Name Type Required Description
id string required ID of the opportunity status to fetch
closemcp_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.

Name Type Required Description
id string required ID 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.

Name Type Required Description
id string required ID of the SMS template to fetch
closemcp_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.

Name Type Required Description
id string required ID of the task to fetch
closemcp_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.

Name Type Required Description
lead_id string required The lead whose custom activity instances to find
activity_at string optional Filter custom activity instances by their activity date range
cursor string optional Pagination cursor for retrieving the next page
custom_activity_type_ids string optional Filter by the custom activity types the instances belong to. Provide one or more type IDs to match instances of any of them.
user_id string optional Filter 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 templates 3 params

List or find email templates

Name Type Required Description
cursor string optional Pagination cursor, give only when more results are requested.
name_search string optional Template name case-insensitive contains search
status string optional Use 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).

Name Type Required Description
cursor string optional Pagination cursor, give only when more results are requested.
filter string optional Filter 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_search string optional Smart 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 organization 0 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.

Name Type Required Description
activity_at string optional Filter notes by activity date range
contact_id string optional Filter notes by associated contact ID
cursor string optional Pagination cursor for retrieving the next page
date_created string optional Filter notes by creation date range
lead_id string optional Filter notes by lead ID
user_id string optional Filter notes by the user who created them
closemcp_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.

Name Type Required Description
close_at string optional Filter opportunities by expected close date range
created_at string optional Filter by opportunity creation date range
cursor string optional Pagination cursor, give only when more results are requested.
lead_id string optional Filter by the ID of the lead the opportunities belong to
lead_view_id string optional Filter by a lead smart view ID
needs_attention string optional Filter 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_by string optional Sort order: 'closing_soonest', 'largest_value', or 'largest_confidence'
status_ids string optional Filter by specific opportunity status IDs
status_type string optional Filter by status type: 'won', 'lost', or 'active'
updated_at string optional Filter by opportunity last updated date range
user_ids string optional Filter by owner user IDs
closemcp_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_sms_templates # List or find SMS templates 3 params

List or find SMS templates

Name Type Required Description
cursor string optional Pagination cursor, give only when more results are requested.
name_search string optional Template name case-insensitive contains search
status string optional Use 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.

Name Type Required Description
assigned_to string optional Filter by the ID of the user the task is assigned to
created_at string optional Filter by task creation date range
cursor string optional Pagination cursor, give only when more results are requested.
due_date string optional Filter by task due date range
is_complete string optional Filter by completion status. If not provided, both complete and incomplete tasks are returned.
lead_id string optional Filter by lead ID
updated_at string optional Filter by task last updated date range
closemcp_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 workflows 3 params

List or find workflows

Name Type Required Description
cursor string optional Pagination cursor. Provide only when more results are requested from a previous response.
name_search string optional Workflow name case-insensitive contains search. Returns workflows whose name contains this string.
status string optional Filter 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`).

Name Type Required Description
agent_config_ids string optional Optional list of voice agent IDs to filter the report to. If omitted, all active agents are included.
date_range string optional Time window for the report. Defaults to all_time.
reverse boolean optional Whether to reverse the sort order. Set to true to invert (e.g. least active first when sort=most_calls).
sort string optional Sort 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`).

Name Type Required Description
agent_config_ids array required IDs of the voice agents to get performance metrics for. Use `find_voice_agents` to discover available agent IDs.
date_range string optional Time 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.

Name Type Required Description
agent_config_ids array required IDs 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_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_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.

Name Type Required Description
agent_config_id string required ID of the voice agent to update.
feedback string required Natural-language feedback describing how the voice agent should change.
proposal_id string optional Existing 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.

Name Type Required Description
agent_config_id string required ID of the voice agent (AgentConfig) that should make the call. Use `find_voice_agents` to discover available agents.
lead_id string required ID of the lead to call.
contact_id string optional Optional contact to call. If omitted, the first contact on the lead that has a phone number will be selected.
scheduled_at string optional When 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_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.

Name Type Required Description
id string required ID of the contact to update
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
emails string optional When providing this field, you must provide the full updated list of email addresses for the contact.
name string optional Name of the contact
phones string optional When providing this field, you must provide the full updated list of phone numbers for the contact.
title string optional Job title of the contact
urls string optional When 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.

Name Type Required Description
id string required ID of the custom activity instance to update
activity_at string optional When the custom activity occurred
contact_id string optional ID of the contact to associate with the custom activity; must belong to the same lead. Pass 'clear' to remove the existing contact.
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
pinned string optional Whether to pin the custom activity to the top of the lead's timeline
status string optional New 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.

Name Type Required Description
id string required ID of the email template to update
bcc string optional List of BCC email addresses
body string optional HTML body of the email template. Supports template tags like {{ organization.name }}, {{ user.first_name }}, {{ lead.display_name }}, {{ contact.first_name }}
cc string optional List of CC email addresses
is_archived string optional Whether to archive this template
is_shared string optional Whether to share this template with the organization (required for use in workflows)
name string optional New name for the email template
subject string optional New subject line for the email template
closemcp_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.

Name Type Required Description
id string required ID of the lead to update
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
description string optional Description of the lead
name string optional Name of the lead
status_id string optional ID of the lead status. Use find_lead_statuses to look up valid status IDs.
url string optional URL of the lead's website
closemcp_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.

Name Type Required Description
id string required ID of the lead smart view to update
description string optional New description for the smart view
name string optional New name for the smart view
closemcp_update_lead_status # Update the label of an existing lead status. 2 params

Update the label of an existing lead status.

Name Type Required Description
id string required ID of the lead status to update
label string required New label for the lead status
closemcp_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.

Name Type Required Description
id string required ID of the note to update
activity_at string optional When the note activity occurred (ISO 8601 date-time)
contact_id string optional ID of the contact to associate with the note. Pass 'clear' to remove the existing contact.
note_html string optional Updated 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 '&amp;'. Example: <body><p>Spoke with <strong>Jane</strong> about pricing.</p><ul><li>Wants a demo</li><li>Budget approved</li></ul></body>
pinned string optional Whether to pin the note to the top of the lead
title string optional Title 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.

Name Type Required Description
id string required ID of the opportunity to update
close_at string optional Expected close date in ISO 8601 format. Pass 'clear' to remove an existing date.
confidence string optional Confidence percentage (0-100) that the opportunity will close
contact_id string optional ID of the primary contact for this opportunity
custom_fields array optional Custom field values to set on this object. Only the custom fields included are modified; omitted fields are left unchanged.
note string optional Plaintext version of the note
note_html string optional Rich-text HTML version of the note, wrapped in `<body>...</body>`. When set, `note` is automatically derived from it.
status_id string optional ID of the opportunity status. Use find_pipelines_and_opportunity_statuses to list valid IDs.
user_id string optional ID of the user assigned to this opportunity
value string optional Monetary value of the opportunity in cents. Pass 'clear' to remove an existing value.
value_period string optional Recurrence 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.

Name Type Required Description
id string required ID of the opportunity status to update
label string required New label for the opportunity status
closemcp_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.

Name Type Required Description
id string required ID of the pipeline to update
name string optional New name for the pipeline
closemcp_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.

Name Type Required Description
id string required ID of the SMS template to update
is_archived string optional Whether to archive this template
is_shared string optional Whether to share this template with the organization (required for use in workflows)
name string optional New name for the SMS template
text string optional New 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.

Name Type Required Description
id string required ID of the task to update
assigned_to string optional ID of the user to assign the task to. Tasks must always have an assignee, so this cannot be cleared.
contact_id string optional ID of the contact associated with this task. Must belong to the task's lead. Pass 'clear' to remove the existing contact.
due_date string optional Due 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_complete string optional Mark the task as complete (true) or reopen it (false).
priority string optional Task priority: 'high' or 'medium'. Only set to 'high' if the user explicitly says it's a high priority task.
text string optional Updated task description. Cannot be blank.