Skip to content

LinkedIn

OpenQuok MCP examples for LinkedIn — text posts, document carousels, and first-comment chains.

3 min read

Connect your agent today

Draft from chat, review in your calendar, and publish only what you approve.

Start for $0

Channel quick reference

PropertyPersonalPage
Provider identifierlinkedinlinkedin-page
OAuth setupLinkedInLinkedIn

Schedule a text post

Schedule a LinkedIn post for Friday at 2pm UTC: Shipping a small update on what we learned this week.

{
  "type": "schedule",
  "date": "2026-06-27T14:00:00.000Z",
  "socialPost": [
    {
      "integration": "<linkedin-integration-id>",
      "postsAndComments": ["Shipping a small update on what we learned this week."]
    }
  ]
}

Post with a first comment

Publish a LinkedIn announcement now, then add a comment with the product link.

On LinkedIn, the first postsAndComments string is the post and the rest are comments:

{
  "type": "now",
  "socialPost": [
    {
      "integration": "<linkedin-integration-id>",
      "postsAndComments": [
        "We just launched something big!",
        "Check it out at example.com"
      ]
    }
  ]
}

Schedule a LinkedIn Page carousel from these slide images with title “Q2 update” — use integrationList to find my Page channel.

{
  "type": "schedule",
  "date": "2026-06-28T10:00:00.000Z",
  "socialPost": [
    {
      "integration": "<linkedin-page-integration-id>",
      "postsAndComments": ["Our Q2 product slides — swipe through the deck."],
      "attachments": [
        "https://example.com/slides/01.png",
        "https://example.com/slides/02.png"
      ],
      "settings": {
        "linkedin": {
          "postAsImagesCarousel": true,
          "carouselName": "Q2 update"
        }
      }
    }
  ]
}

Cross-account comment or reshare

Schedule a LinkedIn Page post for Friday at 2pm with body “Q2 recap is live” — then have my personal LinkedIn profile comment “Great update from the team!” and my other Page reshare it two minutes after publish. Use integrationList to find the channel IDs.

Cross-account actions belong in settings on the publishing channel (personal linkedin or linkedin-page). List acting channel UUIDs in integrationIds inside linkedin.crossAccountPlugs:

{
  "type": "schedule",
  "date": "2026-06-27T14:00:00.000Z",
  "socialPost": [
    {
      "integration": "<linkedin-page-integration-id>",
      "postsAndComments": ["Q2 recap is live"],
      "settings": {
        "linkedin": {
          "crossAccountPlugs": [
            {
              "plugName": "linkedin-add-comment",
              "enabled": true,
              "delayMs": 0,
              "integrationIds": ["<linkedin-integration-id>"],
              "fields": {
                "comment": "Great update from the team!"
              }
            },
            {
              "plugName": "linkedin-repost-post-users",
              "enabled": true,
              "delayMs": 120000,
              "integrationIds": ["<linkedin-other-page-integration-id>"],
              "fields": {}
            }
          ]
        }
      }
    }
  ]
}

Global plugs (Page only)

On my LinkedIn Page, create a global plug that comments “Great discussion — full details below!” when a post gets 100 likes — use integrationList to find the Page channel ID.

Global plugs are channel-level rules that fire when a published post’s likes reach a threshold. OpenQuok checks every six hours, up to three times per post.

  1. Call integrationList and pick a linkedin-page channel UUID.
  2. Call plugsCatalog and read field names for autoPlugPost or autoRepostPost.
  3. Call plugsUpsert.

Auto-comment when likes hit 100

{
  "integrationId": "<linkedin-page-integration-id>",
  "func": "autoPlugPost",
  "fields": [
    { "name": "likesAmount", "value": "100" },
    { "name": "post", "value": "Great discussion — full details in the comments." }
  ]
}

Auto-reshare when likes hit 100

{
  "integrationId": "<linkedin-page-integration-id>",
  "func": "autoRepostPost",
  "fields": [
    { "name": "likesAmount", "value": "100" }
  ]
}

Pause or delete a global rule

Disable the global plug with id abc123 on my workspace.

{
  "plugId": "<plug-id>",
  "activated": false
}

Call plugsActivate with activated: true to re-enable. Call plugsDelete to remove the row permanently.

Search documentation
Find a docs page
Discord Support