Salesforce Marketing MCP server
MCP server for Salesforce — 47 tools for leads, campaigns, pipeline, attribution, and reporting.
30 downloads/wk
Reviews
Write oneNobody has reviewed Salesforce Marketing yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Salesforce Marketing tools (47, 11 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
sf_activity_summaryAggregate Task and Event counts grouped by Lead Source, Campaign, or Owner. Returns total activities, completed activities, and open activities per group within an optional date range. Use to understand sales follow-up patterns and marketing-sourced activity volume.
sf_add_campaign_memberAdd a single Lead or Contact to a Salesforce Campaign as a CampaignMember. Provide either leadId or contactId (not both). Optionally set the initial Status (defaults to the campaign's default member status). Returns the new CampaignMember ID.
sf_bulk_add_campaign_membersAdd up to 200 Leads and/or Contacts to a Salesforce Campaign in a single API call. Pass arrays of leadIds and/or contactIds. All members are assigned the same initial Status. Returns success/failure counts and any per-record errors.
sf_campaign_influenceQuery Salesforce's CampaignInfluence object for multi-touch attribution data. Returns which campaigns influenced each opportunity, along with the opportunity amount, stage, and influence score. Filter by campaign ID or date range. Requires Campaign Influence to be enabled in the org.
sf_campaign_member_status_breakdownReturn a count of CampaignMembers grouped by Status for a specific campaign (e.g. Sent: 1200, Opened: 340, Responded: 87, Converted: 23). Essential for understanding engagement distribution within a single campaign.
sf_campaign_performance_trendShow how CampaignMember additions have trended over time for a specific campaign. Groups member creation dates by week or month. Useful for visualizing campaign ramp-up, pacing, and drop-off patterns.
sf_campaign_roiCalculate marketing ROI metrics for one or all campaigns: ActualCost, BudgetedCost, NumberOfLeads, NumberOfContacts, NumberOfOpportunities, NumberOfWonOpportunities, AmountWonOpportunities, computed cost-per-lead, cost-per-opportunity, response rate %, and ROI %. Filter by date range or a specific campaign ID.
sf_contact_by_emailwrite actionLook up Salesforce Contact records by exact email address. Returns up to 10 matches with full contact details and associated account. Useful for deduplication checks before creating new contacts or for finding the Salesforce record for a known email.
sf_convert_leadConvert a qualified Salesforce Lead into an Account, Contact, and optionally an Opportunity using the native Salesforce lead conversion process. Optionally merge into an existing Account or Contact by passing their IDs. Set doNotCreateOpportunity=true to skip opportunity creation.
sf_create_campaignwrite actionCreate a new Salesforce Campaign record. Set name, type, status, start/end dates, budgeted cost, expected revenue, and description. Returns the new Campaign ID. Use sf_add_campaign_member or sf_bulk_add_campaign_members to populate members afterward.
sf_create_contactwrite actionCreate a new Contact record in Salesforce. Optionally link to an existing Account via accountId. Returns the new Contact ID. Use when a lead has been converted or when adding a known contact directly without going through the lead process.
sf_create_leadwrite actionCreate a new Lead record in Salesforce. Requires at minimum a last name, email, and company. Optionally set title, phone, lead source, and description. Returns the new Lead ID on success. Use sf_convert_lead afterward to convert a qualified lead.
sf_create_taskwrite actionCreate a new Task in Salesforce. Link it to a Lead or Contact via whoId, and optionally to a Campaign or Opportunity via whatId. Set subject, status (e.g. 'Not Started', 'Completed'), priority, due date, and description. Returns the new Task ID.
sf_describe_objectDescribe a Salesforce SObject and return all its field definitions: field API names, labels, data types, lengths, nullability, and relationship references. Use before writing SOQL to discover the correct field API names for Lead, Contact, Campaign, CampaignMember, or any custom object.
sf_forecast_summaryShow open Opportunities with CloseDate within a specified range, grouped by StageName. Returns count, total amount, and weighted amount per stage. Use for short-term revenue forecasting and end-of-quarter pipeline reviews.
sf_get_accountRetrieve a complete Salesforce Account record by ID, including open opportunity count, total lead count, and all standard account fields (industry, billing address, phone, website, annual revenue, employee count, owner).
sf_get_campaignRetrieve a complete Salesforce Campaign record by ID. Returns all performance metrics: NumberOfLeads, NumberOfContacts, NumberOfResponses, NumberOfOpportunities, NumberOfWonOpportunities, AmountWonOpportunities, ActualCost, BudgetedCost, ExpectedRevenue, and date range.
sf_get_campaign_membersList CampaignMember records for a given Campaign. Returns member status, HasResponded flag, FirstRespondedDate, and linked Lead or Contact fields (email, company, account name). Filter by Status (e.g. 'Sent', 'Responded', 'Converted'). Default limit 200, max 2000.
sf_get_contactRetrieve a complete Salesforce Contact record by its 18-character ID. Returns all standard fields including name, email, phone, title, account name, lead source, owner, and creation date.
sf_get_leadRetrieve a complete Salesforce Lead record by its 18-character ID. Returns all standard fields including name, email, company, title, phone, status, lead source, owner, creation date, and conversion details (ConvertedDate, ConvertedAccountId, ConvertedContactId, ConvertedOpportunityId).
sf_get_report_metadataFetch the metadata for a Salesforce Analytics report — column definitions, field labels, data types, grouping fields, and filter configuration. Use before sf_run_report to understand what columns will be returned and what filters can be applied.
sf_lead_conversion_metricsCalculate Lead-to-Opportunity conversion rates grouped by Lead Source or Campaign. Returns total leads, converted leads, conversion rate %, and opportunities created per group. Filter by creation date range. Use to identify which channels produce the highest-quality leads.
sf_lead_source_breakdownAggregate marketing attribution data by Lead Source. For each source returns: total leads, converted leads, conversion rate %, opportunities created, total opportunity amount, and closed-won revenue. Optionally filter by date range. The core channel-level ROI report.
sf_list_account_contactsList all Contact records associated with a specific Salesforce Account. Returns name, email, title, phone, and lead source for each contact. Useful for understanding account coverage and identifying contacts for campaign targeting.
sf_list_campaignsList Salesforce Campaign records sorted by last modified date. Filter by Status (e.g. 'Planned', 'Active', 'Completed'), Type (e.g. 'Email', 'Webinar', 'Event'), or activeOnly=true. Returns name, type, status, dates, member counts, and cost fields.
sf_list_objectsList all queryable SObjects available in the connected Salesforce org. Filter by name substring (e.g. 'Campaign') or set customOnly=true to show only custom objects. Returns API name, label, and whether the object is createable, updateable, and queryable.
sf_list_reportsList available Salesforce Analytics reports via the Analytics REST API. Returns report name, ID, type (summary, tabular, matrix), folder name, and last run date. Use to discover report IDs before calling sf_run_report.
sf_list_tasks_by_campaignList all Task records associated with a specific Campaign (via WhatId). Returns subject, status, priority, due date, and assigned owner. Useful for tracking follow-up tasks generated by a campaign.
sf_list_tasks_by_contactList all Task records associated with a specific Contact. Returns subject, status, priority, due date, and description sorted by most recent. Use to review the full activity history for a contact before outreach or account review.
sf_list_tasks_by_leadList all Task records associated with a specific Lead. Returns subject, status, priority, due date, description, and creation date sorted by most recent. Useful for reviewing follow-up history on a lead before outreach.
sf_mql_trendTrack Marketing Qualified Lead (MQL) volume over time. Groups Lead records by creation date (week or month) where Status matches the target value (default: 'MQL'). Filter by date range. Use to spot MQL ramp-up, dips, or seasonal patterns in your lead pipeline.
sf_pipeline_by_campaignShow Opportunity pipeline grouped by primary Campaign. Returns campaign name, opportunity count, total amount, and a breakdown by StageName. Filter to open-only or include closed deals. Optionally filter by date range. Answers 'which campaigns are generating pipeline?'
sf_pipeline_by_lead_sourceSummarize Opportunity pipeline grouped by Lead Source. Returns opportunity count, total amount, and weighted pipeline per source. Toggle openOnly and filter by date range. Use to understand which marketing channels are driving the most pipeline value.
sf_pipeline_summarySummarize all Salesforce Opportunities grouped by StageName. Returns count, total amount, average probability, and weighted pipeline (amount × probability) per stage. Toggle openOnly to exclude Closed Won/Lost. The fastest way to get a full pipeline health snapshot.
sf_recent_activities_by_contactList recent Task and Event records associated with a specific Contact. Returns subject, type, status, priority, due date, and description sorted by most recent. Use to review engagement history before account reviews, renewals, or re-engagement campaigns.
sf_recent_activities_by_leadList recent Task and Event records associated with a specific Lead. Returns subject, type, status, priority, due date, and description sorted by most recent. Use to review all follow-up history for a lead before making contact or assessing lead quality.
sf_run_reportwrite actionExecute a saved Salesforce Analytics report by ID and return the results as structured rows. Optionally apply on-the-fly filters (column, operator, value). Returns the factMap data parsed into an array of row objects. Use sf_get_report_metadata first to understand available columns.
sf_run_soqlwrite actionExecute a raw SOQL query against Salesforce. Use as an escape hatch when the preset tools don't cover your exact reporting shape. Supports all SOQL features including GROUP BY, aggregate functions, subqueries, and relationship traversal. Returns up to 2000 rows. See: developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta
sf_search_accountsSearch Salesforce Accounts by name using SOSL full-text search. Returns matching accounts with Id, name, industry, billing city, phone, website, and owner. Use to find an Account ID before looking up contacts or opportunities.
sf_search_contactsSearch Salesforce Contacts by name or email using SOSL full-text search. Returns matching contacts with Id, name, email, phone, title, account name, and lead source. For exact email lookups use sf_contact_by_email instead.
sf_search_leadsSearch Salesforce leads by name, email, or company using SOSL full-text search. Returns matching leads with Id, name, email, company, title, status, and lead source. Use this for fuzzy lookups; use sf_lead_by_email for exact email matches.
sf_top_campaignsRank Salesforce campaigns by a chosen metric: 'responses' (NumberOfResponses), 'opportunities' (NumberOfOpportunities), or 'won_revenue' (AmountWonOpportunities). Optionally filter by date range. Returns the top N campaigns sorted by the selected metric descending.
sf_update_campaignwrite actionUpdate one or more fields on an existing Salesforce Campaign. Pass the Campaign ID and a fields object with any standard field API names (e.g. Status, EndDate, ActualCost, Description). Commonly used to close out campaigns or update spend after the campaign runs.
sf_update_campaign_member_statuswrite actionUpdate the Status and/or HasResponded flag on an existing CampaignMember record. Use to mark members as Responded, Converted, or any custom status defined in the Campaign's member status picklist. Requires the CampaignMember ID (not the Lead/Contact ID).
sf_update_contactwrite actionUpdate one or more fields on an existing Salesforce Contact record. Pass the 18-character Contact ID and a fields object with any standard or custom field API names. Returns the updated record on success.
sf_update_leadwrite actionUpdate one or more fields on an existing Salesforce Lead record. Pass the 18-character Lead ID and a fields object with any standard or custom field API names (e.g. Status, LeadSource, Title, Phone). Returns the updated record on success.
sf_won_revenue_by_campaignAggregate Closed Won Opportunity revenue grouped by primary Campaign (CampaignId on the Opportunity). Returns campaign name, count of won deals, and total won revenue. Filter by close date range. Answers 'which campaigns actually drove closed revenue?'
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan29 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancerepository not readable: repo not found3/15
- Maintainer identityno repository or website to verify2/10
How Salesforce Marketing compares
Against every graded Sales and outbound MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 55/100
- higher than 10% of 877 Sales and outbound servers
- Tools
- 47
- the typical Sales and outbound server has 9
- Tools that change things
- 23%
- typical: 11%. Fewer write tools means less an agent can break
- Downloads a week
- 30
- more than 23% of 151 Sales and outbound servers with a package
What its tools let an agent do: 36 read · 11 change
Install Salesforce Marketing in Claude Code, Cursor or VS Code
Runs npx -y salesforce-marketing-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add salesforce-marketing-mcp -- npx -y salesforce-marketing-mcp
Salesforce Marketing: common questions
- Is Salesforce Marketing MCP server safe?
- With care: it is graded C, so read the findings first (55/100). Read the Salesforce Marketing safety report
- How do I install Salesforce Marketing?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Salesforce Marketing need an API key?
- Yes. The registry entry asks for
SF_PASSWORD,SF_SECURITY_TOKEN. - Is Salesforce Marketing maintained?
- The latest release is v1.0.1.
- What can I use instead of Salesforce Marketing?
- Servers from other publishers that do the same job: MisarReach MCP Server, Salesforce MCP server and LinkedIn Ads MCP by AdPlug MCP server.
- How does Salesforce Marketing compare with other Sales and outbound MCP servers?
- safety score 55/100 (higher than 10% of 877 Sales and outbound servers); tools 47 (the typical Sales and outbound server has 9); tools that change things 23% (typical: 11%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Salesforce Marketing
Same job from other publishers: the closest match first, then the best rated.
- MisarReach MCP ServerFind leads, enrich and score them, run multi-channel outreach, and manage the sales pipeline — from…not reviewedGrowingA
- SalesforceSalesforce CRM MCP server: accounts, contacts, opportunities, leads, tasks, and custom objectsnot reviewedGrowingA
LinkedIn Ads MCP by AdPlugLinkedIn Ads MCP server: 10 tools for campaigns, creatives, audiences, lead forms. Writes preview.not reviewedGrowingA
Lead Enrichmentsuperagnt: marketing plugin for Claude and ChatGPT. Find your customers: people by role and company.not reviewedGrowingA- AdwarpOpen-source ad agent for LinkedIn Ads and Google Ads. Drafts campaigns, audiences and reports.not reviewedEstablishedA