Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Kit MCP connector

OAuth 2.1/DCRMarketingAutomation

Connect to Kit MCP. Manage email subscribers, sequences, broadcasts, tags, and forms for your email marketing workflows.

Kit 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. 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 = 'kitmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Kit 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: 'kitmcp_get_account',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Update tag, subscriber, snippet — Rename a tag by ID
  • Subscriber untag, tag — Remove a tag from a subscriber by subscriber ID and tag ID
  • Unsubscribe records — Cancel a subscriber’s subscription by subscriber ID
  • List webhooks, tags, tag subscribers — List all registered webhooks in the account
  • Get subscriber tags, subscriber stats, subscriber — Retrieve all tags applied to a specific subscriber, paginated
  • Subscribers filter, bulk untag, bulk tag — Search and filter subscribers by engagement events (opens, clicks, sends, deliveries) or sign-up date

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.

kitmcp_add_subscriber_to_form#Subscribe a single email address to a Kit form. Creates the subscriber if they do not exist; returns the subscriber record.4 params

Subscribe a single email address to a Kit form. Creates the subscriber if they do not exist; returns the subscriber record.

NameTypeRequiredDescription
email_addressstringrequiredSubscriber's email address (required)
form_idintegerrequiredThe form ID (required). Use list_forms to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_add_subscriber_to_sequence#Enroll a single subscriber (by email) into a Kit email sequence. Use list_sequences to find the sequence ID.4 params

Enroll a single subscriber (by email) into a Kit email sequence. Use list_sequences to find the sequence ID.

NameTypeRequiredDescription
email_addressstringrequiredSubscriber's email address (required)
sequence_idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_add_subscribers_to_form#Subscribe multiple existing subscribers to one or more forms in a single request. Batches over 100 are processed asynchronously.4 params

Subscribe multiple existing subscribers to one or more forms in a single request. Batches over 100 are processed asynchronously.

NameTypeRequiredDescription
additionsarrayrequiredForm subscriptions to create (required). Each item must include `form_id` and `subscriber_id`.
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_create_custom_fields#Create multiple custom subscriber fields in one request. Use list_custom_fields to view existing fields.4 params

Create multiple custom subscriber fields in one request. Use list_custom_fields to view existing fields.

NameTypeRequiredDescription
custom_fieldsarrayrequiredCustom field definitions to create (required). Each item must include `label`.
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_create_subscribers#Create or update multiple subscribers in one request. Batches over 100 are processed asynchronously.4 params

Create or update multiple subscribers in one request. Batches over 100 are processed asynchronously.

NameTypeRequiredDescription
subscribersarrayrequiredSubscribers to upsert (required). Each item must include `email_address`; `first_name` and `state` are optional.
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_create_tags#Create multiple tags in one request. Returns created tag records.4 params

Create multiple tags in one request. Returns created tag records.

NameTypeRequiredDescription
tagsarrayrequiredTags to create (required). Each item must include `name`.
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_tag_subscribers#Apply a tag to multiple subscribers in one request. Batches over 100 are processed asynchronously.4 params

Apply a tag to multiple subscribers in one request. Batches over 100 are processed asynchronously.

NameTypeRequiredDescription
taggingsarrayrequiredTag-subscriber pairs to apply (required). Each item must include `tag_id` (integer) and `subscriber_id` (integer).
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_untag_subscribers#Remove a tag from multiple subscribers in one request. Batches over 100 are processed asynchronously.4 params

Remove a tag from multiple subscribers in one request. Batches over 100 are processed asynchronously.

NameTypeRequiredDescription
taggingsarrayrequiredTag-subscriber pairs to remove (required). Each item must include `tag_id` (integer) and `subscriber_id` (integer).
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_bulk_update_subscriber_custom_field_values#Update custom field values for multiple subscribers in one request.4 params

Update custom field values for multiple subscribers in one request.

NameTypeRequiredDescription
custom_field_valuesarrayrequiredCustom field updates to apply (required). Each item must include `subscriber_id`, `subscriber_custom_field_id`, and `value`.
callback_urlstringoptionalURL to POST results to when the batch is processed asynchronously (batches > 100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_broadcast#Create a draft email broadcast in Kit. The broadcast is saved as a draft; scheduling and sending happen from the Kit UI.10 params

Create a draft email broadcast in Kit. The broadcast is saved as a draft; scheduling and sending happen from the Kit UI.

NameTypeRequiredDescription
contentstringrequiredEmail body content in HTML (required)
subjectstringrequiredEmail subject line (required)
allow_starting_pointbooleanoptionalSet to true when posting adapted content from a Starting-point template (in combination with `email_template_id` set to that template's id and `content` set to the adapted body). Required only for the Starting-point + content combination; omit otherwise.
descriptionstringoptionalInternal description for organizing broadcasts
email_template_idintegeroptionalEmail template ID. Use list_email_templates to find IDs.
preview_textstringoptionalPreview text shown in email clients
publicbooleanoptionalWhether to publish on the creator's profile page
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
subscriber_filterarrayoptionalTarget audience filter. A single-element array wrapping one filter group (all/any/none). Example: [{ "all": [{ "type": "tag", "ids": [1, 2] }] }]. Only one filter group (all, any, or none) may be populated per request. Filter types allowed: 'tag' or 'segment'. Omit to target all subscribers.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_custom_field#Create a new custom subscriber field. Returns the created field record with its key.3 params

Create a new custom subscriber field. Returns the created field record with its key.

NameTypeRequiredDescription
labelstringrequiredField label (required), e.g. 'Company' or 'Website'
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_sequence#Create a new email sequence. Returns the sequence record including its ID.9 params

Create a new email sequence. Returns the sequence record including its ID.

NameTypeRequiredDescription
namestringrequiredSequence name (required)
email_addressstringoptionalFrom email address to use for this sequence
email_template_idintegeroptionalEmail template ID. Use list_email_templates to find IDs.
repeatbooleanoptionalWhether the sequence repeats for subscribers
send_daysarrayoptionalDays to send on (e.g. ['monday', 'wednesday', 'friday'])
send_hourintegeroptionalHour of day to send (0-23)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
time_zonestringoptionalTimezone for send scheduling (e.g. 'America/New_York')
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_sequence_email#Add a new email to an existing sequence at a specified position and delay.12 params

Add a new email to an existing sequence at a specified position and delay.

NameTypeRequiredDescription
delay_unitstringrequired'days' or 'hours' (required)
delay_valueintegerrequiredNumber of days or hours to wait before sending this email (required). Unit is controlled by delay_unit.
sequence_idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
subjectstringrequiredEmail subject line (required)
contentstringoptionalEmail body content in HTML
email_template_idintegeroptionalLayout template ID. Use list_email_templates to find IDs.
positionintegeroptional0-based position in the sequence. Defaults to the end.
preview_textstringoptionalPreview text shown in email clients
publishedbooleanoptionalPublish the email immediately (default: false)
send_daysarrayoptionalDays of the week this email may send. Omit or pass null to allow all days (inherits the sequence schedule).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_snippet#Create a reusable content snippet (inline or block) for use in broadcasts and sequences.6 params

Create a reusable content snippet (inline or block) for use in broadcasts and sequences.

NameTypeRequiredDescription
namestringrequiredSnippet name (required). Used to auto-generate the key.
snippet_typestringrequired'inline' or 'block' (required). Cannot be changed after creation.
contentstringoptionalText/Liquid content for inline snippets (required when snippet_type is 'inline')
document_attributesobjectoptionalRich HTML content for block snippets (required when snippet_type is 'block')
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_subscriber#Create or update a single subscriber by email address (upsert). Returns the subscriber record.6 params

Create or update a single subscriber by email address (upsert). Returns the subscriber record.

NameTypeRequiredDescription
email_addressstringrequiredSubscriber's email address (required)
fieldsobjectoptionalCustom field values as key-value pairs
first_namestringoptionalSubscriber's first name
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
statestringoptionalSubscriber state (default: active)
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_tag#Create a new tag. Returns the tag record with its ID.3 params

Create a new tag. Returns the tag record with its ID.

NameTypeRequiredDescription
namestringrequiredTag name (required)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_create_webhook#Register a webhook endpoint to receive Kit events. Returns the created webhook record.4 params

Register a webhook endpoint to receive Kit events. Returns the created webhook record.

NameTypeRequiredDescription
eventobjectrequiredEvent configuration (required). Must include 'name' and optional filter IDs.
target_urlstringrequiredURL to receive webhook POST requests (required)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_delete_broadcast#Delete a draft broadcast by ID. Only draft broadcasts can be deleted.3 params

Delete a draft broadcast by ID. Only draft broadcasts can be deleted.

NameTypeRequiredDescription
broadcast_idintegerrequiredThe broadcast ID to delete (required). Use list_broadcasts to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_delete_custom_field#Delete a custom subscriber field by ID.3 params

Delete a custom subscriber field by ID.

NameTypeRequiredDescription
custom_field_idintegerrequiredThe custom field ID to delete (required). Use list_custom_fields to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_delete_sequence#Delete a sequence and all its emails by ID.3 params

Delete a sequence and all its emails by ID.

NameTypeRequiredDescription
idintegerrequiredThe sequence ID to delete (required). Use list_sequences to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_delete_sequence_email#Delete a single email from a sequence by email ID and sequence ID.4 params

Delete a single email from a sequence by email ID and sequence ID.

NameTypeRequiredDescription
idintegerrequiredThe email ID to delete (required). Use list_sequence_emails to find IDs.
sequence_idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_delete_webhook#Delete a registered webhook by ID.3 params

Delete a registered webhook by ID.

NameTypeRequiredDescription
webhook_idintegerrequiredThe webhook ID to delete (required). Use list_webhooks to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_filter_subscribers#Search and filter subscribers by engagement events (opens, clicks, sends, deliveries) or sign-up date. Returns paginated results.9 params

Search and filter subscribers by engagement events (opens, clicks, sends, deliveries) or sign-up date. Returns paginated results.

NameTypeRequiredDescription
afterstringoptionalPagination cursor for the next page. Use `pagination.end_cursor` from a previous response. Distinct from per-filter date ranges in `all[].after`.
allarrayoptionalArray of filter conditions, AND-ed together. Each item filters by one event type (opens, clicks, sent, delivered) or by sign-up date (subscribed). Omit to match all subscribers.
beforestringoptionalPagination cursor for the previous page. Use `pagination.start_cursor` from a previous response. Distinct from per-filter date ranges in `all[].before`.
include_total_countbooleanoptionalIf true, include `pagination.total_count` in the response (slower).
per_pageintegeroptionalResults per page (1-100).
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
sort_fieldstringoptionalField to sort by. Defaults to `id` (recommended for stable cursor pagination).
sort_orderstringoptionalSort direction (default: desc).
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_account#Retrieve the Kit account details for the authenticated user.2 params

Retrieve the Kit account details for the authenticated user.

NameTypeRequiredDescription
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_account_colors#Retrieve the custom brand color palette for the Kit account.2 params

Retrieve the custom brand color palette for the Kit account.

NameTypeRequiredDescription
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_broadcast#Retrieve a single broadcast record by ID.3 params

Retrieve a single broadcast record by ID.

NameTypeRequiredDescription
idintegerrequiredThe broadcast ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_broadcast_clicks#Retrieve click data for a specific broadcast, paginated by cursor.6 params

Retrieve click data for a specific broadcast, paginated by cursor.

NameTypeRequiredDescription
idintegerrequiredThe broadcast ID
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_broadcast_stats#Retrieve performance statistics (opens, clicks, etc.) for a specific broadcast.3 params

Retrieve performance statistics (opens, clicks, etc.) for a specific broadcast.

NameTypeRequiredDescription
idintegerrequiredThe broadcast ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_broadcasts_stats#Retrieve aggregated performance statistics for multiple broadcasts, with optional date and status filters.8 params

Retrieve aggregated performance statistics for multiple broadcasts, with optional date and status filters.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
sent_afterstringoptionalISO 8601 date or datetime (e.g. `2026-01-15` or `2026-01-15T10:00:00Z`). Only include broadcasts with `send_at >= sent_after`.
sent_beforestringoptionalISO 8601 date or datetime (e.g. `2026-01-15` or `2026-01-15T10:00:00Z`). Only include broadcasts with `send_at < sent_before`.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
statusstringoptionalFilter to broadcasts in this state. Omit to return all states.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_creator_profile#Retrieve the creator profile linked to the authenticated Kit account.2 params

Retrieve the creator profile linked to the authenticated Kit account.

NameTypeRequiredDescription
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_email_stats#Retrieve overall email performance statistics for the Kit account.2 params

Retrieve overall email performance statistics for the Kit account.

NameTypeRequiredDescription
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_email_template#Retrieve a single email template by ID.3 params

Retrieve a single email template by ID.

NameTypeRequiredDescription
idintegerrequiredThe email template ID (required). Use list_email_templates to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_growth_stats#Retrieve subscriber growth statistics for a specified date range.4 params

Retrieve subscriber growth statistics for a specified date range.

NameTypeRequiredDescription
endingstringoptionalEnd date (YYYY-MM-DD). Defaults to today.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
startingstringoptionalStart date (YYYY-MM-DD). Defaults to 90 days ago.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_post#Retrieve a single Kit post (newsletter issue) by ID.3 params

Retrieve a single Kit post (newsletter issue) by ID.

NameTypeRequiredDescription
idintegerrequiredThe post ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_purchase#Retrieve a single purchase record by ID.3 params

Retrieve a single purchase record by ID.

NameTypeRequiredDescription
idintegerrequiredThe purchase ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_sequence#Retrieve a single sequence record by ID.3 params

Retrieve a single sequence record by ID.

NameTypeRequiredDescription
idintegerrequiredThe sequence ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_sequence_email#Retrieve a single email within a sequence by email ID and sequence ID.4 params

Retrieve a single email within a sequence by email ID and sequence ID.

NameTypeRequiredDescription
idintegerrequiredThe email ID (required). Use list_sequence_emails to find IDs.
sequence_idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_snippet#Retrieve a single content snippet by ID.3 params

Retrieve a single content snippet by ID.

NameTypeRequiredDescription
idintegerrequiredThe snippet ID (required). Use list_snippets to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_subscriber#Retrieve a single subscriber record by ID, including their custom fields.3 params

Retrieve a single subscriber record by ID, including their custom fields.

NameTypeRequiredDescription
idintegerrequiredThe subscriber ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_subscriber_stats#Retrieve engagement statistics for a single subscriber.3 params

Retrieve engagement statistics for a single subscriber.

NameTypeRequiredDescription
idintegerrequiredThe subscriber ID
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_get_subscriber_tags#Retrieve all tags applied to a specific subscriber, paginated.6 params

Retrieve all tags applied to a specific subscriber, paginated.

NameTypeRequiredDescription
idintegerrequiredThe subscriber ID
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_broadcasts#List all broadcasts with optional status filter and cursor pagination.7 params

List all broadcasts with optional status filter and cursor pagination.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
includearrayoptionalExtra fields to include per broadcast. `content` adds the full HTML body (can be large — only request when needed).
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
statusstringoptionalFilter to broadcasts in this state. Omit to return all states.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_custom_fields#List all custom subscriber fields in the account.5 params

List all custom subscriber fields in the account.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_email_templates#List all email templates in the account.5 params

List all email templates in the account.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_form_subscribers#List all subscribers on a specific form, paginated.7 params

List all subscribers on a specific form, paginated.

NameTypeRequiredDescription
idintegerrequiredThe form ID. Use list_forms to find IDs.
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
includearrayoptionalExtra data to include per subscriber. `fields` adds custom field values (omit for slim responses).
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_forms#List all forms in the account with optional status filter.6 params

List all forms in the account with optional status filter.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
statusstringoptionalForm status (default: active)
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_posts#List all Kit newsletter posts with optional cursor pagination.6 params

List all Kit newsletter posts with optional cursor pagination.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
include_contentbooleanoptionalSet to true to include the full HTML body of each post. Omit (or set false) for a slim response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_prompt_suggestions#Retrieve suggested prompts to help the user get started with Kit via AI.2 params

Retrieve suggested prompts to help the user get started with Kit via AI.

NameTypeRequiredDescription
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_purchases#List all purchase records in the account, paginated.5 params

List all purchase records in the account, paginated.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_segments#List all subscriber segments in the account.5 params

List all subscriber segments in the account.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_sequence_emails#List all emails in a specific sequence.7 params

List all emails in a specific sequence.

NameTypeRequiredDescription
sequence_idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
include_contentbooleanoptionalInclude HTML content in each email (default: false)
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_sequence_subscribers#List all subscribers enrolled in a specific sequence.7 params

List all subscribers enrolled in a specific sequence.

NameTypeRequiredDescription
idintegerrequiredThe sequence ID
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
includearrayoptionalExtra data to include per subscriber. `fields` adds custom field values (omit for slim responses).
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_sequences#List all email sequences in the account.5 params

List all email sequences in the account.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_snippets#List all content snippets in the account with optional type and archive filters.8 params

List all content snippets in the account with optional type and archive filters.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
archivedbooleanoptionaltrue to list archived snippets, false (default) for active ones
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
include_contentbooleanoptionalInclude content and document fields in each snippet (default: false)
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
snippet_typestringoptionalFilter by type: 'inline' or 'block'
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_subscribers#List all subscribers with optional status, sort, and cursor pagination.9 params

List all subscribers with optional status, sort, and cursor pagination.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
includearrayoptionalExtra data to include per subscriber. `fields` adds custom field values (omit for slim responses). `canceled_at` requires `status` set to `cancelled` (otherwise the API returns 422).
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
sort_fieldstringoptionalSort by `id` (default, recommended for stable cursor pagination), `created_at`, or `updated_at`.
sort_orderstringoptionalSort direction: asc or desc
statusstringoptionalFilter by subscriber state. Defaults to active when omitted. Use `all` to include every state.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_tag_subscribers#List all subscribers who have a specific tag applied.7 params

List all subscribers who have a specific tag applied.

NameTypeRequiredDescription
idintegerrequiredThe tag ID. Use list_tags to find IDs.
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
includearrayoptionalExtra data to include per subscriber. `fields` adds custom field values (omit for slim responses).
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_tags#List all tags in the account.5 params

List all tags in the account.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_list_webhooks#List all registered webhooks in the account.5 params

List all registered webhooks in the account.

NameTypeRequiredDescription
afterstringoptionalCursor for next page. Use `pagination.end_cursor` from a previous response.
beforestringoptionalCursor for previous page. Use `pagination.start_cursor` from a previous response.
per_pageintegeroptionalResults per page (1-100)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_tag_subscriber#Apply a tag to a subscriber identified by email address.4 params

Apply a tag to a subscriber identified by email address.

NameTypeRequiredDescription
email_addressstringrequiredSubscriber's email address (required)
tag_idintegerrequiredThe tag ID (required). Use list_tags to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_unsubscribe#Cancel a subscriber's subscription by subscriber ID.3 params

Cancel a subscriber's subscription by subscriber ID.

NameTypeRequiredDescription
subscriber_idintegerrequiredThe subscriber ID (required). Use list_subscribers or get_subscriber to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_untag_subscriber#Remove a tag from a subscriber by subscriber ID and tag ID.4 params

Remove a tag from a subscriber by subscriber ID and tag ID.

NameTypeRequiredDescription
subscriber_idintegerrequiredThe subscriber ID (required)
tag_idintegerrequiredThe tag ID (required). Use list_tags to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_account_colors#Update the custom brand color palette for the Kit account.3 params

Update the custom brand color palette for the Kit account.

NameTypeRequiredDescription
colorsarrayrequiredArray of up to 10 hex color codes (e.g. ["#FF6900", "#FCB900"]). Replaces the existing palette entirely.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_broadcast#Update a draft broadcast's subject, content, or audience filter.10 params

Update a draft broadcast's subject, content, or audience filter.

NameTypeRequiredDescription
broadcast_idintegerrequiredThe broadcast ID (required). Use list_broadcasts to find IDs.
contentstringoptionalEmail body content in HTML
descriptionstringoptionalInternal description
email_template_idintegeroptionalEmail template ID
preview_textstringoptionalPreview text shown in email clients
publicbooleanoptionalWhether to publish on the creator's profile page
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
subjectstringoptionalEmail subject line
subscriber_filterarrayoptionalTarget audience filter. A single-element array wrapping one filter group (all/any/none). Example: [{ "all": [{ "type": "tag", "ids": [1, 2] }] }]. Only one filter group (all, any, or none) may be populated per request. Filter types allowed: 'tag' or 'segment'. Omit to leave current filter unchanged.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_custom_field#Rename a custom subscriber field by ID.4 params

Rename a custom subscriber field by ID.

NameTypeRequiredDescription
custom_field_idintegerrequiredThe custom field ID (required). Use list_custom_fields to find IDs.
labelstringrequiredNew field label (required)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_sequence#Update sequence settings such as name, send days, or active state.12 params

Update sequence settings such as name, send days, or active state.

NameTypeRequiredDescription
idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
activebooleanoptionalWhether the sequence is active
email_addressstringoptionalFrom email address
email_template_idintegeroptionalEmail template ID
holdbooleanoptionalWhether the sequence is on hold
namestringoptionalNew sequence name
repeatbooleanoptionalWhether the sequence repeats
send_daysarrayoptionalDays to send on
send_hourintegeroptionalHour of day to send (0-23)
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
time_zonestringoptionalTimezone for send scheduling
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_sequence_email#Update an existing sequence email's subject, content, delay, or position.13 params

Update an existing sequence email's subject, content, delay, or position.

NameTypeRequiredDescription
idintegerrequiredThe email ID (required). Use list_sequence_emails to find IDs.
sequence_idintegerrequiredThe sequence ID (required). Use list_sequences to find IDs.
contentstringoptionalEmail body content in HTML
delay_unitstringoptional'days' or 'hours'
delay_valueintegeroptionalNumber of days or hours to wait before sending this email. Unit is controlled by delay_unit.
email_template_idintegeroptionalLayout template ID. Use list_email_templates to find IDs.
positionintegeroptional0-based position in the sequence
preview_textstringoptionalPreview text shown in email clients
publishedbooleanoptionalPublish or unpublish the email
send_daysarrayoptionalDays of the week this email may send. To reset to the full weekly schedule, pass all 7 values explicitly.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
subjectstringoptionalEmail subject line
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_snippet#Update a content snippet's name, content, or archived state.7 params

Update a content snippet's name, content, or archived state.

NameTypeRequiredDescription
idintegerrequiredThe snippet ID (required). Use list_snippets to find IDs.
archivedbooleanoptionaltrue to archive, false to restore
contentstringoptionalNew text/Liquid content (inline snippets only)
document_attributesobjectoptionalNew HTML content (block snippets only)
namestringoptionalNew snippet name
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_subscriber#Update a subscriber's email, name, or custom field values by subscriber ID.6 params

Update a subscriber's email, name, or custom field values by subscriber ID.

NameTypeRequiredDescription
subscriber_idintegerrequiredThe subscriber ID (required). Use list_subscribers or filter_subscribers to find IDs.
email_addressstringoptionalNew email address
fieldsobjectoptionalCustom field values to update as key-value pairs
first_namestringoptionalNew first name
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.
kitmcp_update_tag#Rename a tag by ID.4 params

Rename a tag by ID.

NameTypeRequiredDescription
namestringrequiredNew tag name (required)
tag_idintegerrequiredThe tag ID (required). Use list_tags to find IDs.
session_idstringoptionalUUID v4 identifier for grouping tool calls in the same conversation. Generate once at the start of the session and reuse it on every call.
user_goalstringoptionalWhat the creator is trying to accomplish with this tool call. Pick the closest match; use 'unknown' only when no category fits.