Module 02 · Outreach

Let your agent reach out. We make sure it's safe.

Your agent — Claude, Grok Bot or any MCP client — decides who to contact and what to say. RecruitMCP decides when, and whether it's safe for your LinkedIn account: human pace, working hours, warm-up, and a stop the moment someone replies.

Grok Bot · RecruitMCP connectedexample data
  1. You: Use RecruitMCP. Write a 3-step LinkedIn sequence for these 10 people: invite with a note, a message 2 days after they accept, one follow-up after 5 days. Show me everything, don't send.
  2. Tool call: save_sequence { name: "Platform Ghent", steps: 3 }
  3. Check: ✓ 10 messages written by your agent, one per person
  4. Tool call: enroll_candidates { sequence_id: "seq_P1", candidates: [10] }
  5. Check: ✓ 2 skipped — already contacted
  6. Check: ✓ Schedule built — today's limit: 11 invites (warm-up day 6), spread 45–180 s apart, 09:12–16:40
  7. Waiting for you: ⏸ Preview ready. Confirm to schedule?
  8. You: Confirm.
  9. Tool call: enroll_candidates { sequence_id: "seq_P1", confirm: true }
  10. Result: ← 8 scheduled · 2 skipped · follow-ups wait for an accept
  11. Note: ! A reply stops the sequence. Replies always need your OK.
invites / day
20
invites / week
100
warmup from 0.4×
14 d
between actions
45–180 s

// hard ceilings from src/lib/outreach/limits.ts

The missing piece

Agents can write. They can't pace.

Agents can write a good message. What they can't do is know your account's limits, wait for working hours, notice that someone already replied, or slow down when LinkedIn pushes back. That's the part RecruitMCP owns.

  1. 01

    You give it

    A list (from Sourcing or your own), the steps, and the messages your agent wrote.

  2. 02

    RecruitMCP does

    Previews every message with its planned send time, schedules within your account's limits, checks for replies before every follow-up, and pauses itself if something looks wrong.

  3. 03

    You decide

    Approve the batch, edit any message, pause or stop any time. Replies always come back to you.

Preview

A sample sequence, with send times.

enroll_candidates · preview · Lotte V. — Data Engineer, Acme Retailexample data
  1. 1

    Tue 09:41 · LinkedIn invite + note

    "Hi Lotte, I'm working on a data platform role in Antwerp built around the dbt migration you described. Open to a short chat?"

  2. 2

    2 days after accept, 10:15 · Message

    "Thanks for connecting. Here's the brief in three lines…"

  3. 3

    5 days later, 14:20 · Follow-up

    Skipped automatically if Lotte has replied.

Example data.

A working day, as the scheduler sees it

Sends happen Monday to Friday between 08:00 and 19:00 Europe/Brussels. Spacing is tightest between 10:00 and 16:00. Gaps are 3 times longer during lunch, from 12:00 to 13:00, and 1.5 times longer off-peak.

Default Mon–Fri, Europe/Brussels. Each slot also shifts by up to 15 minutes.

Safety layer

What we enforce on LinkedIn.

  • Human pace.

    20 invites a day and 100 a week by default (75 a week without a note). 25 new conversations a day.

  • Warm-up.

    A 14-day ramp starting at 40% of the limit, from your first campaign.

  • No identical days.

    The daily limit varies a little (up to 15% lower), so your account never hits the same number every day.

  • Spacing.

    45–180 seconds between actions, slower outside peak hours and much slower over lunch.

  • Working hours.

    Only on the days and hours you set, in your time zone. The default is Monday to Friday, 08:00–19:00.

  • Reply check before every follow-up.

    The conversation is checked again right before sending. A reply stops the sequence.

  • Auto-pause.

    If LinkedIn reports a limit or your account has a problem, sending pauses until it's safe.

  • Account health.

    Disconnects are tracked; an account that keeps dropping is held for review instead of reconnecting and flooding its backlog.

  • Your country.

    Your account connects through a secure login link and a connection in your own country. We never see your password.

Limits you can change

You can always lower limits. You can raise them only after acknowledging the risk, per account. We show what changes and what it means.

Replies

Replies land in one inbox your agent can read. Ask it to draft answers — it never sends without you.

Outreach v1 sends from your LinkedIn account: invites, messages, profile views, and withdrawals. You sign in through a hosted link. LinkedIn does not allow automation of your LinkedIn account, and no tool can promise zero risk.

Plays

Plays for outreach.

  • Preview first

    “Schedule these 15 but show every message and send time first.”

  • Invite-first

    “Invite with note, message after accept, stop on reply.”

  • Gentle follow-up

    “For people who accepted but never answered, one follow-up next week.”

  • Reply triage

    “Who replied today? Draft an answer for each, don't send.”

  • Check limits

    “How many invites can I still send today and this week?”

  • Pause

    “Pause everything on my account until Monday.”

Reference

Tools and endpoints.

  • connect_outreach_account

    €49 / account / mo

    POST /v1/outreach/accounts

    A hosted sign-in link for your LinkedIn account. We never see the password.

  • get_outreach_limits

    free

    GET /v1/outreach/accounts/{account_id}/limits

    Effective caps after warmup and the daily downward jitter.

  • save_sequence

    free

    POST /v1/outreach/sequences

    Steps and copy your agent wrote. Nothing is sent.

  • enroll_candidates

    preview · confirm

    POST /v1/outreach/enrollments

    Preview first: rendered text, dedup against everyone already contacted, each scheduled time. Confirm schedules the batch.

  • approve_message

    confirm

    POST /v1/outreach/actions/{action_id}/approve

    Release one held message when every message needs your approval.

  • send_reply

    confirm

    POST /v1/outreach/conversations/{conversation_id}/replies

    Queues a reply in an existing thread. There is no auto-reply.

  • update_enrollment

    no confirm

    POST /v1/outreach/enrollments/{enrollment_id}/pause

    Pause or stop at once. Resume needs confirm and respects cap pauses.

  • get_outreach_activity

    free

    GET /v1/outreach/actions

    Action log: scheduled time, outcome, and error category.

€49 per connected account per month. Sends are not billed in credits, because a message should not be a reason to send more.

# Free: rendered copy, dedup, and the slot each send gets
curl -X POST "https://api.recruitmcp.com/v1/outreach/enrollments?dry_run=true" \
  -H "Authorization: Bearer $RECRUITMCP_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sequence_id":"seq_P1","run_id":"run_5Tz8","limit":12}'

# Schedules under the caps. Nothing is sent outside working hours.
curl -X POST https://api.recruitmcp.com/v1/outreach/enrollments \
  -H "Authorization: Bearer $RECRUITMCP_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: platform-ghent-01" \
  -d '{"sequence_id":"seq_P1","run_id":"run_5Tz8","limit":12}'

Outreach, answered

Is automation allowed by LinkedIn?

LinkedIn doesn't allow automated activity. RecruitMCP keeps activity at a human pace within conservative limits, but no tool can promise zero risk. Your account stays yours and under your control.

Who writes the messages?

Your agent, with your instructions. RecruitMCP doesn't rewrite them.

Can my agent send on its own?

Only within a batch you approved. Replies to candidates always need your OK.

What if someone replies between two steps?

The next step checks the conversation first and doesn't send.

Can I go faster?

Lower is always possible. Higher only after an explicit risk acknowledgement on that account, which we record.

Does it work with InMail?

Not in v1. Outreach sends LinkedIn invites, messages, profile visits and invite withdrawals. No InMail and no email.

Outreach docs

Use cases: Let your agent write the invites, and RecruitMCP pick the send times, Follow up without talking over a reply.

Connect one account and preview a sequence.

All safety limits, warm-up, reply checks and the inbox are included.