--- name: adspirer-linkedin-ads description: Create and manage LinkedIn Ads through Adspirer — sponsored content, single image, video, carousel, text ads, and lead-gen forms with B2B job-title, company, and industry targeting. Use for anything on LinkedIn. Every LinkedIn campaign requires a campaign group. --- # LinkedIn Ads Everything on LinkedIn goes through the `linkedin_ads` router. Follow `adspirer-mcp` for the two-step. Account parameter: `account_id`, as a **string**. Budgets are in the account's currency. ## Every campaign belongs to a campaign group LinkedIn will not create a bare campaign. Pass either an existing `campaign_group_id`, or a `campaign_group_name` to create one. There is no default and no implicit group — omitting both fails. List the existing groups before you invent a new one; most accounts already have a structure the user cares about. ## Build order Campaign group → campaign → creative. Campaigns are created **paused**. `select_linkedin_campaign_type` picks the format when the user hasn't said. Then `create_linkedin_image_campaign`, `_video_campaign`, `_carousel_campaign`, or `_text_campaign`. Creatives attach with `add_linkedin_creative` and its variants. ## Targeting is the point LinkedIn's value is the professional graph: job title, seniority, function, company, company size, industry, skills, and groups. That's what the user is paying LinkedIn's CPMs for — a broad, demographic-only LinkedIn campaign is a waste of money and you should say so. `search_linkedin_targeting` resolves a name ("VP of Engineering", "Financial Services") to the facet id you need. `research_business_for_linkedin_targeting` turns a company description into a targeting proposal. Don't guess facet ids. LinkedIn enforces a minimum audience size (about 300 members). Over-narrow targeting simply won't run — check the estimated size before you build. ## Costs are high, so structure matters LinkedIn CPCs run many times Google's. That changes the advice: - Budgets under roughly $25/day rarely gather enough data to optimize. - Lead-gen forms convert far better than sending people to a landing page. Prefer them for lead objectives. - Because clicks are expensive, creative fatigue bites sooner. `analyze_linkedin_creative_performance` shows which creative is carrying the campaign. ## Deleting creatives is permanent `delete_linkedin_creative` cannot be undone. Pausing is almost always what the user meant. Name what will be lost and ask first. ## Reading performance Performance goes through the router — there is **no** top-level LinkedIn performance tool. Use `{"action": "execute", "tool_name": "get_linkedin_campaign_performance", ...}`. `get_linkedin_engagement_metrics` covers social actions; `analyze_linkedin_wasted_spend` finds campaigns spending without converting. Lead-gen submissions contain real people's names, titles, and emails. Summarize them; don't dump personal data into the conversation unprompted.