Sales Team Lead

Scale your team's LinkedIn outreach without the chaos

Each rep connects their own profile. You get campaign analytics and usage visibility. No credential sharing, no compliance headaches.

Challenges you know too well

Sound familiar? Here's how Crispy solves each one.

No visibility into team activity

You have no idea how many connection requests each rep is sending or what their response rates look like.

Solution: Crispy's analytics tools show per-rep activity, campaign performance, and response rates in one dashboard.

Credential sharing risks

Reps share LinkedIn passwords with automation tools, or worse, with each other. IT and legal hate it.

Solution: Each rep connects their own LinkedIn from the dashboard. Connection material is handled under Crispy's Privacy Policy, and each account is isolated.

Legal and compliance risk

Scraping tools store prospect data in third-party databases. GDPR and your legal team say no.

Solution: Crispy documents its managed-storage, data-rights, retention, and deletion lifecycle. Legal review remains specific to each customer's requirements.

Cost at scale

Legacy tools lock every rep into a rigid dashboard. Changing your messaging means updating sequences in a UI, not telling your AI what to do differently.

Solution: Each rep gets an AI agent with the full LinkedIn surface area. Update the strategy once, it applies everywhere.

Onboarding friction

New reps take weeks to learn complex automation dashboards. They abandon the tool and go back to manual.

Solution: Reps use AI agents (Claude, Cursor) with natural language. No dashboard to learn, just describe what you need.

How it works

From setup to results in 5 steps.

1

Create your organization

Sign up for Crispy. Create your org and set team-wide outreach guidelines and safety limits.

2

Invite your reps

Send invite links. Each rep connects their own LinkedIn profile, takes 2 minutes per person.

3

Scope permissions

Assign permission levels per rep: read-only for analysts, outbound for SDRs, full access for senior reps.

4

Run campaigns

Reps create and manage campaigns via AI agents. Automated sequences with connection requests and follow-ups.

Example prompt

“Create a campaign targeting CTOs at mid-market companies in our ICP. Send connection request, wait 3 days, then follow up.”

5

Track team performance

Pull analytics across all reps, connection rates, response rates, meetings booked. Identify top performers and winning templates.

Example prompt

“Show me each rep's campaign stats for this month sorted by reply rate”

Key tools for sales team leads

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

Create or Update Campaign

Write

Creates a new campaign or updates an existing one in a single call. Omit campaign_id to create (requires name, kind, and either a list_id or inline contacts) or provide it to update. Choose acquisition for invite-based outreach to new first-degrees or relationship for DM-only outreach to existing connections, with a URL-safe slug auto-derived from the name.

upsert_campaign

Get Campaign Variant Stats

Read

Returns per-step results from activities with a non-null variant_index. Fails with VARIANTS_NOT_APPLIED when a campaign contains variant copy on an unsupported send path, preventing silent partial attribution.

get_variant_stats

Send LinkedIn Invitation

Write

Send a LinkedIn connection invitation to a person identified by provider ID, profile slug, or full URL. You can attach a personal note of up to 300 characters, which meaningfully increases acceptance rates, and optionally attribute the action to a campaign for tracking. The tool enforces a 15-per-day safety limit and fails cleanly if you are already connected or an invitation is already pending.

send_invitation

Send LinkedIn Message

Write

Send a LinkedIn message to an existing conversation using its chat_id, or start a brand new conversation using the recipient's provider_id. Supports text up to 8000 characters, file and image attachments, and native voice notes up to 5MB that render as a playable waveform in the recipient's inbox. A built-in safety limit of 150 per day protects your account, and you can attribute the action to a campaign. Fails if neither chat_id nor provider_id is supplied.

send_message

Get Activity Analytics

Read

Returns a daily activity breakdown over a chosen window (default 7 days), covering invitations sent, messages, and posts. By default only actions taken through Crispy are counted, but you can set tracking_mode to 'all_activity' for full coverage of everything on the account. Returns empty rows for days with no recorded activity, making it easy to spot gaps in outreach cadence.

get_activity_analytics

Search LinkedIn People

Read

Search through the canonical 37-field people-search contract. Sales Navigator-only people filters return an error and zero results on Classic, no seat, or expired SN; no widened Classic search is called. Provider-native search_people.save_search is refused before transport; use Crispy-local save_search. Typed-v2 request construction is CODED and exact offline request bytes are ENFORCED. Provider filter behavior remains UNKNOWN and is not OBSERVED because no live provider call was authorized.

search_people

Example prompts

Copy these into Claude, Cursor, or any MCP client to get started.

Campaign setup

“Create a 3-step campaign: connect with a note about their recent funding round, wait 3 days, send a value prop message, wait 5 days, send a breakup message.”

Team analytics

“Pull activity analytics for all team members this week, connection requests sent, messages sent, and response rates.”

Territory assignment

“Search for VP of Sales at companies in DACH region with 100-500 employees. Split the list across my 5 SDRs.”

Template testing

“Compare reply rates across our 3 campaign templates this month. Which opening line performs best?”

Crispy at $49/seat/mo

Everything included per seat. Per-rep profiles, campaign management, and analytics.

Legacy tools give every rep a dashboard to click through. Crispy gives every rep an AI agent with the full LinkedIn surface area.

View pricing

Frequently Asked Questions

How do reps connect their LinkedIn accounts?

Each rep connects LinkedIn from their dashboard. Their account is linked to their seat, with connection material handled under Crispy's Privacy Policy.

Can I control what each rep can do?

Yes. Each account scope is full_access, core, or read_only. The names outbound and content are accepted and enforce the same tools as core. A read_only account can pull data without sending messages.

What happens if a rep leaves the team?

Remove their seat from your org. Their LinkedIn profile is disconnected immediately. Campaign data stays in your org for reporting.

Is there a risk to our company LinkedIn accounts?

Crispy applies a default daily cap per account and blocks the action when the cap in force is reached. A rep can set a lower cap. For invitations, Crispy rejects a cap above 50 per day. For the other main categories, Crispy does not enforce a maximum above the default. These controls do not guarantee against restriction.

How does billing work with volume discounts?

$49/seat/mo, or $39/seat/mo billed annually ($468/yr). Contact us for custom pricing on larger teams.

Run LinkedIn workflows from the AI client you already use.

Create your account, connect LinkedIn, create an API key, then add Crispy to your client. Review the docs for supported workflows and safety controls.