Lemlist MCP for AI Agents

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Lemlist MCP or direct API to send personalized campaigns, manage leads, automate follow-ups, and track outreach results through natural language.
Trusted by
AWS
Glean
Zoom
Airtable

30 min · no commitment · see it on your stack

Lemlist Logo
Gradient Top
Gradient Middle
Gradient Bottom
divider

Try Lemlist now

Enter a prompt below to test the integration in our Tool Router playground. You'll be redirected to sign in and try it live.

Supported Tools

Tools
Create Company NoteTool to create a note attached to a specific company.
Delete ScheduleTool to delete a specific schedule by scheduleId.
Delete Unsubscribed EmailTool to delete an email from the unsubscribed list.
Unsubscribe Lead From CampaignTool to unsubscribe a lead from a campaign.
Get All WebhooksTool to retrieve the list of all webhooks configured for the team.
Get Campaign By IDTool to retrieve a specific campaign by campaignId.
Start Campaign ExportTool to start an asynchronous export of all campaign statistics (CSV).
Get Campaign Export StatusTool to check the status of an asynchronous campaign export.
Get Campaign SequencesTool to retrieve a list of all sequences for a campaign with steps and conditions.
Get Campaign StatsTool to retrieve performance statistics for a specific campaign within a date range.
Get Companies SchemaTool to retrieve the schema definition for companies in the people database.
Get Contact MessagesTool to retrieve all messages exchanged with a specific contact.
Get Database FiltersTool to retrieve available filters for searching the people and companies database.
Export Campaign LeadsTool to export campaign leads with state filtering and choose between JSON or CSV output.
Export UnsubscribesTool to download a CSV file containing all unsubscribed email addresses.
Get Unsubscribed EmailTool to retrieve a single unsubscribed email record.
Get LabelTool to retrieve information about a specific label by its ID.
List CampaignsTool to retrieve a list of campaigns for the team.
List TasksTool to retrieve all pending tasks assigned to team members.
List Team SendersTool to retrieve all team members and their associated campaigns.
List Watchlist SignalsTool to retrieve paginated watchlist signals with filtering and sorting.
Get People SchemaTool to retrieve the schema definition for people in the people database.
Retrieve ActivitiesTool to fetch recent campaign activities.
Retrieve Lead By EmailTool to retrieve a lead by their email address.
Retrieve UnsubscribesTool to retrieve the list of all people who are unsubscribed.
Get Team CreditsTool to retrieve credits left in the team.
Get Team InfoTool to retrieve information about your team.
Get UserTool to retrieve all information for a specific user by their ID.
Get User InfoTool to retrieve all information of the authenticated user.
List CompaniesTool to retrieve a paginated list of all companies in your CRM.
List Company NotesTool to retrieve all notes associated with a specific company.
List LabelsTool to list all labels available to your team.
Mark Lead as Not Interested in CampaignTool to mark a lead as not interested in a specific campaign.
Update CampaignTool to update settings of a campaign.
Update ScheduleTool to update an existing schedule with new parameters.
Update Sequence StepTool to update an existing step in a sequence (edit subject/message/delay/etc.
Add Step to SequenceTool to add a new step (email, LinkedIn, conditional, etc.
Add Unsubscribe Email/DomainTool to add an email or domain to the unsubscribed list.
Add Variables to LeadTool to add one or more variables to a lead.
Associate schedule with campaignTool to associate a schedule with a campaign.
Create CampaignTool to create a new campaign.
Create LabelTool to create a new label for inbox conversations.
Create Lead In CampaignTool to create a lead and add it to a specific campaign.
Create ScheduleTool to create a new schedule for the team.
Create TaskTool to create a manual task (opportunity) associated with a contact, company, or lead.
Ignore TasksTool to mark one or more tasks as ignored in Lemlist.
Mark Lead As InterestedTool to mark a lead as interested in all campaigns.
Mark Lead As Interested In CampaignTool to mark a lead as interested in a specific campaign.
Mark Lead As Not InterestedTool to mark a lead as not interested in all campaigns.
Pause a running campaignTool to pause a running campaign.
Pause LeadTool to pause a lead in all campaigns or a specific campaign.
Search Companies DatabaseTool to search the companies database using filters, keywords, and pagination.
Search People DatabaseTool to search the Lemlist people database using filters, keywords, and pagination.
Update TaskTool to update an existing task including assignment, scheduling, and status.
Python
TypeScript

Install Composio

python
pip install composio claude-agent-sdk
Install the Composio SDK and Claude Agent SDK

Create Tool Router Session

python
from composio import Composio
from claude_agent_sdk import ClaudeSDKClient, ClaudeAgentOptions

composio = Composio(api_key='your-composio-api-key')
session = composio.create(user_id='your-user-id')
url = session.mcp.url
Initialize the Composio client and create a Tool Router session

Connect to AI Agent

python
import asyncio

options = ClaudeAgentOptions(
    permission_mode='bypassPermissions',
    mcp_servers={
        'tool_router': {
            'type': 'http',
            'url': url,
            'headers': {
                'x-api-key': 'your-composio-api-key'
            }
        }
    },
    system_prompt='You are a helpful assistant with access to Lemlist tools.',
    max_turns=10
)

async def main():
    async with ClaudeSDKClient(options=options) as client:
        await client.query('Export campaign leads in CSV format for "Spring Outreach 2024" campaign')
        async for message in client.receive_response():
            if hasattr(message, 'content'):
                for block in message.content:
                    if hasattr(block, 'text'):
                        print(block.text)

asyncio.run(main())
Use the MCP server with your AI agent

Why Use Composio?

AI Native Lemlist Integration

  • Supports both Lemlist MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable tool execution
  • Rich coverage for reading, writing, and querying your Lemlist data

Managed Auth

  • Built-in API key handling with secure storage
  • Central place to manage, scope, and revoke Lemlist access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know what ran, when, and on whose behalf

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Lemlist
  • Scoped, least privilege access to Lemlist resources
  • Full audit trail of agent actions to support review and compliance

Frequently Asked Questions

Do I need my own developer credentials to use Lemlist with Composio?

Yes, Lemlist requires you to configure your own API key credentials. Once set up, Composio handles secure credential storage and API request handling for you.

Can I use multiple toolkits together?

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Is Composio secure?

Composio is SOC 2 and ISO 27001 compliant with all data encrypted in transit and at rest. Learn more.

What if the API changes?

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

Used by agents from

Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai
Context
Letta
glean
HubSpot
Agent.ai
Altera
DataStax
Entelligence
Rolai

Never worry about agent reliability

We handle tool reliability, observability, and security so you never have to second-guess an agent action.