# n8n LinkedIn integration: built-in node vs AI agent with MCP

Source: https://finchreach.com/blog/n8n-linkedin-integration
Published 2026-10-28 by Finchreach team. Tags: n8n, linkedin, mcp, workflow-automation, how-to.

What n8n’s LinkedIn node can and can’t do, and how an n8n AI Agent with the MCP Client Tool reads your inbox and feed and drafts writes for approval.

## The short answer

n8n has a built-in LinkedIn node, but as of October 2026 it does one thing: create a post, as a person or as an organization. It needs your own LinkedIn developer app, and LinkedIn’s credential setup asks for a Company Page. It can’t read your feed, your messages or your notifications, and it can’t comment, react, send DMs or send invitations.

For the rest of your personal LinkedIn account, give an n8n AI Agent the MCP Client Tool and point it at Finchreach, a remote LinkedIn MCP server at `https://mcp.finchreach.com/mcp`. The agent can then read your inbox, feed and notifications, search LinkedIn, and draft text posts, comments, reactions, DMs and invitations. Every write waits in your [approval queue](https://finchreach.com/approvals) until you approve it.

MCP (Model Context Protocol) is a standard plug that lets AI apps use outside tools. In n8n, the MCP Client Tool is that plug for the AI Agent node.

## What does n8n’s built-in LinkedIn node do?

According to the [LinkedIn node docs](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.linkedin/), as of October 2026 the node supports one operation, Post → Create. You choose:

- Post As: Person or Organization.
- The person’s name or ID, or the organization URN.
- The post text.
- A media category, for images or article URLs.

The node can also be used as a tool by an n8n AI agent, so an agent can publish a post through it. Whether a person reviews the post before it goes out depends on how you build the workflow.

The setup is the bigger job. The [LinkedIn credentials docs](https://docs.n8n.io/integrations/builtin/credentials/linkedin/) list a LinkedIn account and a LinkedIn Company Page as prerequisites. You create a developer app on LinkedIn (app name, an associated Page, a logo, the legal agreement), enable the Share on LinkedIn and Sign In with LinkedIn using OpenID Connect products, and copy the Client ID and Client Secret into n8n. There are two methods: Community Management OAuth2 for new apps and OAuth2 for older ones. Posting as an organization also needs the Advertising API product and LinkedIn’s Community Management App Review. On n8n Cloud you finish with “Connect my account” in the browser; self-hosted n8n sets the app up from scratch.

## What can’t the n8n LinkedIn node do?

Anything other than creating a post. In particular, it has no operation to:

- Read your home feed or your notifications.
- Read or reply to your messages, or start a DM.
- Search for people, companies or posts.
- Comment on or react to a post.
- Send connection invitations or handle the ones you receive.

n8n’s documented fallback for unsupported operations is the HTTP Request node, using the same LinkedIn credential as a predefined credential type. That works for whatever LinkedIn’s official API grants your developer app. It doesn’t add operations LinkedIn hasn’t opened to your app: you build each request yourself, and you’re still limited to the products and permissions LinkedIn approved.

## Built-in node, HTTP Request node or Finchreach: which should I use?

|  | Built-in LinkedIn node | HTTP Request node | Finchreach via MCP Client Tool |
| --- | --- | --- | --- |
| What it does | Creates a post | Calls LinkedIn API endpoints your app has access to | Reads feed, notifications, messages, profiles, search; drafts posts, comments, reactions, DMs, invitations |
| Post as | Person or organization | Depends on your app’s permissions | Your personal account only (no company pages) |
| Setup | LinkedIn developer app, Company Page, OAuth2 credential | Same credential, plus building each request | Finchreach account, LinkedIn connected, API key in the node |
| Org posting | Needs LinkedIn app review | Same credential and app review | Not supported |
| Media | Images or article URLs | Whatever your request sends | One image; multi-image and article links in Beta |
| Review before it goes out | Only if you build it | Only if you build it | Every write waits for approval |
| Works with the AI Agent node | Yes, as a tool | Yes, as a tool you configure | Yes, all tools through one node |

Pick the built-in node if you need to publish as a Company Page: Finchreach doesn’t. Pick Finchreach if the workflow is about your own account and needs to read before it writes: triage messages, catch up on notifications, research a person, then draft a reply. The two can sit in the same n8n instance.

## What can an n8n AI agent do on LinkedIn with Finchreach?

| The agent needs to… | Finchreach tool | Needs approval? |
| --- | --- | --- |
| Pick the LinkedIn account | `linkedin_list_accounts` | No |
| Read the feed or notifications | `linkedin_get_feed`, `linkedin_get_notifications` | No |
| Read your inbox or a thread | `linkedin_get_conversations`, `linkedin_get_messages` | No |
| Look someone up or search | `linkedin_get_profile`, `linkedin_search` | No |
| Publish a text post | `linkedin_create_post` | Yes |
| Comment, react or undo | `linkedin_comment_on_post`, `linkedin_delete_comment`, `linkedin_react_to_post`, `linkedin_unreact` | Yes |
| Send a DM or an invitation | `linkedin_send_dm`, `linkedin_send_invitation` | Yes |
| Check what happened to a write | `linkedin_get_action` | No |
| List, accept or ignore received invitations (beta) | `linkedin_get_received_invitations`, `linkedin_accept_invitation`, `linkedin_decline_invitation` | Beta |

A write returns `pending_approval` and an action id. You approve or reject it in the dashboard, and a later step or run can check the result with `linkedin_get_action`. The full reference is in the [docs](https://finchreach.com/docs#tools).

## How do I connect Finchreach to an n8n AI Agent?

1. [Create a Finchreach account](https://finchreach.com/sign-up), connect your LinkedIn account on the Accounts page, and create an API key on the API keys page. It starts with `lk_` and is shown once.
2. In a workflow, open the AI Agent node → Tools → + → MCP Client Tool.
3. Set the Endpoint URL to `https://mcp.finchreach.com/mcp` and the transport to HTTP Streamable.
4. Authentication: Bearer Auth with your key as the token, or Header Auth with name `Authorization` and value `Bearer lk_...`.
5. Under Tools to Include, pick all tools or just the ones the workflow needs.

Header Auth credential:
```json
{ "name": "Authorization", "value": "Bearer lk_YOUR_KEY" }
```

Finchreach also supports OAuth sign-in for clients such as Claude, ChatGPT and Gemini, but for n8n use the API key as above. It works on self-hosted n8n and n8n Cloud. As of October 2026 the [MCP Client Tool docs](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolmcp/) list Bearer, generic header, multiple headers, OAuth2 and no auth, plus Tools to Include as All, Selected or All Except. Older versions of the node only speak SSE, so update n8n if you don’t see HTTP Streamable. The [n8n guide](https://finchreach.com/guides/n8n) and the [n8n integration page](https://finchreach.com/integrations/n8n) keep these steps current.

Keys have scopes. The default key can read and submit writes but can’t approve them, so approval stays with you. For a summary-only workflow, create a key with `linkedin:read` alone.

## What n8n LinkedIn workflows can I build?

Three that fit the read-then-draft pattern. Each one is a trigger, an AI Agent with the Finchreach MCP Client Tool, and an output node.

Morning message summary to Slack. A Schedule Trigger on weekday mornings, the agent with read tools only, and a Slack node for the result:

> Ask your assistant: “Read my LinkedIn conversations from the last 24 hours. List the people waiting on a reply from me, one line each: name, what they want, how urgent it seems. Don’t draft or send anything. Keep it short enough to read on a phone.”

Release notes to a drafted post. A GitHub or RSS trigger for new releases, and the agent with `linkedin_create_post` and `linkedin_get_action`:

> Ask your assistant: “Here are the release notes for our latest version. Write one LinkedIn text post in my voice about the change users will notice most: a plain first line, two or three short paragraphs, no hashtag wall, no links in the first line. Submit it with linkedin_create_post so I can approve it.”

Lead sheet row to research and an invitation. A Google Sheets trigger on new rows, and the agent with `linkedin_search`, `linkedin_get_profile` and `linkedin_send_invitation`:

> Ask your assistant: “A new lead was added: {{ $json.name }} at {{ $json.company }}. Find this person on LinkedIn and confirm it’s the right profile from their current role. If you’re not sure, stop and say why. If it’s a match, draft a connection invitation with a note under 300 characters that mentions their work, no pitch. Return the profile URL and your reasoning.”

For a full worked example around new connections, see [triaging LinkedIn connection requests with n8n](https://finchreach.com/blog/n8n-linkedin-invitation-triage).

## Will the n8n agent post or message without me?

No. Finchreach holds every write, whichever node or trigger made it. You see the exact text and the recipient on the approvals page, then approve or reject. Rejected actions never reach LinkedIn. Finchreach doesn’t schedule actions either: the n8n trigger decides when the agent drafts, and an action runs when you approve it.

> Automating a personal LinkedIn account carries risk under LinkedIn’s User Agreement. Approval and a human pace lower that risk; they don’t remove it. Read [LinkedIn automation without getting banned](https://finchreach.com/blog/linkedin-automation-without-getting-banned) before you run a workflow on a schedule.

## Why isn’t my n8n agent seeing the LinkedIn tools?

- No HTTP Streamable option in the MCP Client Tool means your n8n is too old for Finchreach. Update it.
- A 401 error means the header is missing or wrong. With Header Auth, the name is `Authorization` and the value is `Bearer lk_...`, with one space after Bearer.
- Writes fail with a scope error when the key lacks `linkedin:write`. Create a key with the scopes the workflow needs.
- If `linkedin_list_accounts` shows your account as expired or checkpoint, reconnect it under Accounts.
- If the agent drafts writes you didn’t plan for, narrow Tools to Include to what the workflow needs.

## Does n8n have an official LinkedIn integration?

Yes, the built-in LinkedIn node, but it only creates posts. For reading messages, the feed or notifications, or for comments, DMs and invitations, you need either the HTTP Request node with what LinkedIn’s API allows your app, or an MCP server such as Finchreach. Finchreach is independent; it isn’t made by n8n or LinkedIn.

## Can n8n post to a LinkedIn Company Page?

With the built-in node, yes, after LinkedIn approves your app through Community Management App Review. Finchreach can’t: it works with your personal account only.

## What is a LinkedIn AI agent in n8n?

An n8n AI Agent node with a chat model and LinkedIn tools. The model reads your instructions and the data from the trigger, then decides which tools to call. With Finchreach, those tools cover your inbox, feed, notifications, profiles and search, and every write it drafts waits for you.

## Can n8n accept LinkedIn invitations automatically?

Yes, in beta: `linkedin_get_received_invitations` lists them and `linkedin_accept_invitation` / `linkedin_decline_invitation` answer them, each answer waiting for your approval. A workflow can then follow up with the people you accepted, as in the invitation triage example linked above.
