linkedin_ads_get_activities
Get LinkedIn Ads Change History
LinkedinDescription
What changed in a LinkedIn ad account, and when: budgets, bids, status, targeting, schedules and names of campaign groups, campaigns and creatives, with before/after values.
Read-onlyIdempotentOpen-world
Usage
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "linkedin_ads_get_activities",
"arguments": {
"account_id": "123456789",
"reason": "What changed in the account this week"
}
}
}
hopkin linkedin activities get
| Flag | Type | Required | Description |
|---|---|---|---|
--account | string | Required | LinkedIn ad account ID (numeric, or the sponsoredAccount URN). |
--start-date | string | Optional | Start of the window, YYYY-MM-DD (UTC). Defaults to 7 days ago. |
--end-date | string | Optional | End of the window, YYYY-MM-DD (UTC), inclusive. Defaults to today. |
--entity-type | string | Optional | Only changes to this kind of entity. |
--entity-ids | array | Optional | Only changes to these campaign group / campaign / creative IDs (numeric or URN). |
--limit | integer | Optional | Changes per page (1-200, default 50). |
--cursor | string | Optional | nextCursor from the previous response. Pass it with otherwise identical parameters for the next page. |
--refresh | boolean | Optional | Re-scan the account now before answering. Normally not needed: the account is re-scanned when the last scan is over 15 minutes old. |
--connection-id | string | Optional | Optional ID of a specific connection to use for this call. Omit to use the actor's default connection for this network. Call <platform>_list_connections to discover available connection IDs. |
{
"mcpServers": {
"linkedin-ads": {
"url": "https://linkedin.mcp.hopkin.ai",
"transport": "sse"
}
}
}
- Recent changes
- Budget audit, last 30 days
- One creative
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
account_id |
string |
Required | LinkedIn ad account ID (numeric, or the sponsoredAccount URN).minLength: 1, maxLength: 64 |
reason |
string |
Required | Why this tool call is neededminLength: 1, maxLength: 500 |
Optional parameters (8)
| Name | Type | Required | Description |
|---|---|---|---|
start_date |
string |
Optional | Start of the window, YYYY-MM-DD (UTC). Defaults to 7 days ago.pattern: ^\d{4}-\d{2}-\d{2}$ |
end_date |
string |
Optional | End of the window, YYYY-MM-DD (UTC), inclusive. Defaults to today.pattern: ^\d{4}-\d{2}-\d{2}$ |
entity_type |
string |
Optional | Only changes to this kind of entity.CAMPAIGN_GROUP CAMPAIGN CREATIVE |
entity_ids |
array |
Optional | Only changes to these campaign group / campaign / creative IDs (numeric or URN). |
limit |
integer |
Optional | Changes per page (1-200, default 50).min: 1, max: 200 |
cursor |
string |
Optional | nextCursor from the previous response. Pass it with otherwise identical parameters for the next page. |
refresh |
boolean |
Optional | Re-scan the account now before answering. Normally not needed: the account is re-scanned when the last scan is over 15 minutes old. |
connection_id |
string |
Optional | Optional ID of a specific connection to use for this call. Omit to use the actor's default connection for this network. Call <platform>_list_connections to discover available connection IDs. |
Examples
Recent changes
{
"account_id": "123456789",
"reason": "What changed in the account this week"
}
hopkin linkedin activities get --account 123456789
Budget audit, last 30 days
{
"account_id": "123456789",
"start_date": "2026-09-01",
"end_date": "2026-09-30",
"entity_type": "CAMPAIGN",
"reason": "Did anyone change budgets?"
}
hopkin linkedin activities get --account 123456789 --start-date 2026-09-01 --end-date 2026-09-30 --entity-type CAMPAIGN
One creative
{
"account_id": "123456789",
"entity_type": "CREATIVE",
"entity_ids": [
"9001"
],
"reason": "Who edited this creative?"
}
hopkin linkedin activities get --account 123456789 --entity-type CREATIVE --entity-ids 9001