Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Upstream connector

Bearer TokenAutomationProductivity

Connect to Upstream MCP to access AI-assistant tools and workflows, including inbox management, directly from your AI workflows.

Upstream 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 Upstream credentials with Scalekit so it can authenticate requests on your behalf. You do this once per environment.

    Dashboard setup steps

    Register your Upstream Personal Access Token with Scalekit so it can authenticate and proxy inbox requests on behalf of your users. Unlike OAuth connectors, Upstream MCP uses bearer token authentication — there is no redirect URI or OAuth flow.

    1. Get a bearer token

      • Sign in to your Upstream account and open your account settings.

      • Find the Personal Access Tokens (or API tokens) section.

      • Click Create token. Give it a name (e.g., Agent Auth) and confirm.

      • Copy the token immediately — it will not be shown again.

    2. Create a connection in Scalekit

      • In Scalekit dashboard, go to AgentKit > Connections. Find Upstream and click Create.

      • Note the Connection name — you will use this as connection_name in your code (e.g., upstreammcp).

    3. Add a connected account

      Connected accounts link a specific user identifier in your system to an Upstream Personal Access Token. Add them via the dashboard for testing, or via the Scalekit API in production.

      Via dashboard (for testing)

      • Open the connection you created and click the Connected Accounts tab → Add account.

      • Fill in:

        • Your User’s ID — a unique identifier for this user in your system (e.g., user_123)
        • Bearer Token — the Personal Access Token you copied in step 1
      • Click Save.

      Via API (for production)

      await scalekit.actions.upsertConnectedAccount({
      connectionName: 'upstreammcp',
      identifier: 'user_123', // your user's unique ID
      credentials: { token: 'upstream_pat_...' },
      });
  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 = 'upstreammcp'
    const identifier = 'user_123'
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'upstreammcp_get_inbox_split_threads',
    toolInput: {},
    })
    console.log(result)

Connect this agent connector to let your agent:

  • Thread compose, done, reply to — Create and send a new email thread
  • Create channel, inbox split, label — Create a new team channel for organizing and sharing threads
  • Delete inbox split, rule — Permanently delete a custom inbox split
  • Draft generate — Generate an AI-powered draft reply for a thread
  • Get channel threads, inbox split threads, label threads — List threads in a specific channel
  • List channels, contacts, draft threads — List all channels the user belongs to
Tool calling
  • Use upstreammcp_search_actors to discover Actors for a specific platform or use case before deciding which to run.
  • Use upstreammcp_fetch_actor_details to retrieve an Actor’s input schema before calling it — always pass output: { inputSchema: true } to keep the response concise.
  • Use upstreammcp_call_actor to run an Actor synchronously, or with async: true for long-running tasks.
  • Use upstreammcp_get_actor_run to poll the status of an async run, and upstreammcp_get_actor_output to retrieve results once complete.
  • Use upstreammcp_rag_web_browser when you need real-time web content for LLM grounding — it returns clean Markdown from the top search result pages.
const toolResponse = await actions.executeTool({
connector: 'upstreammcp',
identifier: 'user_123',
toolName: 'upstreammcp_fetch_actor_details',
toolInput: {
actor: 'apify/web-scraper',
},
});
console.log('Actor details:', toolResponse.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.

upstreammcp_compose_thread#Create and send a new email thread. Requires at least one recipient in the "to" field. Optionally assign to channels for team visibility.7 params

Create and send a new email thread. Requires at least one recipient in the "to" field. Optionally assign to channels for team visibility.

NameTypeRequiredDescription
bodystringrequiredEmail body (HTML supported)
toarrayrequiredPrimary recipients (email addresses)
bccarrayoptionalBCC recipients
ccarrayoptionalCC recipients
channelIdsarrayoptionalChannel IDs to assign this thread to (from list-channels)
includeSignaturesbooleanoptionalWhether to append Gmail and Upstream signatures when they are not already present
subjectstringoptionalEmail subject line
upstreammcp_create_channel#Create a new team channel for organizing and sharing threads. Requires an organization membership. Use get-self to find your organization ID.4 params

Create a new team channel for organizing and sharing threads. Requires an organization membership. Use get-self to find your organization ID.

NameTypeRequiredDescription
namestringrequiredChannel name
organizationIdstringrequiredOrganization ID (from get-self)
colorstringoptionalChannel color (defaults to lynch)
isPublicbooleanoptionalWhether the channel is public (default: true)
upstreammcp_create_inbox_split#Create a new custom inbox split. Splits filter inbox threads by a query string (matching sender, subject, body). Use list-inbox-splits to see existing splits.3 params

Create a new custom inbox split. Splits filter inbox threads by a query string (matching sender, subject, body). Use list-inbox-splits to see existing splits.

NameTypeRequiredDescription
namestringrequiredSplit display name
querystringrequiredFilter query — emails matching this appear in the split
showInCategorySplitbooleanoptionalAlso show matching threads in their original category (default: true)
upstreammcp_create_label#Create a new label for organizing threads. Use manage-thread-labels to apply labels to threads after creation.2 params

Create a new label for organizing threads. Use manage-thread-labels to apply labels to threads after creation.

NameTypeRequiredDescription
namestringrequiredLabel name
colorstringoptionalLabel color (defaults to slate_gray). Available: slate_gray, lavender_gray, jelly_bean, pale_chestnut, mandarin, apricot, mellow_apricot, very_pale_orange, naples_yellow, blond, medium_aquamarine, magic_mint, forest_green, jet_stream, cadet_blue, crystal, havelock_blue, beau_blue, medium_purple, pale_lavender, pastel_magenta, pale_pink, tuscany, timberwolf
upstreammcp_create_rule#Create a new inbox automation rule. Rules match emails by query string and add matching emails to a channel automatically. Queries match against sender, subject, and body. Set applyToIncoming=true to apply to future incoming emails, bulkApplication=true to apply to existing matching threads.4 params

Create a new inbox automation rule. Rules match emails by query string and add matching emails to a channel automatically. Queries match against sender, subject, and body. Set applyToIncoming=true to apply to future incoming emails, bulkApplication=true to apply to existing matching threads.

NameTypeRequiredDescription
actionsarrayrequiredActions to apply on matching emails
querystringrequiredMatch query — emails matching this text trigger the rule
applyToIncomingbooleanoptionalApply to future incoming emails (default: true)
bulkApplicationbooleanoptionalAlso apply to existing matching threads (default: false)
upstreammcp_delete_inbox_split#Permanently delete a custom inbox split. Threads previously in this split remain in their categories. Use list-inbox-splits to get split IDs.1 param

Permanently delete a custom inbox split. Threads previously in this split remain in their categories. Use list-inbox-splits to get split IDs.

NameTypeRequiredDescription
splitIdstringrequiredInbox split ID to delete
upstreammcp_delete_rule#Permanently delete an inbox automation rule. Use list-rules first to get rule IDs.1 param

Permanently delete an inbox automation rule. Use list-rules first to get rule IDs.

NameTypeRequiredDescription
ruleIdstringrequiredRule ID to delete (from list-rules)
upstreammcp_done_thread#Archive/mark a thread as done, removing it from the inbox. The thread remains accessible via search or folder views but leaves the active inbox. Pass the inbox item IDs (from get-inbox-split-threads results).1 param

Archive/mark a thread as done, removing it from the inbox. The thread remains accessible via search or folder views but leaves the active inbox. Pass the inbox item IDs (from get-inbox-split-threads results).

NameTypeRequiredDescription
inboxItemIdsarrayrequiredInbox item IDs to mark done (from get-inbox-split-threads)
upstreammcp_generate_draft#Generate an AI-powered draft reply for a thread. Returns the draft text directly — use it with reply-to-thread to send. The draft is based on thread context, user writing style, and optional custom instructions. Consumes one draft quota unit.3 params

Generate an AI-powered draft reply for a thread. Returns the draft text directly — use it with reply-to-thread to send. The draft is based on thread context, user writing style, and optional custom instructions. Consumes one draft quota unit.

NameTypeRequiredDescription
threadIdstringrequiredThread ID to generate a draft for
currentDraftBodystringoptionalOptional existing draft body to refine or continue
customInstructionsstringoptionalOptional instructions to guide draft generation (e.g. "be formal", "decline politely")
upstreammcp_get_channel_threads#List threads in a specific channel. Use list-channels first to get channel IDs. Returns paginated thread list with subjects, senders, and dates.3 params

List threads in a specific channel. Use list-channels first to get channel IDs. Returns paginated thread list with subjects, senders, and dates.

NameTypeRequiredDescription
channelIdstringrequiredChannel ID from list-channels
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_get_inbox_split_threads#List threads in a specific inbox split, category, or system split. Provide exactly one of splitId, category, or systemSplit. Get valid filter values from list-inbox-splits first.5 params

List threads in a specific inbox split, category, or system split. Provide exactly one of splitId, category, or systemSplit. Get valid filter values from list-inbox-splits first.

NameTypeRequiredDescription
categorystringoptionalInbox category (e.g. CATEGORY_PRIMARY)
limitintegeroptionalPage size, 1-100 (default 20)
pageTokenstringoptionalCursor for next page from previous response
splitIdstringoptionalCustom inbox split ID from list-inbox-splits
systemSplitstringoptionalSystem split: "follow-ups", "needs-reply", or "cold-emails"
upstreammcp_get_label_threads#List threads with a specific label. Use list-labels first to get label IDs. Returns paginated thread list.3 params

List threads with a specific label. Use list-labels first to get label IDs. Returns paginated thread list.

NameTypeRequiredDescription
labelIdstringrequiredLabel ID from list-labels
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_get_self#Get current user profile, account status, settings, and organization memberships in one call. Useful for understanding user identity, feature flags, unread counts, and AI draft configuration.0 params

Get current user profile, account status, settings, and organization memberships in one call. Useful for understanding user identity, feature flags, unread counts, and AI draft configuration.

upstreammcp_list_channels#List all channels the user belongs to. Channels are team shared spaces for organizing threads. Returns channel IDs, names, colors, member counts, and unread counts. Use get-channel-threads to browse threads within a channel.0 params

List all channels the user belongs to. Channels are team shared spaces for organizing threads. Returns channel IDs, names, colors, member counts, and unread counts. Use get-channel-threads to browse threads within a channel.

upstreammcp_list_contacts#List all contacts the user has interacted with. Returns email addresses, display names, and profile pictures. Useful for finding recipient addresses when composing or replying to emails.0 params

List all contacts the user has interacted with. Returns email addresses, display names, and profile pictures. Useful for finding recipient addresses when composing or replying to emails.

upstreammcp_list_draft_threads#List new thread drafts saved through MCP. Returns unsent draft threads owned by the user.2 params

List new thread drafts saved through MCP. Returns unsent draft threads owned by the user.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_list_inbox_splits#List all inbox splits visible to the authenticated user, in display order. Includes Primary, system splits (Needs Reply, Follow Ups), custom splits, and category splits (Promotions, Social, Updates). Each entry contains a filter_param object — pass it directly to get-inbox-split-threads. Use this tool first to discover available splits before fetching threads.0 params

List all inbox splits visible to the authenticated user, in display order. Includes Primary, system splits (Needs Reply, Follow Ups), custom splits, and category splits (Promotions, Social, Updates). Each entry contains a filter_param object — pass it directly to get-inbox-split-threads. Use this tool first to discover available splits before fetching threads.

upstreammcp_list_labels#List all labels the user has created. Returns label IDs, names, and colors. Use get-label-threads to browse threads with a specific label.0 params

List all labels the user has created. Returns label IDs, names, and colors. Use get-label-threads to browse threads with a specific label.

upstreammcp_list_org_members#List all members of an organization. Returns user IDs, names, emails, and profile pictures. Use get-self to find your organization ID.1 param

List all members of an organization. Returns user IDs, names, emails, and profile pictures. Use get-self to find your organization ID.

NameTypeRequiredDescription
organizationIdstringrequiredOrganization ID (from get-self)
upstreammcp_list_rules#List all inbox automation rules. Rules automatically apply actions (add to channel, add label, star, mark spam) to matching emails. Returns rule IDs, queries, actions, and whether they apply to incoming mail.0 params

List all inbox automation rules. Rules automatically apply actions (add to channel, add label, star, mark spam) to matching emails. Returns rule IDs, queries, actions, and whether they apply to incoming mail.

upstreammcp_list_scheduled_threads#List threads with scheduled sends. Returns threads with messages scheduled for future delivery.2 params

List threads with scheduled sends. Returns threads with messages scheduled for future delivery.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_list_sent_threads#List threads from the Sent folder. Returns sent emails with subjects, recipients, and dates.2 params

List threads from the Sent folder. Returns sent emails with subjects, recipients, and dates.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_list_snoozed_threads#List snoozed threads. Returns threads the user has deferred to reappear later.2 params

List snoozed threads. Returns threads the user has deferred to reappear later.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_list_spam_threads#List threads in the Spam folder. Returns threads marked as spam.2 params

List threads in the Spam folder. Returns threads marked as spam.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_list_starred_threads#List starred/flagged threads. Returns threads the user has starred for quick access.2 params

List starred/flagged threads. Returns threads the user has starred for quick access.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_list_trashed_threads#List threads in the Trash. Returns deleted threads that can be restored.2 params

List threads in the Trash. Returns deleted threads that can be restored.

NameTypeRequiredDescription
limitintegeroptionalMax results, 1-50 (default 20)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_manage_channel_participants#Add or remove members from a channel. Use list-org-members to find user IDs and list-channels to find channel IDs.3 params

Add or remove members from a channel. Use list-org-members to find user IDs and list-channels to find channel IDs.

NameTypeRequiredDescription
actionstringrequired"add" to invite members, "remove" to remove them
channelIdstringrequiredChannel ID to modify
participantIdsarrayrequiredUser IDs to add or remove
upstreammcp_manage_thread_channels#Add or remove channel assignments on one or more threads. Use list-channels to get available channel IDs.3 params

Add or remove channel assignments on one or more threads. Use list-channels to get available channel IDs.

NameTypeRequiredDescription
actionstringrequired"add" to assign to channels, "remove" to unassign
channelIdsarrayrequiredChannel IDs to add or remove
threadIdsarrayrequiredThread IDs to modify
upstreammcp_manage_thread_followers#Add or remove followers on a thread. Followers get notifications about thread activity. Use list-org-members to get user IDs.3 params

Add or remove followers on a thread. Followers get notifications about thread activity. Use list-org-members to get user IDs.

NameTypeRequiredDescription
actionstringrequired"add" to follow, "remove" to unfollow
threadIdstringrequiredThread ID to modify followers on
userIdsarrayrequiredUser IDs to add or remove as followers
upstreammcp_manage_thread_labels#Add or remove labels on one or more threads. Use list-labels to get available label IDs.3 params

Add or remove labels on one or more threads. Use list-labels to get available label IDs.

NameTypeRequiredDescription
actionstringrequired"add" to apply labels, "remove" to take them off
labelIdsarrayrequiredLabel IDs to add or remove
threadIdsarrayrequiredThread IDs to modify
upstreammcp_mark_read#Mark all messages in a thread as read. Clears the unread indicator for this thread.1 param

Mark all messages in a thread as read. Clears the unread indicator for this thread.

NameTypeRequiredDescription
threadIdstringrequiredThread ID to mark as read
upstreammcp_mark_spam#Mark a thread as spam or remove the spam designation. Spam threads are moved to the spam folder.2 params

Mark a thread as spam or remove the spam designation. Spam threads are moved to the spam folder.

NameTypeRequiredDescription
spambooleanrequiredtrue to mark as spam, false to mark as not spam
threadIdstringrequiredThread ID
upstreammcp_move_to_category#Move threads from one inbox category to another. Use list-inbox-splits to see available categories.3 params

Move threads from one inbox category to another. Use list-inbox-splits to see available categories.

NameTypeRequiredDescription
fromCategorystringrequiredCurrent category of the threads
threadIdsarrayrequiredThread IDs to move
toCategorystringrequiredTarget category to move threads to
upstreammcp_post_thread_comment#Post an internal team comment on a thread. Comments are only visible to organization members, not to external email recipients. Use get-self to find your organization ID.3 params

Post an internal team comment on a thread. Comments are only visible to organization members, not to external email recipients. Use get-self to find your organization ID.

NameTypeRequiredDescription
bodystringrequiredComment body (HTML supported)
organizationIdstringrequiredOrganization ID (from get-self)
threadIdstringrequiredThread ID to comment on
upstreammcp_read_thread#Read a thread with its messages. Use response_format "concise" (default) for metadata and snippets only — saves context tokens. Use "detailed" for full message bodies when you need complete content.2 params

Read a thread with its messages. Use response_format "concise" (default) for metadata and snippets only — saves context tokens. Use "detailed" for full message bodies when you need complete content.

NameTypeRequiredDescription
threadIdstringrequiredThread ID from get-inbox-split-threads or search-inbox
response_formatstringoptionalLevel of detail: "concise" (default) returns snippets; "detailed" returns full bodies
upstreammcp_read_thread_comments#Read internal team comments on a thread (not visible to external recipients). Comments are scoped to an organization. Use get-self to find your organization ID. Use response_format "concise" (default) for snippets; "detailed" for full bodies.3 params

Read internal team comments on a thread (not visible to external recipients). Comments are scoped to an organization. Use get-self to find your organization ID. Use response_format "concise" (default) for snippets; "detailed" for full bodies.

NameTypeRequiredDescription
organizationIdstringrequiredOrganization ID (from get-self)
threadIdstringrequiredThread ID from search-inbox or get-inbox-split-threads
response_formatstringoptionalLevel of detail: "concise" (default) returns snippets; "detailed" returns full bodies
upstreammcp_reply_to_thread#Send a reply in an existing thread. You must provide at least one "to" recipient. Use read-thread to see existing participants. Optionally add cc/bcc addresses.6 params

Send a reply in an existing thread. You must provide at least one "to" recipient. Use read-thread to see existing participants. Optionally add cc/bcc addresses.

NameTypeRequiredDescription
bodystringrequiredReply message body (HTML supported)
threadIdstringrequiredThread ID to reply to
toarrayrequired"To" recipients — use read-thread to see thread participants
bccarrayoptionalBCC recipients (email addresses)
ccarrayoptionalCC recipients (email addresses)
includeSignaturesbooleanoptionalWhether to append Gmail and Upstream signatures when they are not already present
upstreammcp_save_draft_reply#Save a draft reply in an existing thread without sending it. If recipients are omitted, Upstream stores no recipients on the draft and uses the current default reply recipients when the draft is opened. If recipients are provided, they replace the defaults and are stored on the draft.5 params

Save a draft reply in an existing thread without sending it. If recipients are omitted, Upstream stores no recipients on the draft and uses the current default reply recipients when the draft is opened. If recipients are provided, they replace the defaults and are stored on the draft.

NameTypeRequiredDescription
bodystringrequiredDraft reply body (HTML supported)
threadIdstringrequiredThread ID to save a draft reply for
explanationstringoptionalOptional user-visible explanation shown with the saved draft in Upstream
overwriteExistingDraftbooleanoptionalWhether to replace an existing active draft on this thread
recipientsobjectoptionalOptional full recipient override. If omitted, Upstream uses current default reply recipients when the draft is opened.
upstreammcp_save_draft_thread#Save a new email thread draft without sending it. Recipients and channel IDs are optional and can be added later in Upstream. Use compose-thread when the message should be sent immediately.6 params

Save a new email thread draft without sending it. Recipients and channel IDs are optional and can be added later in Upstream. Use compose-thread when the message should be sent immediately.

NameTypeRequiredDescription
bodystringrequiredDraft body (HTML supported)
bccarrayoptionalBCC recipients
ccarrayoptionalCC recipients
channelIdsarrayoptionalChannel IDs to assign this draft thread to (from list-channels)
subjectstringoptionalEmail subject line
toarrayoptionalPrimary recipients (email addresses)
upstreammcp_search_inbox#Search across all inbox threads by keyword or phrase. Returns matching threads with subjects, senders, and dates. More efficient than browsing splits when looking for specific content. Use read-thread to get full details of a specific result.3 params

Search across all inbox threads by keyword or phrase. Returns matching threads with subjects, senders, and dates. More efficient than browsing splits when looking for specific content. Use read-thread to get full details of a specific result.

NameTypeRequiredDescription
querystringrequiredSearch query — matches subject, body, and sender fields
limitintegeroptionalMax results, 1-50 (default 10)
pageTokenstringoptionalCursor for next page from previous response
upstreammcp_snooze_thread#Snooze a thread until a specific date/time. The thread will be removed from the inbox and reappear at the specified time. Use list-snoozed-threads to see currently snoozed threads.2 params

Snooze a thread until a specific date/time. The thread will be removed from the inbox and reappear at the specified time. Use list-snoozed-threads to see currently snoozed threads.

NameTypeRequiredDescription
snoozeUntilstringrequiredISO 8601 date-time when the thread should reappear (e.g. "2025-01-15T09:00:00Z")
threadIdstringrequiredThread ID to snooze
upstreammcp_star_threads#Star or unstar one or more threads. Starred threads appear in list-starred-threads.2 params

Star or unstar one or more threads. Starred threads appear in list-starred-threads.

NameTypeRequiredDescription
starredbooleanrequiredtrue to star, false to unstar
threadIdsarrayrequiredThread IDs to star/unstar
upstreammcp_trash_threads#Move threads to trash or restore them. Trashed threads can be restored with trashed=false. Use list-trashed-threads to see trashed threads.2 params

Move threads to trash or restore them. Trashed threads can be restored with trashed=false. Use list-trashed-threads to see trashed threads.

NameTypeRequiredDescription
threadIdsarrayrequiredThread IDs to trash/untrash
trashedbooleanrequiredtrue to trash, false to restore from trash
upstreammcp_update_inbox_split#Update an existing custom inbox split. Only provided fields are changed. Use list-inbox-splits to get split IDs.4 params

Update an existing custom inbox split. Only provided fields are changed. Use list-inbox-splits to get split IDs.

NameTypeRequiredDescription
splitIdstringrequiredInbox split ID to update
namestringoptionalNew display name
querystringoptionalNew filter query
showInCategorySplitbooleanoptionalWhether to also show in category view
upstreammcp_update_rule#Update an existing inbox automation rule. Only provided fields are updated; omitted fields remain unchanged. Only ADD_TO_CHANNEL actions are currently supported. Use list-rules first to get rule IDs.3 params

Update an existing inbox automation rule. Only provided fields are updated; omitted fields remain unchanged. Only ADD_TO_CHANNEL actions are currently supported. Use list-rules first to get rule IDs.

NameTypeRequiredDescription
ruleIdstringrequiredRule ID to update (from list-rules)
actionsarrayoptionalNew actions (replaces all existing actions)
querystringoptionalNew match query
upstreammcp_update_settings#Update user settings like auto-draft configuration, theme, and notification preferences. Only provided fields are changed. Use get-self to see current settings first.4 params

Update user settings like auto-draft configuration, theme, and notification preferences. Only provided fields are changed. Use get-self to see current settings first.

NameTypeRequiredDescription
autoAdvanceEnabledbooleanoptionalAutomatically advance to next thread after triaging
autoDraftEnabledbooleanoptionalEnable or disable AI auto-drafting
brandingSignatureEnabledbooleanoptionalInclude branding in email signature
gmailSignatureEnabledbooleanoptionalInclude the primary Gmail signature in sent emails