Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Clarify MCP server

Vendor MCP
Open markdown

The Clarify MCP connector routes your AI agent's tool calls to Clarify's own MCP server through Scalekit. Each user signs in to Clarify once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 38 tools.

Tools
38
What they doRead · write · destructive
12 · 11 · 1512 read11 write15 destructive
Users sign in with
OAuth app
Scalekit's or your own

What you can do

  • Manage CRM records: create, update, delete, and query records across any custom object type
  • Manage campaigns: create, update, delete, and list outreach campaigns with multi-step email sequences
  • Find and import leads: search for leads by criteria and import them into campaigns or lists
  • Manage lists and segments: create, update, delete, and list audience lists for targeting
  • Extend the data model: create, update, and delete custom objects and fields to match your schema
  • Analyze and query data: run analytics queries and retrieve structured data with custom filters

Setup

  1. Install the SDK

    Terminal window
    npm install @scalekit-sdk/node dotenv
  2. Set your credentials

    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. Create the Clarify MCP connection

    In AgentKit > Connections, create a Clarify MCP connection. The name you give it is the connection_name your code passes. See Configure connections.

    Scalekit credentials are available for Clarify MCP server, so you don't need to register an OAuth app.

  4. Authorize a user and make your first call

    quickstart.mts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    import { createInterface } from 'node:readline/promises'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENVIRONMENT_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'clarifymcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Clarify MCP:', link)
    const rl = createInterface({ input: process.stdin, output: process.stdout })
    await rl.question('Press Enter after authorizing...')
    rl.close()
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'clarifymcp_get_current_user',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user signs in once. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • clarifymcp_get_agent_runsList an agent's past runs, or fetch one run with its full message transcript.Read-only

    Get Agent Runs

    List an agent's past runs, or fetch one run with its full message transcript.

    Inputs

    agent_idstringrequired
    The ID of the agent whose runs to list or fetch.
    limitinteger
    Maximum number of runs to return when listing.default 10
    offsetinteger
    Offset for pagination when listing.default 0
    run_idstring
    Optional ID of a specific run to fetch in full, including transcript. Omit to list recent runs.
  • clarifymcp_get_agentsList agents visible to the current user, or fetch a single agent by ID.Read-only

    Get Agents

    List agents visible to the current user, or fetch a single agent by ID.

    Inputs

    agentIdstring
    The ID of a specific agent to fetch. Omit to list all visible agents.
  • clarifymcp_get_calendar_eventsList the current user's calendar events in a time range.Read-only

    Get Calendar Events

    List the current user's calendar events in a time range.

    Inputs

    endstringrequired
    ISO 8601 end of the time range (exclusive).
    startstringrequired
    ISO 8601 start of the time range (inclusive).
    limitinteger
    Maximum events to return.default 25
    querystring
    Optional substring match against event title or description.
  • clarifymcp_get_campaign_recipientsList the people enrolled in a campaign along with their per-recipient engagement (opens, clicks, replies).Read-only

    Get Campaign Recipients

    List the people enrolled in a campaign along with their per-recipient engagement (opens, clicks, replies).

    Inputs

    campaign_idstringrequired
    The ID of the campaign to list recipients for. Get it from get_campaigns.
    eventarray
    Return only recipients who did at least one of these event types.
    limitnumber
    Maximum number of recipients to return.default 10
    offsetnumber
    Use with limit for pagination.default 0
    searchstring
    Case-insensitive substring match against recipient name or email address.
    statusstring
    Return only recipients in this delivery state.one of scheduledcompletedpausedfailedunsubscribed
  • clarifymcp_get_campaignsList email campaigns in the workspace, or fetch a single campaign by ID with full details.Read-only

    Get Campaigns

    List email campaigns in the workspace, or fetch a single campaign by ID with full details.

    Inputs

    campaign_idstring
    The ID of the campaign. Use get_campaigns to list available campaigns and their IDs.
    limitnumber
    Maximum number of records to return per page.default 10
    offsetnumber
    Number of records to skip for pagination (use with limit).default 0
    searchstring
    Case-insensitive substring search to filter results by name or title.
    statusstring
    Filter by campaign status — draft (unpublished) or active (live campaigns).one of activedraft
  • clarifymcp_get_current_userRetrieve information about the currently authenticated Clarify user, including timezone and workspace details.Read-only

    Get Current User

    Retrieve information about the currently authenticated Clarify user, including timezone and workspace details.

    Inputs

    mcp_client_timezonestring
    Your IANA timezone string (e.g. America/New_York). Helps Clarify show times in your local timezone.
  • clarifymcp_get_listsList saved views (dynamic lists) for an entity type, or fetch a single list by ID.Read-only

    Get Lists

    List saved views (dynamic lists) for an entity type, or fetch a single list by ID.

    Inputs

    entitystringrequired
    The entity type to operate on (e.g. person, company, deal, or a custom object identifier like c_my_object).
    limitnumber
    Maximum number of records to return per page.default 10
    list_idstring
    The ID of an existing list (saved view). Use get_lists to find available list IDs.
    offsetnumber
    Number of records to skip for pagination (use with limit).default 0
    searchstring
    Case-insensitive substring search to filter results by name or title.
  • clarifymcp_get_recordsRetrieve full details for one or more Clarify records by their IDs.Read-only

    Get Records

    Retrieve full details for one or more Clarify records by their IDs.

    Inputs

    entitystringrequired
    The entity type to operate on (e.g. person, company, deal, or a custom object identifier like c_my_object).
    idsarrayrequired
    Array of record IDs to retrieve. Use query_data to find IDs first.