How to connect Dify to LinkedIn, step by step
Create an API key at finchreach.com/api-keys, connect LinkedIn at finchreach.com/accounts, then add https://mcp.finchreach.com/mcp to Dify with the header Authorization: Bearer lk_…. Test with a read, and approve the first draft under Approvals.
What you need
- A Finchreach account (sign in at finchreach.com) and the LinkedIn account you want Dify to work on.
- Dify.
- About five minutes.
Step 1: Create a Finchreach API key
- Sign in at finchreach.com and open API keys.
- Create a key and name it after the tool, for example “Dify”.
- Copy it right away: it starts with
lk_and is shown only once.
Step 2: Connect your LinkedIn account
- Open Accounts and click to connect LinkedIn.
- Follow the steps until the account shows as connected.
Approval mode is on by default: nothing the assistant drafts reaches LinkedIn until you approve it.
Step 3: Add Finchreach to Dify
- Go to Tools → MCP → Add MCP server (HTTP).
- Enter the Server URL
https://mcp.finchreach.com/mcp, a name and a server identifier (for examplefinchreach). - Turn off Dynamic Client Registration (you’re using the API key; OAuth with dynamic registration also works). Under Advanced Options → Custom Headers add
Authorization=Bearer lk_YOUR_KEY. Save. - Add the Finchreach tools to an agent app or a workflow node.
Static headers and OAuth (dynamic or manual) both work; Finchreach uses the header.
Step 4: Test the connection
In Dify, start with a read. It runs right away and proves the key and the account work:
Ask your assistant“List my connected LinkedIn accounts, then summarize my five latest notifications.”
You should see calls to linkedin_list_accounts and linkedin_get_notifications. Then try a write, which goes to your approval queue instead of LinkedIn:
Ask your assistant“Draft a short LinkedIn post saying I’m trying a new AI assistant workflow. Submit it for my approval.”
Step 5: Approve or reject it in Finchreach
- Open Approvals. The draft is there with its exact text and the account it would go out from.
- Approve it to publish, or reject it (reject the test post if you don’t want it live).
- Dify can check the result with
linkedin_get_action: pending, approved, rejected, executed, failed or expired.
Troubleshooting
- Pick the server identifier carefully: changing it later breaks the apps that use it.
- Not to be confused with Dify’s “mcp-server” marketplace plugin, which does the opposite (exposes a Dify app as an MCP server).
- 401 or “unauthorized”: the key is wrong, revoked or missing its prefix. Finchreach accepts
Authorization: Bearer lk_…orX-API-Key: lk_…; check for a missingBearer, quotes or a trailing space. - A tool is missing: the key’s permissions don’t include it. Create a key with the permissions you need under API keys.
- “No LinkedIn account”: connect one under Accounts, or reconnect it if its session expired.
- A post or message “didn’t go out”: it is probably still waiting under Approvals. Writes run only after you approve them.
Still stuck? Compare your setup with Dify’s documentation, checked on 2026-10-28; client screens change often.
What to ask Dify next
Ask your assistant“A workflow that turns each new blog article into a LinkedIn post draft for approval.”
Ask your assistant“An agent that summarizes my LinkedIn messages every morning and posts the summary to Slack.”
Ask your assistant“A lead-research app that finds a person on LinkedIn and drafts an invitation with a note.”
More ideas on the Dify integration page.
Common questions
No, a key is shown only once. Create a new one under API keys, put it in your config, and revoke the old one.
No. Dify only gets your Finchreach API key. Your LinkedIn connection stays in Finchreach, and you can revoke the key at any time without touching LinkedIn.
Yes, but one key per tool (for example one named “Dify”) lets you revoke one without breaking the others.
Revoke its key under API keys; Dify gets a 401 from then on. Then remove the server from its config.
Third-party facts checked on against Dify docs.
