Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the LeadIQ MCP server

Vendor MCP
Open markdown

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

Tools
16
What they doRead · write · destructive
10 · 6 · 010 read6 write0 destructive
Users sign in with
OAuth app
Scalekit's or your own

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 LeadIQ MCP connection

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

    Scalekit credentials are available for LeadIQ, 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 = 'leadiqmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize LeadIQ 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: 'leadiqmcp_browse_prospect_lists',
    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
  • leadiqmcp_browse_prospect_listsPaginate through the user's saved LeadIQ Prospector lists and return list metadata (id, name, description, status, visibility, dates).Read-only

    Browse Prospect Lists

    Paginate through the user's saved LeadIQ Prospector lists and return list metadata (id, name, description, status, visibility, dates). No credits consumed. Use this to discover existing lists before adding prospects or picking a destination list.

    Inputs

    cursorstring
    Pagination cursor from a previous response's nextCursor. Omit on the first page.
    limitinteger
    Number of lists to return per page (1–100, default 25).
  • leadiqmcp_check_creditsReturn the user's current LeadIQ credit balance and live per-field unlock costs.Read-only

    Check Credits

    Return the user's current LeadIQ credit balance and live per-field unlock costs. No credits consumed. Call this before large paid operations (Enrich People, Find People, Find Companies firmographics) to confirm available credits and quote accurate costs. Prefer the returned live costs over hardcoded figures in other tools.

    Inputs

    This tool takes no inputs.

  • leadiqmcp_find_companiesDiscover companies matching ICP criteria in LeadIQ's B2B database — filter by industry, size, revenue, funding, technology stack, location, and more.Read-only

    Find Companies

    Discover companies matching ICP criteria in LeadIQ's B2B database — filter by industry, size, revenue, funding, technology stack, location, and more. Returns a list of companies with firmographic identity. Default cost: 3 UC/company (company unlock is on by default). Set unlockCompany=false for id + name only at 0.1 UC. Always obtain user consent before running with company unlock enabled.

    Inputs

    inputobjectrequired
    Search filters for company discovery.
    unlockCompanyboolean
    Return full company firmographics — domain, industry, employee count (3 UC/company). Default true. Set false for id + name only at 0.1 UC.
  • leadiqmcp_find_job_changesDiscover people who recently changed jobs or were promoted, matched against ICP criteria.Read-only

    Find Job Changes

    Discover people who recently changed jobs or were promoted, matched against ICP criteria. Returns each person's full transition (previous position and company → current position and company) as a buying or warm-intro trigger signal. Default cost: 0.1 UC/person (profile only). Company firmographics unlock costs 3 UC/person and requires consent. jobChangeFilter is required — use JobChange for company movers, TitleChange for in-place promotions.

    Inputs

    inputobjectrequired
    Search filters. jobChangeFilter is required.
    unlockCompanyboolean
    Unlock firmographics on both previous and current company blocks (3 UC/record). Default false. Requires user consent.
  • leadiqmcp_find_peopleDiscover new leads in LeadIQ's B2B database matching ICP criteria — filter by title, seniority, role, industry, technology stack, company size, revenue, funding, location, and hiring or promotion signals.Read-only

    Find People

    Discover new leads in LeadIQ's B2B database matching ICP criteria — filter by title, seniority, role, industry, technology stack, company size, revenue, funding, location, and hiring or promotion signals. Returns a flat list of people with current position and company identity. Default cost: 0.1 UC/person (profile only). Company firmographics unlock costs 3 UC/person and requires consent. Use Enrich People for known individuals; use this for open-ended prospecting.

    Inputs

    inputobjectrequired
    Search filters.
    unlockCompanyboolean
    Unlock company firmographics for each result (3 UC/person). Default false. Requires user consent.
  • leadiqmcp_get_prospectFetch a single saved Prospector prospect by id, returning the full record including LinkedIn URL, work email, phones, company, location, list memberships, and notes.Read-only

    Get Prospect

    Fetch a single saved Prospector prospect by id, returning the full record including LinkedIn URL, work email, phones, company, location, list memberships, and notes. No credits consumed. Reads data already saved in the user's account.

    Inputs

    idstringrequired
    Prospect id (24-char hex ObjectId).
  • leadiqmcp_get_prospect_listFetch a single LeadIQ Prospector list by id, including its paginated prospect records.Read-only

    Get Prospect List

    Fetch a single LeadIQ Prospector list by id, including its paginated prospect records. No credits consumed. Use this to inspect prospects already saved in a known list.

    Inputs

    idstringrequired
    List id (24-char hex ObjectId).
    prospectsCursorstring
    Pagination cursor from a previous call's prospects.nextCursor. Omit on the first page.
    prospectsLimitinteger
    Number of prospects to return per page (1–100, default 25).
  • leadiqmcp_search_prospectsSearch the user's saved Prospector prospects across all lists by email or full name.Read-only

    Search Prospects

    Search the user's saved Prospector prospects across all lists by email or full name. No credits consumed. Pass either email alone, or firstName + lastName together — mixed or partial queries are not supported. Use this to check for existing contacts before creating duplicates.

    Inputs

    cursorstring
    Pagination cursor from a prior nextCursor.
    emailstring
    Exact email to search by. Use alone (without firstName/lastName).
    firstNamestring
    First name. Must be used together with lastName.
    lastNamestring
    Last name. Must be used together with firstName.
    limitinteger
    Number of results per page (1–100, default 25).