LinkedIn MCP Server for Cloudflare Workers
Test LinkedIn tools directly in your browser. Select a tool and provide inputs to see the results.
Create a free account to test LinkedIn tools interactively. No credit card required.
linkedin_list_ad_account_usersList users with access to an ad account. Args: - accountId: The ad account ID Returns a list of users and their roles on the account.
linkedin_get_ad_account_userGet a specific ad account user's access details. Args: - accountId: The ad account ID - userUrn: The user's person URN Returns the user's role and permissions on the account.
linkedin_add_ad_account_userAdd a user to an ad account with a specific role. Args: - accountId: The ad account ID - userUrn: The user's person URN - role: The role to assign (ACCOUNT_BILLING_ADMIN, ACCOUNT_MANAGER, CAMPAIGN_MANAGER, CREATIVE_MANAGER, VIEWER) Grants the user access to the ad account with the specified role.
linkedin_update_ad_account_userUpdate a user's role on an ad account. Args: - accountId: The ad account ID - userUrn: The user's person URN - role: The new role to assign Updates the user's role on the account.
linkedin_remove_ad_account_userRemove a user's access from an ad account. Args: - accountId: The ad account ID - userUrn: The user's person URN Removes the user's access to the ad account.
linkedin_list_my_ad_accountsList ad accounts the authenticated user has access to. Returns all ad accounts the current user can access along with their role on each.
linkedin_list_ad_accountsList advertising accounts. Args: - status: Filter by account status (DRAFT, CANCELED, PENDING_DELETION, REMOVED, ACTIVE) - type: Filter by account type (BUSINESS, ENTERPRISE) - pageSize: Number of accounts to return (default: 100) - pageToken: Pagination token - format: Response format ('json' or 'markdown') Returns a paginated list of ad accounts.
linkedin_get_ad_accountGet details of a specific ad account. Args: - accountId: The ad account ID - format: Response format ('json' or 'markdown') Returns the ad account details.
linkedin_create_ad_accountCreate a new advertising account. Args: - name: Account name - currency: Currency code (e.g., 'USD') - reference: Organization URN (e.g., 'urn:li:organization:xxx') - test: Whether this is a test account (default: false) Returns the created ad account.
linkedin_update_ad_accountUpdate an advertising account. Args: - accountId: The ad account ID - name: New account name - status: New status (ACTIVE, CANCELED, PENDING_DELETION) Updates the specified fields on the ad account.
linkedin_get_budget_pricingGet bid and budget recommendations for a campaign. Args: - accountId: The ad account ID - bidType: Bid type (CPM, CPC, CPV) - campaignType: Campaign type (TEXT_AD, SPONSORED_UPDATES, SPONSORED_INMAILS) - targetingCriteria: Targeting criteria object - matchType: Match type (EXACT or AUDIENCE_EXPANDED) - objectiveType: Campaign objective (optional) - currency: Currency code (default: USD) - dailyBudget: Daily budget amount (optional) Returns suggested bids and budget limits based on targeting criteria.
linkedin_get_ad_analyticsGet advertising analytics/reporting data. Args: - accounts: List of ad account URNs to filter by - campaigns: List of campaign URNs to filter by - creatives: List of creative URNs to filter by - startYear: Start date year - startMonth: Start date month (1-12) - startDay: Start date day (1-31) - endYear: End date year (optional) - endMonth: End date month (optional) - endDay: End date day (optional) - timeGranularity: Time granularity (ALL, DAILY, MONTHLY, YEARLY) - pivot: Grouping dimension (ACCOUNT, CAMPAIGN, CREATIVE, etc.) - fields: Metrics to retrieve (impressions, clicks, costInLocalCurrency, etc.) - format: Response format ('json' or 'markdown') Available metrics: - Performance: impressions, clicks, landingPageClicks, costInLocalCurrency, costInUsd - Engagement: likes, comments, shares, follows, totalEngagements - Video: videoStarts, videoViews, videoCompletions - Messaging: sends, opens - Lead Gen: oneClickLeads, qualifiedLeads - Reach: approximateMemberReach Returns analytics data grouped by the specified pivot.
linkedin_create_campaign_groupCreate a new campaign group. Args: - accountId: The ad account ID - name: Campaign group name - status: Initial status (ACTIVE, DRAFT, PAUSED) - totalBudgetAmount: Optional total budget amount - totalBudgetCurrency: Currency code for budget (default: USD) - startTime: Optional start timestamp (ms) - endTime: Optional end timestamp (ms) Returns the created campaign group.
linkedin_get_ad_statisticsGet advertising statistics with multiple pivot dimensions. Args: - accounts: List of ad account URNs to filter by - campaigns: List of campaign URNs to filter by - creatives: List of creative URNs to filter by - startYear: Start date year - startMonth: Start date month (1-12) - startDay: Start date day (1-31) - endYear: End date year (optional) - endMonth: End date month (optional) - endDay: End date day (optional) - timeGranularity: Time granularity (ALL, DAILY, MONTHLY, YEARLY) - pivots: List of up to 3 grouping dimensions (ACCOUNT, CAMPAIGN, CREATIVE, etc.) - fields: Metrics to retrieve - objectiveType: Filter by campaign objective (optional) - format: Response format ('json' or 'markdown') Unlike linkedin_get_ad_analytics, this supports up to 3 pivots for multi-dimensional analysis.
linkedin_list_dmp_segmentsList DMP segments (matched audiences) for an ad account. Args: - accountId: The ad account ID - pageSize: Number of segments to return (default: 100) - pageToken: Pagination token Returns a list of DMP segments including contact lists and website audiences.
linkedin_create_dmp_segmentCreate a new DMP segment (matched audience). Args: - accountId: The ad account ID - name: Segment name - type: Segment type (USER, COMPANY, LOOKALIKE) Returns the created DMP segment.
linkedin_delete_dmp_segmentDelete a DMP segment. Args: - segmentId: The DMP segment ID Permanently deletes the segment.
linkedin_add_users_to_dmp_segmentAdd hashed user emails to a DMP segment. Args: - segmentId: The DMP segment ID - hashedEmails: Array of SHA256-hashed lowercase email addresses (max 5000) Adds users to the segment for targeting.
linkedin_remove_users_from_dmp_segmentRemove users from a DMP segment. Args: - segmentId: The DMP segment ID - hashedEmails: Array of SHA256-hashed lowercase email addresses Removes users from the segment.
linkedin_add_companies_to_dmp_segmentAdd companies to a DMP segment for account-based targeting. Args: - segmentId: The DMP segment ID - companyIds: Array of company identifiers (organization IDs or domains) Adds companies to the segment for ABM targeting.
linkedin_list_ad_segmentsList ad segments (retargeting audiences) for ad accounts. Args: - accountIds: List of ad account URNs - pageSize: Number of segments to return - start: Pagination start index Returns website retargeting and other ad segments.
linkedin_list_campaign_groupsList campaign groups for an ad account. Args: - accountId: The ad account ID - status: Filter by status (ACTIVE, ARCHIVED, CANCELED, DRAFT, PAUSED, PENDING_DELETION, REMOVED) - pageSize: Number of groups to return (default: 100) - pageToken: Pagination token - format: Response format ('json' or 'markdown') Returns a paginated list of campaign groups.
linkedin_get_campaign_groupGet details of a specific campaign group. Args: - accountId: The ad account ID - groupId: The campaign group ID - format: Response format ('json' or 'markdown') Returns the campaign group details.
linkedin_update_campaign_groupUpdate a campaign group. Args: - accountId: The ad account ID - groupId: The campaign group ID - name: New name - status: New status - totalBudgetAmount: New total budget amount - totalBudgetCurrency: Currency code for budget Updates the specified fields on the campaign group.
linkedin_list_campaignsList campaigns for an ad account. Args: - accountId: The ad account ID - status: Filter by status (ACTIVE, PAUSED, ARCHIVED, COMPLETED, CANCELED, DRAFT, PENDING_DELETION, REMOVED) - type: Filter by type (TEXT_AD, SPONSORED_UPDATES, SPONSORED_INMAILS, DYNAMIC) - campaignGroupId: Filter by campaign group ID - pageSize: Number of campaigns to return (default: 100) - pageToken: Pagination token - format: Response format ('json' or 'markdown') Returns a paginated list of campaigns.
linkedin_get_campaignGet details of a specific campaign. Args: - accountId: The ad account ID - campaignId: The campaign ID - format: Response format ('json' or 'markdown') Returns the campaign details.
linkedin_create_campaignCreate a new advertising campaign. Args: - accountId: The ad account ID - campaignGroupId: The campaign group ID - name: Campaign name - type: Campaign type (TEXT_AD, SPONSORED_UPDATES, SPONSORED_INMAILS, DYNAMIC) - status: Initial status (ACTIVE, DRAFT, PAUSED) - costType: Cost type (CPM, CPC, CPV) - localeCountry: Target country code (e.g., 'US') - localeLanguage: Target language code (e.g., 'en') - dailyBudgetAmount: Daily budget amount - dailyBudgetCurrency: Budget currency (default: USD) - unitCostAmount: Bid amount per click/impression/view - offsiteDeliveryEnabled: Enable LinkedIn Audience Network Returns the created campaign.
linkedin_update_campaignUpdate an advertising campaign. Args: - accountId: The ad account ID - campaignId: The campaign ID - name: New name - status: New status - dailyBudgetAmount: New daily budget amount - dailyBudgetCurrency: Budget currency Updates the specified fields on the campaign.
linkedin_list_commentsList comments on a post or share. Args: - entityUrn: The post/share/activity URN - count: Number of comments to return (default: 10) - start: Start index for pagination - format: Response format ('json' or 'markdown') Returns a paginated list of comments.
linkedin_create_commentCreate a comment on a post or share. Args: - entityUrn: The post/share/activity URN to comment on - actor: Actor URN (person or organization making the comment) - text: Comment text Returns the created comment.
linkedin_delete_commentDelete a comment. Args: - entityUrn: The post/share URN the comment is on - commentId: The comment ID to delete - actor: Actor URN who owns the comment
linkedin_list_conversionsList conversion rules for an ad account. Args: - accountId: The ad account ID - format: Response format ('json' or 'markdown') Returns all conversion rules configured for the account.
linkedin_get_conversionGet a specific conversion rule. Args: - conversionId: The conversion rule ID - accountId: The ad account ID Returns the conversion rule details.
linkedin_create_conversionCreate a new conversion rule for tracking. Args: - accountId: The ad account ID - name: Conversion rule name - type: Conversion type (ADD_TO_CART, DOWNLOAD, INSTALL, KEY_PAGE_VIEW, LEAD, PURCHASE, SIGN_UP, OTHER) - conversionMethod: Method for tracking (CONVERSIONS_API, INSIGHT_TAG, etc.) - postClickAttributionWindowSize: Days for post-click attribution (1-90) - viewThroughAttributionWindowSize: Days for view-through attribution (1-90) - attributionType: Attribution model - autoAssociate: Whether to auto-associate with all campaigns Returns the created conversion rule.
linkedin_update_conversionUpdate a conversion rule. Args: - conversionId: The conversion rule ID - accountId: The ad account ID - name: New name (optional) - enabled: Enable/disable the rule (optional) - postClickAttributionWindowSize: New post-click window (optional) - viewThroughAttributionWindowSize: New view-through window (optional) Updates the specified fields on the conversion rule.
linkedin_associate_campaign_conversionAssociate a conversion rule with a campaign. Args: - campaignUrn: The campaign URN - conversionUrn: The conversion rule URN Associates the conversion rule with the campaign for tracking.
linkedin_disassociate_campaign_conversionRemove a conversion rule association from a campaign. Args: - campaignUrn: The campaign URN - conversionUrn: The conversion rule URN Removes the conversion tracking from the campaign.
linkedin_send_conversion_eventSend a conversion event to the Conversions API. Args: - conversionUrn: The conversion rule URN - conversionHappenedAt: Timestamp when conversion happened (ms) - eventId: Unique event ID for deduplication - userHashedEmail: SHA256-hashed lowercase user email - conversionValue: Optional monetary value of conversion - currencyCode: Currency code (default: USD) Sends a conversion event for attribution.
linkedin_list_creativesList creatives for an ad account. Args: - accountId: The ad account ID - campaignId: Filter by campaign ID - intendedStatus: Filter by status (ACTIVE, PAUSED, DRAFT, ARCHIVED, CANCELED, PENDING_DELETION, REMOVED) - pageSize: Number of creatives to return (default: 100) - pageToken: Pagination token - format: Response format ('json' or 'markdown') Returns a paginated list of creatives.
linkedin_get_creativeGet details of a specific creative. Args: - accountId: The ad account ID - creativeId: The creative ID (URN) - format: Response format ('json' or 'markdown') Returns the creative details.
linkedin_create_creativeCreate a new creative. Args: - accountId: The ad account ID - campaignId: The campaign ID (URN) - name: Creative name - intendedStatus: Initial status (ACTIVE, DRAFT, PAUSED) - contentReference: Content reference URN (e.g., 'urn:li:ugcPost:xxx' or 'urn:li:share:xxx') Returns the created creative.
linkedin_update_creativeUpdate a creative. Args: - accountId: The ad account ID - creativeId: The creative ID (URN) - name: New name - intendedStatus: New status Updates the specified fields on the creative.
linkedin_initialize_image_uploadInitialize an image upload to LinkedIn. Args: - owner: The owner URN (e.g., 'urn:li:organization:xxx' or 'urn:li:person:xxx') Returns upload instructions including uploadUrl and image URN. After receiving the response, upload your image binary to the uploadUrl using a PUT request.
linkedin_get_imageGet details of an uploaded image. Args: - imageUrn: The image URN (e.g., 'urn:li:image:xxx') Returns image details including status and download URL.
linkedin_initialize_video_uploadInitialize a video upload to LinkedIn. Args: - owner: The owner URN (e.g., 'urn:li:organization:xxx' or 'urn:li:person:xxx') - fileSizeBytes: The size of the video file in bytes - uploadCaptions: Whether captions will be uploaded (default: false) - uploadThumbnail: Whether a custom thumbnail will be uploaded (default: false) Returns upload instructions including uploadUrl(s) and video URN. For large videos, multiple upload URLs may be provided for chunked upload.
linkedin_finalize_video_uploadFinalize a video upload after all parts have been uploaded. Args: - videoUrn: The video URN from initialize_video_upload - uploadToken: The upload token received during initialization - uploadedPartIds: Array of ETags/part IDs from each uploaded chunk Call this after successfully uploading all video chunks.
linkedin_get_videoGet details of an uploaded video. Args: - videoUrn: The video URN (e.g., 'urn:li:video:xxx') Returns video details including processing status and download URL.
linkedin_initialize_document_uploadInitialize a document upload to LinkedIn. Args: - owner: The owner URN (e.g., 'urn:li:organization:xxx' or 'urn:li:person:xxx') Returns upload instructions including uploadUrl and document URN. Supported formats: PPT, PPTX, DOC, DOCX, PDF (max 100MB, 300 pages). After receiving the response, upload your document binary to the uploadUrl using a PUT request.
linkedin_get_documentGet details of an uploaded document. Args: - documentUrn: The document URN (e.g., 'urn:li:document:xxx') Returns document details including status and download URL.
linkedin_get_organizationGet organization details by ID. Args: - organizationId: The organization ID (numeric) - format: Response format ('json' or 'markdown') Returns organization details including name, description, logo, and other profile information.
linkedin_get_organization_by_vanity_nameFind an organization by its vanity name (URL slug). Args: - vanityName: The organization's vanity name (e.g., 'microsoft' from linkedin.com/company/microsoft) - format: Response format ('json' or 'markdown') Returns organization details.
linkedin_get_organization_follower_countGet the follower count for an organization. Args: - organizationId: The organization ID Returns the total number of followers.
linkedin_get_organization_page_statisticsGet page statistics for an organization (views, visitors, etc.). Args: - organizationId: The organization ID - startTime: Optional start timestamp in milliseconds - endTime: Optional end timestamp in milliseconds - format: Response format ('json' or 'markdown') Returns page view statistics segmented by various dimensions.
linkedin_get_share_statisticsGet share/post statistics for an organization. Args: - organizationId: The organization ID - shares: Optional array of specific share URNs to get statistics for - format: Response format ('json' or 'markdown') Returns engagement statistics including clicks, comments, likes, shares, and impressions.
linkedin_create_postCreate a new LinkedIn post. Args: - author: Author URN (e.g., 'urn:li:person:xxx' or 'urn:li:organization:xxx') - text: Post commentary/text content - visibility: Post visibility ('PUBLIC', 'CONNECTIONS', 'LOGGED_IN') - mediaId: Optional media URN (image or video) - mediaTitle: Optional title for media - articleUrl: Optional URL for article post - articleTitle: Optional title for article - articleDescription: Optional description for article Returns the created post.
linkedin_get_postGet a specific post by URN. Args: - postUrn: The post URN (e.g., 'urn:li:share:xxx' or 'urn:li:ugcPost:xxx') - format: Response format ('json' or 'markdown') Returns the post details.
linkedin_list_postsList posts by an author. Args: - author: Author URN (person or organization) - count: Number of posts to return (1-100, default: 10) - start: Start index for pagination - sortBy: Sort order ('LAST_MODIFIED' or 'CREATED') - format: Response format ('json' or 'markdown') Returns a paginated list of posts.
linkedin_update_postUpdate an existing post. Args: - postUrn: The post URN - text: New commentary text Note: Only commentary can be updated after creation.
linkedin_delete_postDelete a post. Args: - postUrn: The post URN to delete
linkedin_get_profileGet the authenticated user's LinkedIn profile. Returns the current user's profile information including name, headline, and profile picture.
linkedin_list_reactionsList reactions on a post or comment. Args: - entityUrn: The post/share/comment URN - count: Number of reactions to return (default: 10) - start: Start index for pagination - format: Response format ('json' or 'markdown') Returns a paginated list of reactions.
linkedin_create_reactionAdd a reaction to a post or comment. Args: - actor: Actor URN (person or organization reacting) - entityUrn: The post/share/comment URN to react to - reactionType: Type of reaction ('LIKE', 'PRAISE', 'EMPATHY', 'INTEREST', 'APPRECIATION', 'ENTERTAINMENT') Reaction types map to: - LIKE: "Like" in UI - PRAISE: "Celebrate" in UI - EMPATHY: "Love" in UI - INTEREST: "Insightful" in UI - APPRECIATION: "Support" in UI - ENTERTAINMENT: "Funny" in UI
linkedin_delete_reactionRemove a reaction from a post or comment. Args: - actor: Actor URN who made the reaction - entityUrn: The post/share/comment URN
linkedin_get_targeting_facetsGet available ad targeting facets (high-level categories of targeting options). Returns a list of targeting facets like genders, industries, seniorities, job functions, etc. Each facet includes available finders for querying specific entity values.
linkedin_get_targeting_entities_by_facetGet targeting entity values within a specific facet. Args: - facet: The facet URN (e.g., 'urn:li:adTargetingFacet:seniorities') - locale: Optional locale object with language and country codes Returns specific targeting options within the facet (e.g., all seniority levels).
linkedin_search_targeting_entitiesSearch for targeting entities within a facet using typeahead. Args: - facet: The facet URN (e.g., 'urn:li:adTargetingFacet:employers') - query: Search query string - locale: Optional locale Useful for finding specific employers, skills, titles, schools, etc. by partial text matching.
linkedin_get_targeting_entities_by_urnsGet targeting entity metadata by URNs. Args: - urns: List of targeting entity URNs Returns metadata and value information for the specified URNs.
linkedin_get_similar_targeting_entitiesGet targeting entities similar to provided entities. Args: - facet: The facet URN - entities: List of entity URNs to find similar entities for Returns entities similar to the provided ones (e.g., similar employers).
linkedin_list_ad_account_users{
"accountId": "example_accountId"
}linkedin_get_ad_account_user{
"userUrn": "example_userUrn",
"accountId": "example_accountId"
}linkedin_add_ad_account_user{
"userUrn": "example_userUrn",
"accountId": "example_accountId"
}