Linkedin Ads for AI agents

LinkedIn Ads is LinkedIn's advertising platform for running, targeting, and measuring campaigns aimed at professional audiences by job title, industry, and seniority. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

MarketingOAuth 2.0MCP + RESTlinkedin.com
AUDIT LOG · LINKEDIN ADSPOLICY: acme-support
09:41:07 · claude · u_8f2read
linkedin_ads.list_posts
List LinkedIn posts✓ allowed · 212ms
09:41:08 · claude · u_8f2read
linkedin_ads.get_lead_form
Get lead form by ID✓ allowed · 164ms
09:41:09 · claude · u_8f2write
linkedin_ads.create_lead_form
Create Lead Form✓ approved · approved by user
EVERY LINKEDIN ADS CALL, ON THE RECORD
01 · USE CASES

What agents do in Linkedin Ads.

01

Pull ad campaign analytics

Check impressions and spend for a campaign group over a date range, read-only.

02

Search existing ad accounts

Search for an ad account by name before attaching a new campaign to it.

03

Approve before creating a lead form

Require approval before creating a new lead gen form, since it changes what data a campaign collects.

02 · ACTIONS

28 Linkedin Ads actions, graded by risk.

Every Linkedin Ads action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

23

Look things up. Allowed by default.

  • linkedin_ads.list_posts
    List LinkedIn posts
  • linkedin_ads.get_lead_form
    Get lead form by ID
  • linkedin_ads.search_events
    Search Events
  • linkedin_ads.get_ad_account
    Get Ad Account
  • linkedin_ads.list_lead_forms
    List Lead Forms
  • linkedin_ads.get_ad_analytics
    Get Ad Analytics
  • linkedin_ads.get_network_size
    Get organization follower count
  • linkedin_ads.search_campaigns
    Search Campaigns
  • linkedin_ads.search_creatives
    Search LinkedIn Ads Creatives
  • linkedin_ads.list_dmp_segments
    List DMP Segments
  • linkedin_ads.get_campaign_group
    Get Campaign Group
  • linkedin_ads.list_organizations
    List Organizations
  • linkedin_ads.search_ad_accounts
    Search Ad Accounts
  • linkedin_ads.get_audience_counts
    Get Audience Counts
  • linkedin_ads.get_supply_forecasts
    Get Ad Supply Forecasts
  • linkedin_ads.get_targeting_facets
    Get Targeting Facets
+ 7 MORE

write

5

Create and change things. Allow, or ask the user first.

  • linkedin_ads.create_lead_form
    Create Lead Form
  • linkedin_ads.update_lead_form
    Update lead form
  • linkedin_ads.create_ad_account
    Create Ad Account
  • linkedin_ads.update_organization_acl
    Update organization access control
  • linkedin_ads.register_upload
    Register Upload

destructive

0

Delete, cancel or archive. Ask first, or deny outright.

  • No destructive actions.
03 · HOW IT WORKS

Linkedin Ads in three steps.

  1. 01Your users connect Linkedin AdsThey sign in to Linkedin Ads on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, and writes like “create Lead Form” can wait for the user to approve.
  3. 03Any agent can actYour agent calls Linkedin Ads through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('linkedin_ads', {
  read: 'allow',
  write: 'ask',        // create_lead_form
  destructive: 'deny',  
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Linkedin Ads connects.

Users sign in to Linkedin Ads on Arc0 Connect and approve the scopes you request. Build with Arc0’s Linkedin Ads OAuth app, or bring your own so the Linkedin Ads consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Linkedin Ads connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Linkedin Ads from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Linkedin Ads and Arc0, answered.

Q01

Can I use Linkedin Ads with Claude, ChatGPT or Cursor?

Yes. Connect Linkedin Ads to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Linkedin Ads actions you allow.

Q02

How do users connect Linkedin Ads?

Users sign in to Linkedin Ads on Arc0 Connect and approve the scopes you request. Build with Arc0’s Linkedin Ads OAuth app, or bring your own so the Linkedin Ads consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Linkedin Ads actions can my agent take?

28 in total: 23 read, 5 write and 0 destructive, such as “create Lead Form”. Your policies decide which of them each agent may call.

Q04

Can I make my agent read-only in Linkedin Ads?

Yes. Allow read actions and deny writes in the Linkedin Ads policy. Your agent can still look things up, and any write it attempts is blocked and logged.

Q05

Can my own backend call Linkedin Ads too?

Yes. The same Linkedin Ads connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Linkedin Ads into your agent.

Your users connect Linkedin Ads once, under your brand. Your agent gets 28 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan