Spaces

What your agent can do on LinkedIn

Connect your LinkedIn account once and your AI agent can use 102 tools on it, through one MCP server or the REST API. Every action stays inside the LinkedIn limits that keep the account safe.

In plain words

Every tool

Some tools work on every channel where the platform supports them. If LinkedIn does not support an action, Spaces returns an error and nothing is sent. Writes need an Idempotency-Key, so a retry never sends twice.

Conversations

What it doesMCP toolREST
Your conversations, newest first, with their tags and owner. Filter to unread, unanswered, a tag or an owner.list_messaging_chatsGET …/chats
The messages in one conversation.list_messaging_messagesGET …/chats/{chat_id}/messages
An image, file, voice note or video from a message.get_messaging_attachmentGET …/chats/{chat_id}/messages/{message_id}/attachments/{attachment_id}
Reply in a conversation, with text or attachments.reply_in_chatPOST …/chats/{chat_id}/messages
Start a new conversation with someone who expects to hear from you.start_chatPOST …/chats
The tags and the owner of a conversation.get_chat_tagsGET …/chats/{chat_id}/tags
Tag a conversation, such as lead, order or follow up. Sends nothing.set_chat_tagsPUT …/chats/{chat_id}/tags
Give a conversation to someone on your team. Sends nothing.set_chat_ownerPUT …/chats/{chat_id}/owner

Messages

What it doesMCP toolREST
People in a chat.list_chat_attendeesGET …/chats/{chat_id}/attendees
Mark a chat read, mute it, or take another chat action.update_chatPATCH …/chats/{chat_id}
Sync a chat from the start, or read the sync status.sync_chatGET …/chats/{chat_id}/sync
Messages across all conversations, with filters.list_messagesGET …/messages
People the account can message.list_attendeesGET …/attendees
One person you can message.get_attendeeGET …/attendees/{attendee_id}
A person’s profile picture.get_attendee_pictureGET …/attendees/{attendee_id}/picture
1:1 chats with an attendee.list_attendee_chatsGET …/attendees/{attendee_id}/chats
Messages with an attendee.list_attendee_messagesGET …/attendees/{attendee_id}/messages
React to a message.add_message_reactionPOST …/messages/{message_id}/reaction
Remove your reaction from a message.remove_message_reactionDELETE …/messages/{message_id}/reaction
Delete a chat. WhatsApp and LinkedIn.delete_chatDELETE …/chats/{chat_id}
Delete a message. WhatsApp and LinkedIn. LinkedIn only within about an hour.delete_messageDELETE …/messages/{message_id}
Edit a message. WhatsApp and LinkedIn Classic.edit_messagePATCH …/messages/{message_id}
Sync chats for an attendee.sync_attendeeGET …/attendees/{attendee_id}/sync

People

What it doesMCP toolREST
A person’s profile.get_profileGET …/users/{identifier}
The connected account profile.get_own_profileGET …/profile
Edit the connected profile. Only fields the channel allows are applied.edit_own_profilePATCH …/profile
Relations of the account. Paced like profile views.list_relationsGET …/relations
Accounts this account follows.list_followingGET …/following
Followers of this account.list_followersGET …/followers
Invitations waiting for this account.list_received_invitationsGET …/invitations/received
Accept or decline a received invitation.respond_to_invitationPOST …/invitations/received/{invitation_id}
Comments written by a person.list_user_commentsGET …/users/{identifier}/comments
Reactions by a person.list_user_reactionsGET …/users/{identifier}/reactions

Posts and comments

What it doesMCP toolREST
A person’s recent posts, with reactions and comments.list_user_postsGET …/users/{identifier}/posts
Your own posts with their numbers: likes or reactions, comments, reposts, impressions, and on LinkedIn clicks, engagement and reach.list_own_postsGET …/posts
One post with its numbers, including LinkedIn analytics for your own posts.get_postGET …/posts/{post_id}
Publish a post: text, images or video and a link preview on LinkedIn, where you can also reshare a post or post as a company page you manage; a feed post or story with a caption and location on Instagram.create_postPOST …/posts
Publish a post at a set local time, once or every week or month, with an optional first comment.schedule_postPOST …/scheduled-posts
Posts waiting to be published, and the ones already out.list_scheduled_postsGET /v1/messaging/scheduled-posts
Change a scheduled post, its time or how often it repeats.update_scheduled_postPATCH /v1/messaging/scheduled-posts/{scheduled_post_id}
Cancel a scheduled post.cancel_scheduled_postDELETE /v1/messaging/scheduled-posts/{scheduled_post_id}
Comments on a post.list_commentsGET …/posts/{post_id}/comments
Comment on a post, or answer a comment.comment_on_postPOST …/posts/{post_id}/comments
Delete one of your comments.delete_commentDELETE …/posts/{post_id}/comments/{comment_id}
React to a post.react_to_postPOST …/posts/{post_id}/reactions
React to a comment.react_to_commentPOST …/posts/{post_id}/comments/{comment_id}/reactions
Reactions on a post or, with comment_id, a comment.list_post_reactionsGET …/posts/{post_id}/reactions

LinkedIn invitations and search

What it doesMCP toolREST
Send a connection request, with an optional note.send_invitationPOST …/invitations
Connection requests you have sent.list_invitationsGET …/invitations
Withdraw a connection request.cancel_invitationDELETE …/invitations/{invitation_id}
Search LinkedIn for people, companies or posts.search_linkedinPOST …/search
InMail credit balance.get_inmail_balanceGET …/linkedin/inmail-balance
A LinkedIn company profile.get_companyGET …/linkedin/companies/{company_id}
Ids LinkedIn expects instead of raw search text.list_search_parametersGET …/linkedin/search/parameters
Estimated audience for an organization post.estimate_post_audienceGET …/linkedin/posts/audience

LinkedIn jobs and Recruiter

What it doesMCP toolREST
Recruiter hiring projects.list_hiring_projectsGET …/linkedin/hiring-projects
One hiring project.get_hiring_projectGET …/linkedin/hiring-projects/{project_id}
Recruiter or Sales Navigator action on a profile, such as saving a lead.linkedin_profile_actionPOST …/linkedin/users/{identifier}/action
Job posts on this LinkedIn account.list_job_postingsGET …/linkedin/jobs
One job post.get_job_postingGET …/linkedin/jobs/{job_id}
Create a job post draft.create_job_postingPOST …/linkedin/jobs
Edit a job post.edit_job_postingPATCH …/linkedin/jobs/{job_id}
Publish a job draft.publish_job_postingPOST …/linkedin/jobs/{job_id}/publish
Close a job post.close_job_postingPOST …/linkedin/jobs/{job_id}/close
Solve a job publishing checkpoint.solve_job_checkpointPOST …/linkedin/jobs/{job_id}/checkpoint
Sign out the current Recruiter session.sign_out_recruiterPOST …/linkedin/recruiter/sign-out
Sign out other Recruiter sessions for this seat.sign_out_other_recruiter_sessionsPOST …/linkedin/recruiter/sign-out-others
People who applied.list_applicantsGET …/linkedin/jobs/{job_id}/applicants
One applicant.get_applicantGET …/linkedin/jobs/{job_id}/applicants/{applicant_id}
Download an applicant resume.get_applicant_resumeGET …/linkedin/jobs/{job_id}/applicants/{applicant_id}/resume
Endorse a skill.endorse_skillPOST …/linkedin/users/{identifier}/endorse
Recruiter or Sales Navigator contracts.list_contractsGET …/linkedin/contracts
Select the contract used by this account.select_contractPOST …/linkedin/contracts/{contract_id}/select

Schedules and routines

What it doesMCP toolREST
Send a message at a set local time, inside working hours you choose.schedule_messagePOST /v1/messaging/schedules
Messages waiting to be sent.list_schedulesGET /v1/messaging/schedules
Change a scheduled message.update_schedulePATCH /v1/messaging/schedules/{schedule_id}
Cancel a scheduled message.cancel_scheduleDELETE /v1/messaging/schedules/{schedule_id}
An automation: answer from your notes, reply to comments and message the commenter once, tag chats, call a webhook or email a summary, on a schedule or when a message or comment arrives.create_routinePOST /v1/messaging/routines
Your automations.list_routinesGET /v1/messaging/routines
Change or pause an automation.update_routinePATCH /v1/messaging/routines/{routine_id}
Delete an automation.delete_routineDELETE /v1/messaging/routines/{routine_id}
What an automation did, and when.list_routine_runsGET /v1/messaging/routines/{routine_id}/runs

Pause and approvals

What it doesMCP toolREST
Stop every message, post, comment, invitation, scheduled message and routine at once. Reading keeps working.pause_all_sendingPOST /v1/messaging/pause
Start sending again after a pause. Waiting scheduled messages and routines carry on.resume_all_sendingPOST /v1/messaging/resume
Replies, new chats, posts and comments waiting for you to approve them.list_approvalsGET /v1/messaging/approvals
Send a waiting message or post as it is, or after you edit the text.approvePOST /v1/messaging/approvals/{approval_id}/approve
Turn down a waiting message or post, so it is never sent.rejectPOST /v1/messaging/approvals/{approval_id}/reject

Accounts

What it doesMCP toolREST
The accounts you have connected, with their status and when each last had activity. Search by name, filter by channel or status, sort and page.list_messaging_accountsGET /v1/messaging/accounts
Whether an account is working, what to do if not, and how much room it has left today.get_account_healthGET …/health
A link to connect a new account, or to reconnect one.create_messaging_connect_linkPOST /v1/messaging/accounts/connect-link
Disconnect an account.disconnect_messaging_accountDELETE …
Status of one connected account.get_connected_accountGET …
Start reconnecting an account that needs a sign-in.reconnect_accountPOST …/reconnect
Enter a sign-in or verification code the platform asked for. The code is not stored.solve_checkpointPOST …/checkpoint
Ask the platform to send the verification code again.resend_checkpointPOST …/checkpoint/resend
Restart an account that has stopped syncing.restart_accountPOST …/restart
Fetch an account’s messages again from the platform.resync_accountPOST …/sync

Usage and billing

What it doesMCP toolREST
Report a bug, a missing feature or a docs gap to the Spaces team.send_feedbackPOST /v1/feedback
Messages sent today and this week, and how much room is left on each account.get_messaging_usageGET /v1/messaging/usage
Usage by day for each account, as a spreadsheet or JSON: messages sent, new conversations and other actions. No message text.export_messaging_usageGET /v1/messaging/usage/export
Your plan and billing status.get_messaging_billingGET /v1/messaging/billing
A checkout link to choose a plan.create_messaging_billing_checkoutPOST /v1/messaging/billing/checkout

Connect it

Use https://api.spacesos.com/mcp/linkedin for an MCP server with only the LinkedIn tools, or https://api.spacesos.com/mcp for every channel. Setup steps for each AI client. An overview for LinkedIn: LinkedIn API for AI agents.

Other channels: WhatsApp, Instagram, Messenger, X, Email.