integrations tools linkedin-ads

    LinkedIn Ads MCP for your AI agent

    Cogny's LinkedIn Ads integration exposes 23 tools (11 read, 12 write) to an AI agent over MCP. The same tools are available on every plan, from your own AI client or inside the Cogny app.

    • 11readonly reads data.
    • 12writecreates or changes something.
    • 0destructivedeletes, removes or replaces something.

    Over MCP your own AI client asks before it runs a write. To take a tool away from your agent, block it in Settings → Integrations. Plans, approvals and limits

    set it up.

    Add Cogny to your AI client once, then connect LinkedIn Ads in Cogny. Every LinkedIn Ads tool below appears in the client.

    • Claude CodeRun claude mcp add --transport http cogny https://app.cogny.com/mcp, then authorise in the browser.
    • Claude.aiSettings → Connectors → Add custom connector, URL https://app.cogny.com/mcp, then log in and pick your workspace.
    • ChatGPTSettings → Apps → Advanced settings → Developer mode → Create app, URL https://app.cogny.com/mcp, authentication OAuth.
    • CursorIn Cogny, Settings → Data & Integrations → Connect AI Clients shows the block to paste into .mcp.json, with an API key.
    • CodexRun codex mcp add cogny --url https://app.cogny.com/mcp.

    Full setup, and how to undo it

    what each tool does.

    Read 11 · only reads data

    • tool_list_ad_accountsReadList the LinkedIn ad accounts this workspace can use, with name, status and currency.
    • tool_get_campaign_groupsReadList the campaign groups in a LinkedIn ad account.
    • tool_get_campaignsReadList the campaigns in a LinkedIn ad account, with status, objective, budget and targeting.
    • tool_get_campaignReadGet one LinkedIn campaign by ID, including its current targeting.
    • tool_get_creativesReadList the creatives (ads) in a LinkedIn ad account or campaign, with review and serving status.
    • tool_get_analyticsReadGet LinkedIn Ads performance (spend, impressions, clicks, CTR, CPC, leads, CPL, conversions) by campaign, creative or audience demographic.
    • tool_get_company_engagementReadWhich companies saw and engaged with this account's LinkedIn ads, ranked by impressions and optionally matched to your CRM accounts.
    • tool_get_conversionsReadList the conversion tracking rules of a LinkedIn ad account.
    • tool_get_targeting_facetsReadList LinkedIn's targeting dimensions (locations, job titles, functions, seniorities, industries, company sizes, skills and more).
    • tool_search_targeting_entitiesReadSearch for LinkedIn targeting values (job titles, companies, skills, locations, industries) within one targeting facet.
    • tool_get_audience_countsReadEstimate how many LinkedIn members a targeting combination reaches.

    Write 12 · creates or changes something

    • tool_create_campaign_groupWriteCreate a LinkedIn campaign group, optionally with a total budget and schedule.
    • tool_update_campaign_group_statusWritePause, activate, archive or cancel a LinkedIn campaign group.
    • tool_create_campaignWriteCreate a LinkedIn campaign with objective, daily budget, bid and targeting.
    • tool_update_campaign_statusWritePause, activate, archive or cancel a LinkedIn campaign.
    • tool_update_campaign_political_intentWriteUpdate a campaign's EU TTPA political-advertising self-declaration.
    • tool_update_campaign_budgetWriteChange a LinkedIn campaign's daily budget or bid.
    • tool_update_campaign_targetingWriteReplace a LinkedIn campaign's targeting criteria.
    • tool_create_creativeWriteCreate a new Sponsored Content creative (ad) for a campaign.
    • tool_upload_imageWriteUpload an image to LinkedIn and return its image URN.
    • tool_upload_videoWriteUpload a video to LinkedIn and return its video URN.
    • tool_update_creative_statusWritePause, activate or archive a LinkedIn creative (ad).
    • tool_create_conversionWriteCreate a LinkedIn conversion tracking rule.

    Exact input schemas come from tools/list once LinkedIn Ads is connected; the free plan is enough to check. Missing something? Your agent can ask for it with request_feature.