This is a hosted MCP server that plugs Claude directly into LinkedIn's platform with 25 tools covering the core operations you'd want to automate. You get profile management, messaging capabilities, and search functionality without dealing with LinkedIn's official API limitations or authentication headaches. Reach for this when you're building workflows that need to pull LinkedIn data into Claude conversations, automate outreach sequences, or search for profiles and connections programmatically. The streamable HTTP transport means you configure the remote URL in your MCP settings and start calling LinkedIn operations immediately without running a local server.
Public tool metadata for what this MCP can expose to an agent.
linkedin_get_companyGet a LinkedIn company profile by URL, slug, or numeric ID.1 paramsGet a LinkedIn company profile by URL, slug, or numeric ID.
identifierstringlinkedin_get_company_postsGet a company's recent LinkedIn posts by company URL, slug, or numeric ID. Returns up to ~30 posts with text, engagement counts, and post URL.2 paramsGet a company's recent LinkedIn posts by company URL, slug, or numeric ID. Returns up to ~30 posts with text, engagement counts, and post URL.
cursorstringidentifierstringlinkedin_get_connectionsList your LinkedIn connections (1st-degree). Returns name, headline, profile URL, and public identifier for each connection. Supports cursor-based pagination.2 paramsList your LinkedIn connections (1st-degree). Returns name, headline, profile URL, and public identifier for each connection. Supports cursor-based pagination.
limitnumbercursorstringlinkedin_get_person_postsGet a person's recent LinkedIn posts by profile URL, public ID (slug), or URN. Returns up to ~50 posts with text, engagement counts, and post URL.2 paramsGet a person's recent LinkedIn posts by profile URL, public ID (slug), or URN. Returns up to ~50 posts with text, engagement counts, and post URL.
cursorstringidentifierstringlinkedin_get_post_commentsGet comments on a LinkedIn post. Provide activityUrn (from linkedin_get_person_posts) or a post URL. Returns comment text, commenter profile, and timestamp.3 paramsGet comments on a LinkedIn post. Provide activityUrn (from linkedin_get_person_posts) or a post URL. Returns comment text, commenter profile, and timestamp.
cursorstringpostUrlstringactivityUrnstringlinkedin_get_post_reactionsGet reactions on a LinkedIn post. Provide activityUrn (from linkedin_get_person_posts) or a post URL. Returns reactor profiles and reaction types (like, celebrate, support, love, insightful, funny).3 paramsGet reactions on a LinkedIn post. Provide activityUrn (from linkedin_get_person_posts) or a post URL. Returns reactor profiles and reaction types (like, celebrate, support, love, insightful, funny).
cursorstringpostUrlstringactivityUrnstringlinkedin_bulk_get_profilesFetch slim LinkedIn profiles in bulk (up to 10). Returns per-item results with error tracking — never stops on first error.1 paramsFetch slim LinkedIn profiles in bulk (up to 10). Returns per-item results with error tracking — never stops on first error.
identifiersarraylinkedin_get_profileGet a LinkedIn person profile by URL, public ID (slug), or URN.2 paramsGet a LinkedIn person profile by URL, public ID (slug), or URN.
identifierstringinclude_main_company_detailsbooleanlinkedin_bulk_get_companiesFetch slim LinkedIn company profiles in bulk (up to 10). Returns per-item results with error tracking — never stops on first error.1 paramsFetch slim LinkedIn company profiles in bulk (up to 10). Returns per-item results with error tracking — never stops on first error.
identifiersarraylinkedin_list_connection_requestsList pending LinkedIn connection requests. Use direction "sent" to see outgoing requests you sent, or "received" to see incoming requests from others. Supports cursor-based pagination.3 paramsList pending LinkedIn connection requests. Use direction "sent" to see outgoing requests you sent, or "received" to see incoming requests from others. Supports cursor-based pagination.
limitnumbercursorstringdirectionstringsent · receiveddefault: sentlinkedin_send_connection_requestSend a LinkedIn connection request to a person. Accepts any identifier: profile URL, public ID (slug), or URN. Optionally include a personalized message (max 300 characters).2 paramsSend a LinkedIn connection request to a person. Accepts any identifier: profile URL, public ID (slug), or URN. Optionally include a personalized message (max 300 characters).
messagestringidentifierstringlinkedin_react_to_postReact to a LinkedIn post (like, celebrate, support, love, insightful, funny). The lowest-friction engagement action.4 paramsReact to a LinkedIn post (like, celebrate, support, love, insightful, funny). The lowest-friction engagement action.
post_idstringpost_urlstringcomment_idstringreaction_typestringlike · celebrate · support · love · insightful · funnylinkedin_respond_connection_requestAccept or decline a received LinkedIn connection request. Use linkedin_list_connection_requests with direction "received" first to get the connection_request_id and shared_secret.3 paramsAccept or decline a received LinkedIn connection request. Use linkedin_list_connection_requests with direction "received" first to get the connection_request_id and shared_secret.
actionstringaccept · declineshared_secretstringconnection_request_idstringlinkedin_create_postCreate a LinkedIn post. Supports text with line breaks, image attachments (via public URLs), @mentions, link preview cards, and reposting existing posts.6 paramsCreate a LinkedIn post. Supports text with line breaks, image attachments (via public URLs), @mentions, link preview cards, and reposting existing posts.
textstringrepoststringmentionsarrayimage_urlsarraycontent_checkstringstrict · autofix · disabledexternal_linkstringsend_feedbackSend feedback, feature requests, bug reports, or help requests to the LinkMCP team. Use this to tell us what is working well, what could be improved, to request new features, or to ask for help.3 paramsSend feedback, feature requests, bug reports, or help requests to the LinkMCP team. Use this to tell us what is working well, what could be improved, to request new features, or to ask for help.
typestringfeedback · feature_request · bug_report · helpcontextobjectmessagestringlinkedin_comment_on_postComment on a LinkedIn post. Supports threaded replies (replying to an existing comment) and @mentions. Mention identifiers are automatically resolved — you can use profile URLs, slugs, or URNs.6 paramsComment on a LinkedIn post. Supports threaded replies (replying to an existing comment) and @mentions. Mention identifiers are automatically resolved — you can use profile URLs, slugs, or URNs.
textstringpost_idstringmentionsarraypost_urlstringcomment_idstringcontent_checkstringstrict · autofix · disabledlinkedin_send_messageSend a LinkedIn message. Reply to an existing conversation (chat_id) or start a new one (recipient_identifier). Supports InMail for non-connections.5 paramsSend a LinkedIn message. Reply to an existing conversation (chat_id) or start a new one (recipient_identifier). Supports InMail for non-connections.
textstringinmailbooleanchat_idstringlinkedin_apistringclassic · sales_navigator · recruiterrecipient_identifierstringlinkedin_search_peopleSearch LinkedIn for people by keywords and filters, or pass a LinkedIn search URL directly. Returns name, headline, location, profile URL, and network distance for each result. Text filter values (e.g., "San Francisco" for location) are resolved to LinkedIn IDs automatically.8 paramsSearch LinkedIn for people by keywords and filters, or pass a LinkedIn search URL directly. Returns name, headline, location, profile URL, and network distance for each result. Text filter values (e.g., "San Francisco" for location) are resolved to LinkedIn IDs automatically.
urlstringcursorstringindustryarraykeywordsstringlocationarrayseniorityarraynetwork_distancearrayprofile_languagearraylinkedin_search_sales_navigatorSearch LinkedIn Sales Navigator for people by keywords and filters, or pass a Sales Navigator search URL directly. Returns richer results than classic search including open profile status, premium status, current positions with tenure, and more. Requires a Sales Navigator subs...10 paramsSearch LinkedIn Sales Navigator for people by keywords and filters, or pass a Sales Navigator search URL directly. Returns richer results than classic search including open profile status, premium status, current positions with tenure, and more. Requires a Sales Navigator subs...
urlstringcursorstringtenurearrayfunctionarrayindustryarraykeywordsstringlocationarrayseniorityarraynetwork_distancearrayprofile_languagearraylinkedin_list_conversationsList your LinkedIn DM conversations (inbox). Returns conversation ID, timestamp, unread status, the other participant's provider ID, and the LinkedIn thread ID. Supports cursor-based pagination. Optionally search for conversations with a specific person by providing a particip...6 paramsList your LinkedIn DM conversations (inbox). Returns conversation ID, timestamp, unread status, the other participant's provider ID, and the LinkedIn thread ID. Supports cursor-based pagination. Optionally search for conversations with a specific person by providing a particip...
afterstringlimitnumberbeforestringcursorstringparticipantstringunread_onlybooleanlinkedin_get_conversation_messagesGet messages from a LinkedIn DM conversation. Returns message text, timestamp, sender ID, read status, and attachments. Use linkedin_list_conversations first to get the chat_id.3 paramsGet messages from a LinkedIn DM conversation. Returns message text, timestamp, sender ID, read status, and attachments. Use linkedin_list_conversations first to get the chat_id.
limitnumbercursorstringchat_idstringfind_emailFind a person's work email address given their name and company. If you don't already have the person's name or company details, use linkedin_get_profile first. Providing company_domain gives significantly more reliable results than company_name alone.4 paramsFind a person's work email address given their name and company. If you don't already have the person's name or company details, use linkedin_get_profile first. Providing company_domain gives significantly more reliable results than company_name alone.
last_namestringfirst_namestringcompany_namestringcompany_domainstringfind_mobileFind a person's mobile phone number. Accepts a LinkedIn profile URL, slug, or URN, and/or an email address. At least one identifier is required.2 paramsFind a person's mobile phone number. Accepts a LinkedIn profile URL, slug, or URN, and/or an email address. At least one identifier is required.
emailstringlinkedin_profilestringvalidate_emailValidate an email address for deliverability. Returns whether the email is valid, invalid, catch-all, or unknown, along with MX provider details. Use this to verify email addresses from your CRM, lists, or other sources before sending outreach.1 paramsValidate an email address for deliverability. Returns whether the email is valid, invalid, catch-all, or unknown, along with MX provider details. Use this to verify email addresses from your CRM, lists, or other sources before sending outreach.
emailstringlinkedin_who_am_iReturns information about the connected LinkedIn account: display name, public profile URL, LinkedIn URN, and which premium features are active (Sales Navigator, Recruiter). Use this to understand which LinkedIn capabilities are available before choosing search or messaging st...Returns information about the connected LinkedIn account: display name, public profile URL, LinkedIn URN, and which premium features are active (Sales Navigator, Recruiter). Use this to understand which LinkedIn capabilities are available before choosing search or messaging st...
No parameter schema in public metadata yet.
com.mcparmory/google-search
io.github.pipeworx-io/brave-search
marcopesani/mcp-server-serper
brave/brave-search-mcp-server
com.mcparmory/google-search-console
acamolese/google-search-console-mcp