docs outreach
Outreach overview
Your agent picks who and what. RecruitMCP decides when a send on your LinkedIn account is safe.
Your agent decides who to contact and what to say. RecruitMCP decides whether and when a send is safe: caps, warmup, working hours, spacing, reply-stop, and account health.
Outreach sends from the recruiter's own LinkedIn account. Steps are invite, message, profile_visit, and withdraw_invite, each with channel: "linkedin". Email and InMail are refused. There is no auto-reply: every reply is written by you or your agent and previewed before it is queued. The product page is Outreach.
Flow
- Connect an account. The recruiter signs in on a hosted page. We never see the password.
- Create a sequence. Nothing is sent.
- Preview an enrollment with
?dry_run=true: every rendered message, when each first step would go out, and who is skipped and why. - Enroll with an
Idempotency-Key. People already contacted, markeddo_not_contact, or suppressed are skipped. The rest are marked contacted in the seen register. - Read conversations. A reply stops the sequence for that person.
Enroll a guided run (run_id), a list (list_id), fetched people (profile_ids), or people you name (candidates) in one call.
Events
Outreach emits enrollment.created, action.sent, action.awaiting_approval, invite.accepted, reply.received, account.paused, outreach.cap_reached, and more. Send them to a webhook endpoint instead of polling.
Scopes
outreach:read reads. outreach:write connects accounts and edits sequences, settings, and caps, and can pause or stop, but sends nothing. outreach:send is required to enroll, resume, approve, send a single action, or reply. Give an agent that drafts but should not send a key without outreach:send.
Guarantees
Sends stay inside working hours and under the safety caps, including warmup and daily jitter. A reply stops the sequence. When a slot is not available, the server answers with next_available_at instead of sending early.
What it costs
Sends are not credits. A connected account is €49 per month (monthly_eur on the account), and cost.credits is 0 on every outreach call.
The full ceilings are on Safety limits. The script that previews, enrolls, pauses, and proves a raised cap needs acknowledgement is on Examples.