LinkedIn Ads MCP server
Prebuilt SnapLogic agentic-tool pipelines that let an LLM read from and act on LinkedIn Ads, callable as MCP tools via Pipeline Execute. Published in the SnapLogic pattern catalog.
Overview
These tools give agents read-only access to LinkedIn Ads reporting, covering account structure, campaign and creative performance metrics, and lead-gen form submissions. Use them to analyze ad spend, impressions, clicks, conversions, and leads across accounts, campaigns, and individual creatives.
For setup instructions, see SnapLogic MCP Server quickstart.
Example Prompts
- How much did we spend on LinkedIn Ads in account 507404993 since January?
- Give me total LinkedIn impressions and clicks for Q1 2026
- What's our LinkedIn ad performance so far this year?
- Summarise spend, leads and conversions for the LinkedIn account between 1 April and 30 June 2026
- What campaign groups are set up in ad account 507404993?
- Show me the campaign groups for our LinkedIn account
- How is our LinkedIn advertising organised into groups?
- List the paused campaign groups in the EMEA ad account
- Show me daily LinkedIn campaign performance for account 507404993 since 1 April 2026
- Which LinkedIn campaign had the best cost per lead last month?
Tools
| Tool Name | Functions |
|---|---|
| LinkedInAdsGetAccountSummary | Get rolled-up account-level LinkedIn Ads metrics for a date range. |
| LinkedInAdsGetCampaignGroups | List the active and paused campaign groups in a LinkedIn ad account. |
| LinkedInAdsGetCampaignPerformance | Get per-campaign LinkedIn Ads metrics over a date range, daily by default. |
| LinkedInAdsGetCampaigns | List the campaigns in a LinkedIn ad account, optionally scoped to one campaign group. |
| LinkedInAdsGetCreativePerformance | Get per-creative LinkedIn Ads metrics for one campaign over a date range. |
| LinkedInAdsGetLeadFormSubmissions | Retrieve sponsored lead-gen form submissions for a LinkedIn ad account. |
| LinkedInAdsListAccounts | List the active LinkedIn sponsored ad accounts available to the connection. |
Set up the MCP Server tools
- Download linkedin-ads_tools.zip.
- In SnapLogic Designer, open the target project space (or create one), then choose Import Project / Import Pipelines and select the downloaded linkedin-ads_tools.zip. Designer unpacks each pipeline into the project.
- Attach the required account to the connectivity snaps (see Connection Setup).
- Expose the project as an MCP server — each pipeline becomes a tool named after its label. New to this? Start with the MCP quickstart, then use the MCP Server Pipeline Builder to generate the server from the imported pipelines.
Configure account
Attach an API Suite account (OAuth 2.0 or Bearer token) to the HTTP Client snap in Designer after import.
These pipelines ship without credentials by design — attach a valid account in Designer before the tools will execute.
See the SnapLogic account documentation for this connector: API Suite Account Configuration.
LinkedInAdsGetAccountSummary
Returns rolled-up advertising metrics for an entire LinkedIn ad account over a specified date range. Use it for headline spend and performance summaries; use LinkedInAdsGetCampaignPerformance for a per-campaign or time-series breakdown.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ad_account_id* | string | — | Numeric LinkedIn sponsored ad account ID. |
| start_year* | string | — | Start-date year of the reporting window, e.g. 2026. |
| start_month* | string | — | Start-date month of the reporting window, 1-12. |
| start_day* | string | — | Start-date day of the reporting window. |
| end_year | string | — | End-date year. Omit (with the other end parts) for an open-ended window running to date. |
| end_month | string | — | End-date month, 1-12. Only used when end_year is supplied. |
| end_day | string | — | End-date day. Only used when end_year is supplied. |
* Required parameter.
Try asking:
- How much did we spend on LinkedIn Ads in account 507404993 since January?
- Give me total LinkedIn impressions and clicks for Q1 2026
- What's our LinkedIn ad performance so far this year?
- Summarise spend, leads and conversions for the LinkedIn account between 1 April and 30 June 2026
LinkedInAdsGetCampaignGroups
Lists the active and paused campaign groups in a LinkedIn ad account. Use it to understand account structure or to find a campaign group ID before listing campaigns.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ad_account_id* | string | — | Numeric LinkedIn sponsored ad account ID, e.g. 507404993. |
* Required parameter.
Try asking:
- What campaign groups are set up in ad account 507404993?
- Show me the campaign groups for our LinkedIn account
- How is our LinkedIn advertising organised into groups?
- List the paused campaign groups in the EMEA ad account
LinkedInAdsGetCampaignPerformance
Returns advertising metrics per campaign over a date range, with selectable time granularity that defaults to daily. Use it to compare campaign performance, identify trends, and analyze cost per lead across campaigns.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ad_account_id* | string | — | Numeric LinkedIn sponsored ad account ID; all campaigns in it are reported. |
| start_year* | string | — | Start-date year of the reporting window. |
| start_month* | string | — | Start-date month, 1-12. |
| start_day* | string | — | Start-date day. |
| end_year | string | — | End-date year. Omit for an open-ended window. |
| end_month | string | — | End-date month, 1-12. Only used when end_year is supplied. |
| end_day | string | — | End-date day. Only used when end_year is supplied. |
| time_granularity | string | — | LinkedIn analytics time granularity, e.g. DAILY, MONTHLY or ALL. Defaults to DAILY. |
* Required parameter.
Try asking:
- Show me daily LinkedIn campaign performance for account 507404993 since 1 April 2026
- Which LinkedIn campaign had the best cost per lead last month?
- Break down our LinkedIn spend by campaign, monthly, for the first half of 2026
- Compare clicks and conversions across our LinkedIn campaigns week by week
- Are any LinkedIn campaigns spending without generating leads?
LinkedInAdsGetCampaigns
Lists active and paused campaigns in a LinkedIn ad account, with an optional filter for a specific campaign group. Use it to check what is running or to find a campaign ID for the creative-performance tool.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ad_account_id* | string | — | Numeric LinkedIn sponsored ad account ID. |
| campaign_group_id | string | — | Numeric campaign group ID. Supply to restrict results to campaigns in that group; omit for all campaigns in the account. |
* Required parameter.
Try asking:
- What LinkedIn campaigns are currently running in account 507404993?
- List the campaigns in campaign group 6112345
- Which of our LinkedIn campaigns are paused right now?
- Give me the campaign IDs for our demand-gen campaign group
LinkedInAdsGetCreativePerformance
Returns advertising metrics per creative within a single campaign over a date range, defaulting to a rolled-up total per creative. Use it to compare individual ad performance and see which creative is driving clicks and leads.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ad_account_id* | string | — | Numeric LinkedIn sponsored ad account ID. |
| campaign_id* | string | — | Numeric campaign ID whose creatives are reported. |
| start_year* | string | — | Start-date year of the reporting window. |
| start_month* | string | — | Start-date month, 1-12. |
| start_day* | string | — | Start-date day. |
| end_year | string | — | End-date year. Omit for an open-ended window. |
| end_month | string | — | End-date month, 1-12. Only used when end_year is supplied. |
| end_day | string | — | End-date day. Only used when end_year is supplied. |
| time_granularity | string | — | LinkedIn analytics time granularity, e.g. ALL, DAILY or MONTHLY. Defaults to ALL (one row per creative). |
* Required parameter.
Try asking:
- Which creative is performing best in LinkedIn campaign 141049524?
- Break down ad performance by creative for that campaign since April
- Compare click-through and lead volume across the creatives in our top LinkedIn campaign
- Show monthly creative-level results for campaign 141049524 in the first half of 2026
LinkedInAdsGetLeadFormSubmissions
Retrieves lead-gen form submissions collected by a LinkedIn ad account. Use it to see who filled in your lead forms and get the actual submission data behind your lead metrics.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ad_account_id* | string | — | Numeric LinkedIn sponsored ad account ID that owns the lead forms. |
| count | string | — | Number of lead form responses to return. Defaults to 100. |
* Required parameter.
Try asking:
- Show me the latest LinkedIn lead form submissions for account 507404993
- How many leads has our LinkedIn lead-gen form captured?
- Pull the last 25 LinkedIn lead form responses
- Who submitted our LinkedIn lead gen form recently?
LinkedInAdsListAccounts
Lists the active LinkedIn sponsored ad accounts accessible to the connected credentials. Use it first to find the ad account ID that all other tools require.
No parameters.
Try asking:
- Which LinkedIn ad accounts do we have access to?
- List our active LinkedIn advertising accounts
- What's the account ID for our LinkedIn Ads account?
- Show me the LinkedIn ad accounts I can report on