smartlead-mcp-by-leadmagic
Version:
💜 The Premier Model Context Protocol Server for SmartLead's Cold Email Automation Platform - Complete API coverage with 116+ tools for campaign management, lead tracking, smart delivery, and analytics. Beautiful purple-gradient installer, zero-config set
106 lines • 3.67 kB
TypeScript
/**
* SmartLead MCP Server - Lead Management Client
*
* Client module for lead management API endpoints.
* Handles all lead-related operations including CRUD operations, status management, and messaging.
*
* @author LeadMagic Team
* @version 1.5.0
*/
import { BaseSmartLeadClient } from '../../client/base.js';
import type { Lead, ListLeadsByCampaignRequest, ReplyToLeadFromMasterInboxRequest, SuccessResponse, UpdateLeadByIdRequest } from '../../types.js';
export interface FetchAllLeadsFromAccountParams {
limit?: number;
offset?: number;
search?: string;
status?: string;
}
export interface FetchLeadsFromGlobalBlocklistParams {
limit?: number;
offset?: number;
}
export interface ForwardReplyRequest {
forward_to_email: string;
message?: string;
include_original?: boolean;
}
/**
* Lead Management Client
*
* Provides methods for managing SmartLead leads including:
* - Adding and updating leads
* - Managing lead status and categories
* - Lead messaging and communication
* - Global blocklist management
*/
export declare class LeadClient extends BaseSmartLeadClient {
/**
* List all leads by campaign ID
*/
listLeadsByCampaign(campaignId: number, params?: ListLeadsByCampaignRequest): Promise<SuccessResponse>;
/**
* Fetch lead categories
*/
fetchLeadCategories(): Promise<SuccessResponse>;
/**
* Fetch lead by email address
*/
fetchLeadByEmail(email: string): Promise<SuccessResponse>;
/**
* Add leads to a campaign by ID
*/
addLeadsToCampaign(campaignId: number, leads: Lead[]): Promise<SuccessResponse>;
/**
* Resume lead by campaign ID
*/
resumeLeadByCampaign(campaignId: number, leadId: number): Promise<SuccessResponse>;
/**
* Pause lead by campaign ID
*/
pauseLeadByCampaign(campaignId: number, leadId: number): Promise<SuccessResponse>;
/**
* Delete lead by campaign ID
*/
deleteLeadByCampaign(campaignId: number, leadId: number): Promise<SuccessResponse>;
/**
* Unsubscribe/Pause lead from campaign
*/
unsubscribeLeadFromCampaign(campaignId: number, leadId: number): Promise<SuccessResponse>;
/**
* Unsubscribe lead from all campaigns
*/
unsubscribeLeadFromAllCampaigns(leadId: number): Promise<SuccessResponse>;
/**
* Add lead/domain to global block list
*/
addLeadToGlobalBlocklist(email: string): Promise<SuccessResponse>;
/**
* Fetch all leads from entire account
*/
fetchAllLeadsFromAccount(params?: FetchAllLeadsFromAccountParams): Promise<SuccessResponse>;
/**
* Fetch leads from global block list
*/
fetchLeadsFromGlobalBlocklist(params?: FetchLeadsFromGlobalBlocklistParams): Promise<SuccessResponse>;
/**
* Update lead using the lead ID
*/
updateLeadById(leadId: number, leadData: UpdateLeadByIdRequest): Promise<SuccessResponse>;
/**
* Update a lead's category based on their campaign
*/
updateLeadCategory(campaignId: number, leadId: number, category: string): Promise<SuccessResponse>;
/**
* Fetch lead message history based on campaign
*/
fetchLeadMessageHistory(campaignId: number, leadId: number): Promise<SuccessResponse>;
/**
* Reply to lead from master inbox via API
*/
replyToLeadFromMasterInbox(campaignId: number, leadId: number, message: ReplyToLeadFromMasterInboxRequest): Promise<SuccessResponse>;
/**
* Forward a reply
*/
forwardReply(campaignId: number, leadId: number, forwardData: ForwardReplyRequest): Promise<SuccessResponse>;
}
//# sourceMappingURL=client.d.ts.map