Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

ListenLabs MCP connector

OAuth 2.1/DCRAnalyticsAI

Listen Labs is a qualitative research platform for creating, launching, and analyzing studies with AI assistance. This MCP connector gives AI agents...

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

Connect this agent connector to let your agent:

  • Search across studies — Search across study metadata using a text query
  • Study publish, launch, edit — Publish the study’s current draft revision so respondents see the latest version
  • List studies, creatable orgs — List studies accessible to the authenticated user
  • Get study state, study responses, study analysis — Return the current state of a study — title, audience, study guide, questions, screener, and recruitment details
  • Create study — Start a new guided user-interview study

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.

listenlabsmcp_create_study#Start a new guided user-interview study. Provide a plain-language description of the study goals and target audience. The platform's creation agent walks through onboarding stages; subsequent turns must use edit_study with the returned studyId and chatId.3 params

Start a new guided user-interview study. Provide a plain-language description of the study goals and target audience. The platform's creation agent walks through onboarding stages; subsequent turns must use edit_study with the returned studyId and chatId.

NameTypeRequiredDescription
promptstringrequiredPlain-language description of the study to create (goals, who to interview, what to learn)
orgIdstringoptionalOrganization UUID when known (e.g. from list_creatable_orgs)
orgNamestringoptionalOrganization name to create the study in. Required when the user belongs to multiple organizations.
listenlabsmcp_edit_study#Send a natural-language edit instruction or structured button event to the study creation agent. Use after create_study (pass the chatId) for guided onboarding, or with a fresh chatId for direct edits to an existing study. Supply either prompt or buttonClick, not both.4 params

Send a natural-language edit instruction or structured button event to the study creation agent. Use after create_study (pass the chatId) for guided onboarding, or with a fresh chatId for direct edits to an existing study. Supply either prompt or buttonClick, not both.

NameTypeRequiredDescription
studyIdstringrequiredUUID of the study to edit
buttonClickobjectoptionalStructured button event from the guided onboarding flow
chatIdstringoptionalChat session ID from create_study or a previous edit_study call. Omit on the first turn.
promptstringoptionalFree-form instruction or user input for the study agent
listenlabsmcp_get_response#Deep-dive into a single respondent's interview. Returns a structured transcript with question tracking, input types, multiple choice data, and source URLs for each message. Paginated for large interviews.3 params

Deep-dive into a single respondent's interview. Returns a structured transcript with question tracking, input types, multiple choice data, and source URLs for each message. Paginated for large interviews.

NameTypeRequiredDescription
readable_idnumberrequiredRespondent number from get_study_responses
study_idstringrequiredStudy ID (UUID) from list_studies
cursorstringoptionalPagination cursor for long transcripts
listenlabsmcp_get_study_analysis#Get the AI-generated analysis report for a study, rendered as markdown. Use list_studies first to find studies where has_analysis is true. The report includes sourced respondent quotes with deep-links to the original transcript messages.1 param

Get the AI-generated analysis report for a study, rendered as markdown. Use list_studies first to find studies where has_analysis is true. The report includes sourced respondent quotes with deep-links to the original transcript messages.

NameTypeRequiredDescription
study_idstringrequiredStudy ID (UUID) from list_studies
listenlabsmcp_get_study_responses#Get response transcripts for a study. Returns formatted interview transcripts with pagination. Each respondent answer includes a source link to that exact message in the transcript.5 params

Get response transcripts for a study. Returns formatted interview transcripts with pagination. Each respondent answer includes a source link to that exact message in the transcript.

NameTypeRequiredDescription
study_idstringrequiredStudy ID (UUID) from list_studies
cursorstringoptionalPagination cursor from previous response
max_responsesnumberoptionalMaximum number of responses to return (default 10, max 50)
question_numbersarrayoptionalOnly include these question numbers in the transcript (1-indexed)
readable_idsarrayoptionalFilter to specific respondents by their readable ID numbers
listenlabsmcp_get_study_state#Return the current state of a study — title, audience, study guide, questions, screener, and recruitment details. Also includes launch eligibility, credit balance, and per-recruitment cost. Call before edit_study or launch_study to inspect the current study configuration.1 param

Return the current state of a study — title, audience, study guide, questions, screener, and recruitment details. Also includes launch eligibility, credit balance, and per-recruitment cost. Call before edit_study or launch_study to inspect the current study configuration.

NameTypeRequiredDescription
studyIdstringrequiredUUID of the study to inspect
listenlabsmcp_launch_study#Publish the study's draft revision (if needed) and start all unlaunched recruitments that fit the organization's credit balance. Recruitments are launched greedily in dashboard order. Returns launched and skipped recruitments with balance before/after. Safe to re-call — already-launched recruitments are skipped.1 param

Publish the study's draft revision (if needed) and start all unlaunched recruitments that fit the organization's credit balance. Recruitments are launched greedily in dashboard order. Returns launched and skipped recruitments with balance before/after. Safe to re-call — already-launched recruitments are skipped.

NameTypeRequiredDescription
studyIdstringrequiredUUID of the study to launch
listenlabsmcp_list_creatable_orgs#List organizations the user belongs to where they can create studies. Returns org ID, name, and role. Supports pagination and case-insensitive name search. Call before create_study when the user has not specified an organization.3 params

List organizations the user belongs to where they can create studies. Returns org ID, name, and role. Supports pagination and case-insensitive name search. Call before create_study when the user has not specified an organization.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor from a previous call's nextCursor
limitintegeroptionalPage size (default 10, max 25)
textHintstringoptionalCase-insensitive substring to filter org names by
listenlabsmcp_list_studies#List studies accessible to the authenticated user. Returns study ID, name, status, creation date, response count, and whether analysis is available. Paginated (50 per page). Use textHint to filter by study title; use cursor for pagination.3 params

List studies accessible to the authenticated user. Returns study ID, name, status, creation date, response count, and whether analysis is available. Paginated (50 per page). Use textHint to filter by study title; use cursor for pagination.

NameTypeRequiredDescription
cursorstringoptionalPagination cursor from previous response
statusstringoptionalFilter by study status
textHintstringoptionalCase-insensitive substring to filter study titles by
listenlabsmcp_publish_study#Publish the study's current draft revision so respondents see the latest version. No-op when the draft is identical to prod. Does not start recruitments — use launch_study to begin sourcing respondents.1 param

Publish the study's current draft revision so respondents see the latest version. No-op when the draft is identical to prod. Does not start recruitments — use launch_study to begin sourcing respondents.

NameTypeRequiredDescription
studyIdstringrequiredUUID of the study to publish
listenlabsmcp_search_across_studies#Search across study metadata using a text query. Returns matching studies with relevant context.2 params

Search across study metadata using a text query. Returns matching studies with relevant context.

NameTypeRequiredDescription
querystringrequiredSearch term to find across studies
max_resultsnumberoptionalMaximum number of results to return (default 10)