Outreach & Messaging

LinkedIn Outreach & Inbox Management

Send personalized messages, organize your inbox with labels and split views, snooze conversations for follow-up, schedule messages, and smart-archive stale threads. Full inbox management through your AI assistant or API.

17 Tools for Outreach & Messaging

Each tool is available as an MCP tool for AI agents or as a REST API endpoint.

Send Message

Write

Send a message in an existing LinkedIn conversation. Only works for EXISTING conversations. If you haven't messaged this person before, use start_conversation instead. Requires the chat_id from list_conversations. Supports campaign tagging for tracking outbound activity.

send_message

Send Connection Request

Write

Send a LinkedIn connection request to someone. Optionally include a personal message (max 300 characters) to increase acceptance rates. Automatically resolves profile URLs and slugs to provider IDs. Supports campaign tagging for tracking outbound connection activity.

send_invitation

Send InMail

Write

Send an InMail message to someone outside your direct network. InMail lets you reach 2nd and 3rd degree connections without needing a connection first. Requires InMail credits on the sender's LinkedIn account. Supports optional subject lines and campaign tagging.

send_inmail

Start Conversation

Write

Start a new LinkedIn message conversation with one or more people. Use this to send the FIRST message to someone. For follow-up messages in an existing conversation, use send_message with the chat_id. Accepts LinkedIn profile IDs or URLs as recipients. Supports group conversations with multiple attendees. Automatically resolves profile URLs to provider IDs.

start_conversation

Get Messages

Read

Get messages from a specific LinkedIn conversation by chat ID. Returns the full message history with sender names, message text, and timestamps. Supports pagination for long conversations. Use list_conversations first to get the chat_id.

get_messages

List Conversations

Read

List your LinkedIn message conversations with contact names, last message preview, and timestamps. Returns chat_id needed by send_message. If you need to message someone new, skip this and use start_conversation. Supports pagination for navigating through your full inbox.

list_conversations

Label Conversation

Write

Add a custom label to a LinkedIn conversation for organization and split inbox views. Labels like 'Hot Lead', 'Client', or 'Candidate' help you filter and prioritize your inbox. A conversation can have multiple labels. Idempotent - adding the same label twice has no effect.

label_conversation

List Conversation Labels

Read

List all labels in use across your conversations with counts. Returns an array sorted by count descending. Use these labels with list_conversations to filter by label for split inbox views.

list_labels

Snooze Conversation

Write

Snooze a conversation to hide it from your inbox until the specified time. When the reminder fires, the conversation resurfaces at the top of your inbox. If the other person replies before the reminder fires, it auto-cancels so you see the reply immediately. Optionally attach a note to remind yourself why you snoozed it.

snooze_conversation

Schedule Message

Write

Schedule a message to be sent in a conversation at a future time. Works outside of campaigns for loose follow-ups like 'message them in 2 weeks'. The message is auto-sent at the specified time. If they reply before then, the scheduled message is auto-cancelled.

schedule_message

List Reminders

Read

List all pending snooze reminders and scheduled messages. Shows what's snoozed, what messages are queued, and when they fire. Filter by status: pending (default), fired, cancelled, sent, failed, or 'all'.

list_reminders

Smart Archive Conversation

Write

Archive a conversation with smart auto-return. Unlike LinkedIn's native archive, the conversation automatically resurfaces in your inbox when the other person sends a new message. Great for cleaning up your inbox without losing track of conversations.

smart_archive

Bulk Archive Conversations

Write

Archive all stale conversations older than N days (default 30, min 7). Only archives conversations where you sent the last message and got no reply. All archived conversations auto-return when the other person replies. Use dry_run=true to preview without archiving.

bulk_archive

Create Campaign

Write

Create a new campaign for tracking outbound LinkedIn actions. Campaign IDs are user-defined slugs (e.g. 'q1-fintech-outreach'). Once created, tag any send_message, send_invitation, create_post, or other action with the campaign_id to track performance.

create_campaign

List Campaigns

Read

List your campaigns with action counts. Returns active campaigns by default, with an option to include archived ones. Shows campaign name, creation date, and total actions tracked under each campaign.

list_campaigns

Archive Campaign

Caution

Archive a campaign. Archived campaigns stop accepting new actions but all historical data is preserved for reporting. Use this to close out completed campaigns and keep your active campaign list clean.

archive_campaign

Get Campaign Stats

Read

Get detailed campaign performance stats: action counts by tool type, daily breakdown of activity, and per-account breakdown for multi-account setups. Supports a configurable lookback window for time-bounded reporting.

get_campaign_stats

Use Cases

Here's how teams use Crispy's outreach & messaging tools in their day-to-day workflows.

Personalized outreach at scale

Have your AI agent research each prospect and craft a unique message based on their profile, recent posts, and shared connections.

Example prompt

Research this prospect's profile, then send them a connection request mentioning their recent post about AI

Multi-step drip campaigns

Build automated sequences: connection request, follow-up message after acceptance, then a meeting request - all managed by your AI agent.

Example prompt

Create a 3-step outreach campaign targeting CTOs at fintech startups in London

Manage inbox at scale

Label conversations as 'Hot Lead' or 'Client', snooze threads for follow-up, schedule messages for later, and bulk-archive stale conversations. Split inbox views let you focus on what matters.

Example prompt

Check my inbox, label any VP+ conversations as 'Hot Lead', snooze the rest for next week, and archive anything older than 30 days

InMail outreach to non-connections

Reach prospects outside your network with InMail. Crispy handles the full lifecycle from send to tracking opens.

Example prompt

Send an InMail to this Sales Navigator lead introducing our product

Sync conversations to your CRM

Connect Crispy alongside HubSpot, Salesforce, or Pipedrive MCP servers. Your AI agent automatically logs new LinkedIn contacts and conversation summaries to your CRM - zero middleware required.

Example prompt

Sync all my unread LinkedIn conversations to Salesforce and create contacts for anyone new

Get started in 3 steps

1

Sign up

Create your Crispy account. No credit card required for the first setup.

2

Connect LinkedIn

Link your LinkedIn account from the dashboard. Takes 30 seconds.

3

Start using

Add Crispy to Claude, Cursor, or any MCP client - or call the REST API directly.

$49/seat/mo. Everything included.

No API call limits. All 164 tools. Cancel anytime.

View pricing

Frequently Asked Questions

Will my LinkedIn account get restricted?

Crispy respects LinkedIn's rate limits and includes a built-in Safety Calculator to help you stay within safe thresholds. We recommend gradual ramp-up for new accounts.

Can I schedule messages to send later?

Yes. Use schedule_message to send a message at any future time. It works outside of campaigns for loose follow-ups. If the person replies before the scheduled time, the message auto-cancels.

How many messages can I send per day?

LinkedIn has its own daily limits (typically 100-150 connection requests, 50-100 messages). Crispy enforces these limits to protect your account.

Does Crispy store my message content?

Messages are sent directly through your LinkedIn session. In managed mode, contacts and activity metadata are stored for Unibox. In BYOS or stateless mode, you control what's retained.

Can I use templates with personalization variables?

Your AI agent handles personalization natively - it can pull profile data and weave it into messages dynamically. No rigid template system needed.

Can I sync LinkedIn conversations to my CRM?

Yes. Connect Crispy and your CRM's MCP server (HubSpot, Salesforce, Pipedrive) to the same AI agent. Say 'sync my LinkedIn conversations to my CRM' and the agent handles contact creation, conversation logging, and deal updates. No custom code, no Zapier - just two MCP servers working together.

The complete LinkedIn API. Ready when you are.

Connect your first LinkedIn profile in under 5 minutes. All 164 tools. Safe limits, warm-up, and full permission control built in.