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.
Module 02 · Outreach
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.
// hard ceilings from src/lib/outreach/limits.ts
The missing piece
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.
01
A list (from Sourcing or your own), the steps, and the messages your agent wrote.
02
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.
03
Approve the batch, edit any message, pause or stop any time. Replies always come back to you.
Preview
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 days after accept, 10:15 · Message
"Thanks for connecting. Here's the brief in three lines…"
5 days later, 14:20 · Follow-up
Skipped automatically if Lotte has replied.
Example data.
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
20 invites a day and 100 a week by default (75 a week without a note). 25 new conversations a day.
A 14-day ramp starting at 40% of the limit, from your first campaign.
The daily limit varies a little (up to 15% lower), so your account never hits the same number every day.
45–180 seconds between actions, slower outside peak hours and much slower over lunch.
Only on the days and hours you set, in your time zone. The default is Monday to Friday, 08:00–19:00.
The conversation is checked again right before sending. A reply stops the sequence.
If LinkedIn reports a limit or your account has a problem, sending pauses until it's safe.
Disconnects are tracked; an account that keeps dropping is held for review instead of reconnecting and flooding its backlog.
Your account connects through a secure login link and a connection in your own country. We never see your password.
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 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
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
POST /v1/outreach/accounts
A hosted sign-in link for your LinkedIn account. We never see the password.
GET /v1/outreach/accounts/{account_id}/limits
Effective caps after warmup and the daily downward jitter.
POST /v1/outreach/sequences
Steps and copy your agent wrote. Nothing is sent.
POST /v1/outreach/enrollments
Preview first: rendered text, dedup against everyone already contacted, each scheduled time. Confirm schedules the batch.
POST /v1/outreach/actions/{action_id}/approve
Release one held message when every message needs your approval.
POST /v1/outreach/conversations/{conversation_id}/replies
Queues a reply in an existing thread. There is no auto-reply.
POST /v1/outreach/enrollments/{enrollment_id}/pause
Pause or stop at once. Resume needs confirm and respects cap pauses.
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}'
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.
Your agent, with your instructions. RecruitMCP doesn't rewrite them.
Only within a batch you approved. Replies to candidates always need your OK.
The next step checks the conversation first and doesn't send.
Lower is always possible. Higher only after an explicit risk acknowledgement on that account, which we record.
Not in v1. Outreach sends LinkedIn invites, messages, profile visits and invite withdrawals. No InMail and no email.
All safety limits, warm-up, reply checks and the inbox are included.