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
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. 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>Create the LeadIQ MCP connection
In AgentKit > Connections, create a LeadIQ MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for LeadIQ, so you don't need to register an OAuth app.
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.actionsconst connector = 'leadiqmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { 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 callconst result = await actions.executeTool({connector,identifier,toolName: 'leadiqmcp_browse_prospect_lists',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "leadiqmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize LeadIQ MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="leadiqmcp_browse_prospect_lists",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolleadiqmcp_browse_prospect_listsPaginate through the user's saved LeadIQ Prospector lists and return list metadata (id, name, description, status, visibility, dates).Read-onlyBrowse 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-onlyCheck 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-onlyFind 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-onlyFind 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-onlyFind 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-onlyGet 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-onlyGet 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-onlySearch 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).
leadiqmcp_verify_emailVerify any email address against LeadIQ's Email Verification Service and return a deliverability verdict: Verified, VerifiedLikely, Unverified, or Invalid.Read-onlyVerify Email
Verify any email address against LeadIQ's Email Verification Service and return a deliverability verdict: Verified, VerifiedLikely, Unverified, or Invalid. No credits consumed. Does not require an existing prospect — use as a pre-flight check before saving contact data.
Inputs
emailstringrequired- Email address to verify.
leadiqmcp_verify_prospect_emailRe-verify the work email already stored on a saved Prospector prospect and persist the updated status.Read-onlyVerify Prospect Email
Re-verify the work email already stored on a saved Prospector prospect and persist the updated status. No credits consumed. Returns the verdict (Verified, VerifiedLikely, Unverified, or Invalid) plus the updated prospect. Returns 409 if the prospect has no email on record. To verify an arbitrary email not tied to a prospect, use Verify Email instead.
Inputs
prospectIdstringrequired- Id of the saved prospect whose email to verify.
leadiqmcp_add_prospect_to_listCreate a new prospect and attach it to an existing LeadIQ Prospector list in one step.WriteAdd Prospect To List
Create a new prospect and attach it to an existing LeadIQ Prospector list in one step. Returns the full prospect record with emails, phones, company, and list memberships. No credits consumed for list management (contact data unlock costs happen separately via Enrich People). Confirm the destination list with the user before saving.
Inputs
listIdstringrequired- Destination list id (24-char hex ObjectId).
prospectobjectrequired- The prospect to create and attach to the list.
leadiqmcp_attach_prospect_to_listAttach an existing saved prospect (by id) to a list without creating a new record.WriteAttach Prospect To List
Attach an existing saved prospect (by id) to a list without creating a new record. No credits consumed. Idempotent — attaching the same prospect twice is safe. Use Add Prospect To List instead when you need to create and attach in one step.
Inputs
listIdstringrequired- Destination list id (24-char hex ObjectId).
prospectIdstringrequired- Id of the existing prospect to attach.
leadiqmcp_create_prospectCreate a standalone prospect record in LeadIQ Prospector without attaching it to any list.WriteCreate Prospect
Create a standalone prospect record in LeadIQ Prospector without attaching it to any list. No credits consumed for list management (contact data may have been unlocked separately via Enrich People). Not idempotent — each call creates a distinct record. To create and attach to a list in one step, use Add Prospect To List instead.
Inputs
firstNamestringrequired- First name.
lastNamestringrequired- Last name.
companystring- Company name.
companyDomainstring- Company domain.
companyIndustrystring- Company industry.
emailStatusstring- Verification status of the work email. Set only when the email was already vetted upstream (e.g. returned as verified by Enrich People). Omit if unknown.one of
UnverifiedVerifiedVerifiedLikely functionstring- Job function (e.g. Sales, Marketing, Engineering).
linkedinUrlstring- LinkedIn profile URL.
notesstring- Free-form notes about the prospect.
personIdstring- LeadIQ stable person id from a prior Enrich People result. Required to enable the verified-phone flow.
phonestring- Mobile or direct phone number. Pair with personId to enable the verified-phone flow.
senioritystring- Seniority level. Use Other when the title does not map cleanly.one of
VPManagerDirectorExecutiveSeniorIndividualContributorOther titlestring- Job title.
workEmailstring- Work email address, if known.
leadiqmcp_create_prospect_listCreate a new named prospect list in LeadIQ Prospector to organize and track leads.WriteCreate Prospect List
Create a new named prospect list in LeadIQ Prospector to organize and track leads. No credits consumed. After creation, use the returned list id with Add Prospect To List to populate it.
Inputs
namestringrequired- Name of the new prospect list.
descriptionstring- Optional free-form description of the list.
leadiqmcp_enrich_companiesLook up known companies in LeadIQ's B2B database by domain, name, LinkedIn URL, or LinkedIn ID and return firmographics, technographics, funding rounds, revenue range, NAICS/SIC codes, and social profiles.WriteEnrich Companies
Look up known companies in LeadIQ's B2B database by domain, name, LinkedIn URL, or LinkedIn ID and return firmographics, technographics, funding rounds, revenue range, NAICS/SIC codes, and social profiles. Batch up to 10 companies per call. Cost: 3 UC per result returned. Always obtain explicit user consent before calling, as the full query is a paid export.
Inputs
companiesarrayrequired- Up to 10 companies to look up. Identify each by domain, name, linkedinUrl, or linkedinId.
leadiqmcp_enrich_peopleLook up known people in LeadIQ's B2B database by LinkedIn URL, email, or name + company, and unlock verified work email and direct phone per person.WriteEnrich People
Look up known people in LeadIQ's B2B database by LinkedIn URL, email, or name + company, and unlock verified work email and direct phone per person. Batch up to 10 people per call. Cost: 0.1 UC profile (always), +1 UC/person for email, +10 UC/person for phone, +3 UC/company for firmographics. Default run unlocks email + phone (up to 11 UC/person); company unlock requires explicit consent. LeadIQ only bills for data returned.
Inputs
peoplearrayrequired- Up to 10 people to look up. Identify each by linkedinUrl (best), email, id, or fullName + company.
unlockCompanyboolean- Unlock company firmographics — domain, industry, employee range (3 UC per company returned). Default false. Always requires explicit user consent.
unlockPersonalPhoneboolean- Unlock personal phone, which is a direct business number (10 UC/person, always paired with work phone). Default true.
unlockWorkEmailboolean- Unlock work email (1 UC/person). Default true.
unlockWorkPhoneboolean- Unlock direct phone (10 UC/person, always paired with personal phone unlock). Default true.
No tools match.