Home / Blog / LinkedIn Ads API vs MCP

LinkedIn Ads API vs MCP: What the Reporting API Needs, and the Shortcut

Connect LinkedIn Ads to your AI free →

Works in Claude, ChatGPT, Copilot, Grok and any MCP-capable agent. Free on one LinkedIn ad account, with a 14-day Analyst trial. No card needed.

  1. Sign up with LinkedIn at web.kiin.co and connect your LinkedIn Ads account. LinkedIn asks for two permissions: the Ads API, and Community Management (for thought leader ads).
  2. Add https://mcp.kiin.co to your assistant as a custom connector or remote MCP server (some clients want the full path, https://mcp.kiin.co/mcp). Claude, ChatGPT, Copilot Studio, Grok, Gemini, Perplexity, Cursor and Claude Code all accept one.
  3. Ask a question you already know the answer to, such as “What did we spend on LinkedIn last month?”, and check it against Campaign Manager.
Checked 26 Oct 2026: Marketing API version used in examples 202603
Quick Answer
The LinkedIn Ads API is LinkedIn's versioned Marketing API. To report from it you need an approved developer app, OAuth tokens, a Linkedin-Version header, and an explicit fields= list on adAnalytics, which otherwise returns only impressions and clicks. You also need to use landingPageClicks, not clicks, for traffic. An MCP server such as Kiin handles all of that and puts the answers in Claude, ChatGPT or Copilot in minutes.

Why Kiin Intelligence

  • Benchmarks on every number. Results are compared against the Kiin Labs panel of 1,000+ LinkedIn advertiser accounts and $65M+ of LinkedIn spend, so your assistant can say whether a number is good, not just what it is. It never shows a cohort smaller than 10 advertisers.
  • Playbooks built from that research. The Kiin Brain carries hard rules and audit checks (Audience Network and Audience Expansion off, ad fatigue, demographic waste, bid recommendations) drawn from Kiin Labs studies. Examples: maximum delivery cost 103% more per website click than a manual bid in the same account; fatigue is driven by cumulative frequency, not time running; spending more does not lower cost per lead ($98 under $1k a month, $401 over $25k).
  • It reads and it writes. It creates and updates campaigns, campaign groups, creatives and saved audiences, and pauses and reactivates campaigns. Every write is preview-then-confirm: the first call shows a before/after diff and changes nothing. New campaigns are created as drafts.
  • Real traffic, not every click. Landing page CTR and cost per landing page click are the primary traffic metrics. At the median account only about 1 in 7 LinkedIn clicks reaches your website.
  • Your CRM, joined to your ads. Connect HubSpot, Salesforce, Pipedrive or Attio to see influenced pipeline: deals at companies your LinkedIn ads reached or engaged before the deal.
  • Plug and play for AI agents. A hosted remote MCP server with OAuth sign-in. Paste one URL into Claude, ChatGPT, Copilot, Grok or any MCP-capable assistant and sign in with LinkedIn. No developer app, no API keys, no data warehouse.

Most LinkedIn Ads connectors move raw data from one place to another: to Sheets, BigQuery, Looker Studio or a chat window. Kiin interprets it, with landing page metrics, panel benchmarks, audits and playbooks, and can act on it through confirmed writes.

What is the LinkedIn Ads API?

It is LinkedIn's Marketing API: versioned REST endpoints for ad accounts, campaign groups, campaigns, creatives and the adAnalytics reporting endpoint. Access needs a LinkedIn developer app approved for the Advertising API, OAuth tokens that you refresh, and a Linkedin-Version header on every call. LinkedIn's documentation lives on Microsoft Learn.

Official docs: LinkedIn Marketing API documentation.

How does the LinkedIn Ads reporting API work?

You call /rest/adAnalytics with a pivot, a date range, a time granularity and an explicit fields= list. Without fields=, it returns only impressions and clicks. Monetary values arrive as strings and timestamps as Unix epoch milliseconds, so parse both before doing arithmetic.

curl -H "Authorization: Bearer $TOKEN" \
  -H "Linkedin-Version: 202603" \
  -H "X-Restli-Protocol-Version: 2.0.0" \
  "https://api.linkedin.com/rest/adAnalytics?q=analytics&pivot=CAMPAIGN&timeGranularity=MONTHLY&dateRange=(start:(year:2026,month:9,day:1),end:(year:2026,month:9,day:30))&accounts=List(urn%3Ali%3AsponsoredAccount%3A123456)&fields=impressions,clicks,landingPageClicks,costInLocalCurrency,oneClickLeads,oneClickLeadFormOpens,dateRange,pivotValues"
  • clicks is not traffic. It counts likes, comments, shares and profile clicks. Use landingPageClicks for traffic; at the median account only about 1 in 7 clicks reaches your website.
  • oneClickLeadFormOpens are not leads. Only oneClickLeads are submissions.
  • Conversation ads are judged on opens, not clicks.
  • Versioning: LinkedIn retires API versions on a schedule, so the header needs updating.

LinkedIn Ads API or an MCP server: which should you use?

Use the API if you are building your own pipeline or product and have an approved developer app. Use an MCP server such as Kiin if you want answers and changes inside Claude, ChatGPT or Copilot without building anything. Kiin handles auth, versions, field lists and the metric rules for you.

Raw Marketing APIKiin MCP server
AccessApproved developer appSign in with LinkedIn
Auth and refreshYou build itHandled
Version headerYou maintain itHandled
fields= listsYou name every fieldHandled
Traffic metricWhatever you computeLanding page CTR and cost per landing page click
BenchmarksNone1,000+ advertiser accounts
WritesIf your app has write accessPreview-then-confirm
Time to first answerWeeksMinutes

If you still want a warehouse, how to get LinkedIn Ads data into PostgreSQL walks through the schema. LinkedIn also runs an undocumented MCP endpoint of its own; see does LinkedIn have an MCP server?

What can Kiin Intelligence do?

Kiin Intelligence registers 95 MCP tools. This is what they cover. Writes need Analyst access on that ad account (paid, or during the 14-day trial), and every write is logged.

AreaWhat it coversExample tools
Account reportingAccount snapshot, reporting overview, time series, campaign metrics and setup, budgetsget_account_snapshot, get_reporting_overview, get_time_series, get_campaign_budgets
CreativesCreative-level performance, creative health and fatigue, top creativesget_creative_health_report, get_top_creatives
Format reportsThought leader ads by author and hook, conversation ads (opens, not clicks), lead gen forms (submissions, not opens), videoget_tla_report, get_conversation_ads_report, get_lead_gen_report, get_video_performance_report
Audience and wasteDemographics, demographic waste against your ICP, company engagement (which companies saw or engaged), reach and frequency, audience inventory, targeting searchget_demographic_waste, get_company_engagement, get_reach_report, search_targeting
Audits and recommendationsAccount hygiene and full audit, prioritised recommendations, bid recommendations, Kiin Brain hard rulesrun_audit, get_account_hygiene, get_recommendations, get_bid_recommendations, get_hard_rules
BenchmarksYour numbers against the Kiin Labs panel: 1,000+ advertiser accounts, $65M+ of LinkedIn spend, no cohort under 10 advertisersget_benchmarks, benchmark_me
Writes (preview-then-confirm)Create, duplicate and update campaigns (budgets, bids, schedule, status, targeting, Audience Network and Audience Expansion switches); pause and reactivate; create and update campaign groups and creatives; create saved audiences. New campaigns are drafts.create_campaign, duplicate_campaign, update_campaign, patch_campaign_targeting, pause_campaign, reactivate_campaign, create_campaign_group, update_campaign_group, create_creatives, update_creative, create_saved_audience
CRM and pipelineHubSpot, Salesforce, Pipedrive and Attio. Influenced pipeline and revenue: deals at companies your ads reached or engaged before the dealget_pipeline_report, get_deals, get_contacts
Memory and monitoringSaved ICP and account strategy; scheduled monitoring with Slack alertsget_icp, get_account_strategy, set_monitoring

Building on the API and want a second opinion? Book a call →

Frequently Asked Questions

What is the LinkedIn Ads API?+
LinkedIn's Marketing API: versioned REST endpoints for ad accounts, campaigns, creatives and adAnalytics reporting. It needs an approved developer app, OAuth tokens and a Linkedin-Version header.
Where is the LinkedIn Ads API documentation?+
On Microsoft Learn, under LinkedIn Marketing API documentation at learn.microsoft.com/en-us/linkedin/marketing.
Why does adAnalytics only return impressions and clicks?+
Because it returns only those two fields unless you list every other field you want in the fields= parameter.
Should I use clicks or landingPageClicks?+
landingPageClicks for traffic. The clicks field counts likes, comments, shares and profile clicks; at the median account only about 1 in 7 LinkedIn clicks reaches your website.
Do I need a developer app to use an MCP server?+
Not with a hosted server such as Kiin: you sign in with LinkedIn and paste a URL into your assistant. Self-hosted open-source servers and LinkedIn's own MCP endpoint do need an approved app.
What version header should I use?+
The current Linkedin-Version value for your integration, in YYYYMM form; the examples here use 202603. LinkedIn retires old versions on a schedule, so check the versioning page in its docs.

Skip the API build

Free on one LinkedIn ad account with a 14-day Analyst trial, no card. Kiin Analyst is $65 per ad account per month.

Connect LinkedIn Ads to your AI free →