LinkedIn Ads MCP のリモート MCP サーバーとは何ですか?
LinkedIn Ads MCP のリモート MCP サーバーは、https://api.adplug.app/mcp/linkedin-ads にホストされた Model Context Protocol エンドポイントです。AI アシスタントはローカルに何もインストール・実行することなく接続できます。

@AdPlug
基本情報
AdPlug による LinkedIn Ads MCP サーバー。LinkedIn Ads を Claude、ChatGPT などの MCP 対応 AI アシスタントに接続します。パフォーマンス、オーディエンス、クリエイティブ、コンバージョンを分析。自然言語でレポートを作成し、キャンペーン、予算、広告を管理できます。安全な OAuth、デフォルトで読み取り専用、変更前にプレビュー。
https://api.adplug.app/mcp/linkedin-adsclaude mcp add linkedin-ads-mcp --transport http https://api.adplug.app/mcp/linkedin-adsCheck whether LinkedIn Ads is connected to this AdPlug account. IMPORTANT: Call this tool FIRST before using any other tools on this server. If LinkedIn Ads is not connected, surface the action_required steps so the user can connect it before you attempt platform-specific operations. Also reports write_access (read_write or read_only). read_only ('View only' in the dashboard) is a team setting: write tools are hidden and any write call is rejected, so do not attempt changes.
Lists all LinkedIn Ad Accounts accessible to the authenticated user (LinkedIn Ads tool). Returns each account with: id, name, currency, status, and type. Use this first to discover available LinkedIn Ad accounts.
Unified analytics tool — returns performance data for any LinkedIn Ads report type (LinkedIn Ads tool). One tool for all performance reporting. The report_type parameter selects what data to return. report_type options: - "campaign": Per-campaign metrics (spend, impressions, clicks, CTR, CPC, conversions). Returns campaign names, IDs, status. - "creative": Per-creative metrics with engagement breakdown (likes, comments, shares) and video metrics. Returns creative type (DOCUMENT, SINGLE_IMAGE, VIDEO, CAROUSEL). - "daily": Day-by-day performance trends. - "conversion": Per-conversion-action breakdown (total conversions, post-click, post-view, cost per conversion). - "lead_gen": Lead generation metrics per campaign (leads, form opens, qualified leads, cost per lead). - "demographics": Audience demographics breakdown. Requires demographic_type: MEMBER_JOB_FUNCTION, MEMBER_SENIORITY, MEMBER_INDUSTRY, MEMBER_COMPANY_SIZE, MEMBER_JOB_TITLE, MEMBER_COMPANY, MEMBER_COUNTRY_V2, MEMBER_REGION_V2. - "reach": Audience reach and frequency (unique reach, impressions, frequency, penetration). Max 92-day range. Args: account_id: The LinkedIn Ad Account ID. start_date: Start date in YYYY-MM-DD format. end_date: End date in YYYY-MM-DD format. report_type: One of: campaign, creative, daily, conversion, lead_gen, demographics, reach. campaign_ids: Optional list of campaign IDs to filter. campaign_id: Optional single campaign ID to filter (convenience alias for campaign_ids). demographic_type: Required when report_type is "demographics". E.g. MEMBER_JOB_FUNCTION, MEMBER_SENIORITY.
Lists LinkedIn Ads entities of any type (LinkedIn Ads tool). IMPORTANT — LinkedIn UI naming vs API naming: - LinkedIn UI "Campaigns" = API "campaign_groups" (use entity_type="campaign_groups") - LinkedIn UI "Ad sets" = API "campaigns" (use entity_type="campaigns") - LinkedIn UI "Ads" = API "creatives" (use entity_type="creatives") When a user asks about "campaigns", they usually mean campaign_groups. entity_type options: - "campaign_groups": Lists campaigns (LinkedIn UI name). Supports status filter: ACTIVE, PAUSED, ARCHIVED, DRAFT. Supports include_performance with start_date/end_date. - "campaigns": Lists ad sets (LinkedIn UI name). Supports status filter and campaign_group_id to show ad sets under a specific campaign. - "creatives": Lists ads (LinkedIn UI name) with format detection (DOCUMENT, VIDEO, SINGLE_IMAGE, CAROUSEL, etc.). Supports campaign_ids filter and include_content. IMPORTANT: When status="ACTIVE", auto-filters to only include ads from ACTIVE ad sets — so you get truly serving ads. - "conversions": Lists conversion tracking rules. Status filter = enabled_only (pass status="enabled"). - "campaign_conversions": Lists conversion-rule ↔ campaign associations. Requires campaign_ids. Returns one row per (campaign_id, conversion_id) pairing. - "lead_forms": Lists lead generation forms. Supports status filter: DRAFT, PUBLISHED, ARCHIVED. - "saved_audiences": Lists matched/DMP audiences. Paginates fully across the account (no 10-row cap). Returns the LINKEDIN destination's status as `status` (typical values: READY, BUILDING, PROCESSING, ARCHIVED, FAILED) plus `destinationSegmentId` (the `urn:li:adSegment:...` URN to use in targeting criteria). Supports `name_contains` for client-side substring search (matched audiences are NOT typeahead-searchable via the LinkedIn API — list and filter is the supported pattern). - "targeting_audiences": Lists saved targeting audience templates. Supports name_contains. - "targeting_facets": Lists all available targeting facets/dimensions. No account_id needed. Args: entity_type: What to list. One of: campaign_groups, campaigns, creatives, conversions, lead_forms, saved_audiences, targeting_audiences, targeting_facets. account_id: The LinkedIn Ad Account ID (required for most entity types, not needed for targeting_facets). status: Optional status filter (meaning varies by entity type). For creatives with status="ACTIVE", cascades through campaign status. campaign_ids: Optional campaign ID filter (for creatives/ads). campaign_group_id: Optional campaign group ID filter (for campaigns/ad sets — show ad sets under a specific campaign). include_content: Include raw content details for creatives. Default: false. include_performance: Include performance metrics for campaign_groups (requires start_date/end_date). Default: false. start_date: Start date for performance data (YYYY-MM-DD). end_date: End date for performance data (YYYY-MM-DD). limit: Maximum number of results to return. Default: 100. name_contains: Case-insensitive substring filter on entity name (saved_audiences, targeting_audiences).
Gets details for a single LinkedIn Ads entity (LinkedIn Ads tool). entity_type options: - "campaign": Full campaign config (targeting, budget, format, schedule, etc.). - "campaign_group": Campaign group details. - "creative": Creative details with content. Pass raw=true to ALSO get the unflattened creative + underlying post JSON (raw_creative, raw_post) so you can verify the exact Destination URL (contentLandingPage), Headline (content.media.title) and CTA (contentCallToActionLabel) the way Campaign Manager reads them — not just the flattened ad_copy view. - "targeting_audience": Targeting audience template with criteria. - "saved_audience": Matched/DMP audience details (name, type, sourcePlatform, destinations[] with status and audienceSize, and `destinationSegmentId` — the `urn:li:adSegment:...` URN you'd use in targeting criteria). Pass the dmpSegment numeric ID as entity_id. - "lead_form_responses": Lead form submission data. entity_id = form_id (optional, pass "all" for all forms). Args: entity_type: What to get. One of: campaign, campaign_group, creative, targeting_audience, saved_audience, lead_form_responses. entity_id: The entity ID. For lead_form_responses, pass the form_id or "all". account_id: The LinkedIn Ad Account ID (required for campaign, campaign_group, creative, lead_form_responses). limit: Max responses for lead_form_responses. Default: 100. raw: For entity_type='creative', include the raw creative + raw post JSON. Default: false.
Preview a LinkedIn Ads write operation before executing it (LinkedIn Ads tool). Shows what API call will be made, validates parameters, and returns the payload for confirmation. Use linkedin_ads_execute_mutation to actually execute it. Available operations: - Campaign Groups: create_campaign_group, update_campaign_group, delete_campaign_group - Campaigns: create_campaign, update_campaign, delete_campaign - Creatives: create_creative, update_creative, delete_creative - Asset uploads: upload_image, upload_video, upload_document - Inline ads (one-shot create): create_inline_ad (ad_format: SINGLE_IMAGE/SINGLE_VIDEO/DOCUMENT/CAROUSEL/TEXT/SPOTLIGHT/MESSAGE/EVENT/TLA) - Lead Forms: create_lead_form, update_lead_form, delete_lead_form - Targeting: create_targeting_audience, update_targeting_audience, delete_targeting_audience, apply_targeting_audience - Conversions: create_conversion_rule, associate_conversion, dissociate_conversion - Audiences: create_saved_audience, add_audience_members Args: operation: The operation to preview. One of the operations listed above. params: Operation-specific parameters as a dict. Call with operation="help" to see required params for each operation.
Execute a LinkedIn Ads write operation (LinkedIn Ads write tool). Use linkedin_ads_preview_mutation first to validate and preview the operation. Args: operation: The operation to execute (same as preview). params: Operation-specific parameters (same as preview).
Targeting lookup tool — search entities, resolve URNs, or estimate audience size (LinkedIn Ads tool). action options: - "search": Typeahead search for targeting entities — best for open-ended free-text facets (titles, employers, skills, industries, schools, groups, degrees, fieldsOfStudy, interests). Requires: query, facet. Facet name uses LinkedIn's URN form *without* the urn:li:adTargetingFacet: prefix (e.g. facet="titles", not "jobTitles"). Closed-set facets (seniorities, jobFunctions, staffCountRanges, ageRanges, genders, revenue, yearsOfExperienceRanges, interfaceLocales, etc.) are not typeahead-searchable — use entity_type=targeting_facets and consult Microsoft Learn's "Targeting Criteria Facet URNs" reference for valid URN values. Examples: • staffCountRanges → "urn:li:staffCountRange:(MIN,MAX)" compound URNs, e.g. (2,10), (501,1000), (5001,10000), (10001,2147483647 for "10K+"). • seniorities, jobFunctions, etc. → "urn:li:<facet>:<code>" with a fixed enum. Matched audiences (urn:li:adTargetingFacet:audienceMatchingSegments) are also NOT typeahead-searchable — LinkedIn exposes them with finder=[$UNKNOWN]. Use linkedin_ads_list entity_type=saved_audiences with `name_contains` instead. - "resolve_urns": Resolve targeting URNs to {urn, facetUrn, name, ...}. Requires: urns (array of URN strings). Optional: account_id (enables the destinationSegmentUrn → dmpSegment reverse lookup, which is what recovers names for adSegment URNs that were pulled from a campaign's targetingCriteria — those URNs use the destination segment id, NOT the top-level dmpSegment id, so /dmpSegments/{id} alone would 404). For urn:li:adSegment:* URNs the resolver tries (1) /dmpSegments/{id}, (2) when account_id is set, the dmpSegments listing's destinations[].destinationSegmentId, and (3) the bare adTargetingEntities finder. URNs that confirm targetable via (3) but lack a name land in `targetable_unnamed`. Anything truly unresolvable lands in `unresolved`. - "audience_count": Get estimated audience size for targeting criteria. Requires: account_id, targeting_criteria (object with include/exclude facets). Args: action: One of: search, resolve_urns, audience_count. query: Search query (for action=search). E.g. "marketing manager", "Google". facet: Targeting facet name (for action=search), without the urn:li:adTargetingFacet: prefix. E.g. titles, employers, skills, industries, schools. urns: Array of targeting URNs (for action=resolve_urns). account_id: LinkedIn Ad Account ID (for action=audience_count). targeting_criteria: Targeting criteria object (for action=audience_count).
Sends conversion events via the Conversions API / CAPI (LinkedIn Ads write tool). Each event requires: conversionHappenedAt (epoch ms), user.userIds [{idType, idValue}]. Optional: eventId (dedup), conversionValue {amount, currencyCode}. idType options: SHA256_EMAIL, LINKEDIN_FIRST_PARTY_ADS_TRACKING_UUID, ACXIOM_ID, ORACLE_MOAT_ID. Args: conversion_id: Conversion rule ID (numeric). events: Array of conversion events (max 5000).
Search LinkedIn's public Ad Library for ads from any advertiser (LinkedIn Ads tool). Returns ads run by ANY LinkedIn advertiser, not just the user's own accounts. Covers ads served since 2023-06-01, retained 1 year past the last impression. Use this for competitor research, brand monitoring, creative-format benchmarking, geographic-targeting analysis, and detecting whether a company is currently advertising on LinkedIn. For analytics on the USER'S own accounts, use linkedin_ads_performance instead. Ad copy, CTA text, and image/video assets are NOT in the API response — direct the user to the returned ad_url for those. mode options: - "summary": Returns total count + up to 3 sample ad URLs only. Use for "is X advertising?" / "how many ads is X running?" without burning context on full element bodies. - "standard": Returns formatted elements (epoch ms -> ISO 8601 UTC, snake_case keys, structured targeting facets). The default. - "raw": Returns LinkedIn's response body unchanged. Escape hatch when the formatter loses something or the schema evolves. Args: keyword: Full-text search across ad text and metadata. At least one of keyword or advertiser is required. Best signal for "find ads about X" queries. advertiser: Advertiser identifier - accepts a URN (urn:li:organization:1234), a LinkedIn company URL with a numeric ID (https://www.linkedin.com/company/1234), or a bare numeric ID (1234). Slug URLs (https://www.linkedin.com/company/microsoft) are not supported - pass the numeric ID instead. NOTE: LinkedIn's advertiser filter is sparse - many active advertisers return total=0 even when they clearly run ads (visible via keyword search). If advertiser-only returns 0, fall back to a keyword search of the company name. count: Page size, 1-25 (LinkedIn caps page size at 25). Default 10. start: Pagination offset. Default 0. mode: One of "summary", "standard", "raw". Default "standard".
LinkedIn Ads MCP by AdPlug is a hosted, remote MCP server that connects LinkedIn Campaign Manager to Claude, ChatGPT, Cursor and any other MCP-compatible AI assistant. You sign in with LinkedIn, and your assistant can read live campaign data, research targeting and make changes in plain English. Nothing to install, no API access request, no credentials to manage.
It is built and run by a performance marketer who manages LinkedIn Ads for B2B clients — for the reporting and optimisation work that actually fills the week.
B2B marketers, demand gen teams and agencies running LinkedIn Ads. The people writing weekly performance recaps, watching cost per lead drift, checking which job titles the spend actually reached, and rebuilding audiences when a campaign stops delivering.
If you live in Campaign Manager and export to a spreadsheet to answer simple questions, this replaces that loop.
Reporting and analysis
Targeting and audience work
Campaign management
Competitor research
Add this as a custom connector in Claude, ChatGPT, Cursor, or any MCP client: https://api.adplug.app/mcp/linkedin-ads
Sign in with LinkedIn when prompted. Setup takes about two minutes. Authentication is OAuth — your LinkedIn credentials stay server-side and are never exposed to the AI client.
You do not need your own LinkedIn Marketing API access. AdPlug is a certified LinkedIn Marketing Developer application, so there is no app registration and no access request to wait on.
That is the question worth asking, and it is the part this server is designed around.
10 tools: adplug_get_status, linkedin_ads_list_accounts, linkedin_ads_performance, linkedin_ads_list, linkedin_ads_get, linkedin_ads_targeting_lookup, linkedin_ads_preview_mutation, linkedin_ads_execute_mutation, linkedin_ads_send_conversion_event, linkedin_ad_library_search.
Deliberately few. One reporting tool covers campaign, creative, daily, conversion, lead gen, demographic and reach reports; one list tool covers campaigns, campaign groups, creatives, conversions, lead forms, saved audiences and targeting facets. Less context overhead for the model, same coverage.
A note on LinkedIn's naming: what Campaign Manager calls a Campaign is a campaign group in the API, and what it calls an Ad Set is a campaign. AdPlug handles that translation, so you can ask in the language you actually use.
Do I need my own LinkedIn Marketing API access? No. AdPlug is a certified LinkedIn Marketing Developer application. Sign in with LinkedIn and you are connected — no app registration, no access request.
Can it create campaigns, or does it only report? Both. It creates and updates campaigns, campaign groups and creatives across 9 ad formats, with a preview step before anything goes live.
Which AI clients does it work with? Claude (web, desktop and Code), ChatGPT, Cursor, and any client that speaks MCP over streamable HTTP.
Does it work with multiple ad accounts? Yes, unlimited ad accounts on every plan, including the free one.
Can I see what competitors are advertising on LinkedIn? Yes. The Ad Library search returns live LinkedIn ads with the destination URL, headline and CTA behind each creative.
Is there a Google Ads version? Yes — Google Ads MCP by AdPlug, same account, same safety model.
LinkedIn Ads MCP のリモート MCP サーバーは、https://api.adplug.app/mcp/linkedin-ads にホストされた Model Context Protocol エンドポイントです。AI アシスタントはローカルに何もインストール・実行することなく接続できます。
エンドポイント https://api.adplug.app/mcp/linkedin-ads を Claude Code、Cursor、VS Code など任意の MCP 対応クライアントに追加してください。このページのセットアップ手順で各クライアントを一度に設定できます。
はい。LinkedIn Ads MCP は OAuth を使用します。初回接続時に MCP クライアントがブラウザを開いてサインイン・認可を行い、以降はその認証情報を再利用します。
LinkedIn Ads MCP は Streamable HTTP エンドポイントを公開しており、これはリモート MCP サーバーで広く使われ、主要な MCP クライアントがサポートするトランスポートです。
Understand and troubleshoot your Journeys and Campaigns
Research competitors' winning ads, clone them for your brand and launch paused campaigns on Meta, Google and TikTok from chat.
AI Video MCP by AITuber is a hosted MCP server that lets AI agents create and publish video. You connect it once, then ask your agent for a video in plain language. It writes the script, picks a voice, generates the visu
Discover, evaluate, and buy solutions for the cloud
Aard connects Macroeconomic and other official data from 170+ publishers including World Bank, IMF, BIS, ECB, Eurostat, and National Statistical Offices. Aard is powered by a large graph of the metadata universe and an
コメント