Salesforce Marketing Mcp
About
MCP server for Salesforce — query leads, campaigns, pipeline, and attribution from Claude without writing a line of SOQL.
Explore
- 47 tools for Leads, Contacts, Accounts, Campaigns, and more
- 14 dedicated marketing reporting tools (campaign ROI, MQL trends)
- No SOQL required – natural language queries
- Works with Claude and other MCP clients
- Focused on campaign and pipeline analysis
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Salesforce Marketing McpCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Connect the server to an MCP-compatible client (e.g., Claude) using valid Salesforce API credentials. Once configured, you can ask questions in plain English, and the server translates them into Salesforce queries automatically.
sf_search_leads
Search 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_get_lead
Retrieve 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_create_lead
Create 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_update_lead
Update 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_convert_lead
Convert 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_search_contacts
Search 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_get_contact
Retrieve 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_create_contact
Create 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_update_contact
Update 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_contact_by_email
Look 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_search_accounts
Search 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_get_account
Retrieve 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_list_account_contacts
List 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_campaigns
List 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_get_campaign
Retrieve a complete Salesforce Campaign record by ID. Returns all performance metrics: NumberOfLeads, NumberOfContacts, NumberOfResponses, NumberOfOpportunities, NumberOfWonOpportunities, AmountWonOpportunities, ActualCost, BudgetedCost, ExpectedRevenue, and date range.
sf_create_campaign
Create 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_update_campaign
Update 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_get_campaign_members
List 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_add_campaign_member
Add 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_members
Add 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_update_campaign_member_status
Update 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_create_task
Create 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_list_tasks_by_lead
List 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_list_tasks_by_contact
List 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_campaign
List 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_reports
List 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_run_report
Execute 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_get_report_metadata
Fetch 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_campaign_roi
Calculate 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_campaign_member_status_breakdown
Return 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_top_campaigns
Rank 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_campaign_performance_trend
Show 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_lead_source_breakdown
Aggregate 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_pipeline_by_campaign
Show 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_campaign_influence
Query 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_won_revenue_by_campaign
Aggregate 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?'
sf_lead_conversion_metrics
Calculate 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_pipeline_summary
Summarize 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_pipeline_by_lead_source
Summarize 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_mql_trend
Track 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_forecast_summary
Show 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_activity_summary
Aggregate 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_recent_activities_by_lead
List 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_recent_activities_by_contact
List 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_run_soql
Execute 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_describe_object
Describe 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_list_objects
List 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_search_leads: Search 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_get_lead: Retrieve 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_create_lead: Create 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_update_lead: Update 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_convert_lead: Convert 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_search_contacts: Search 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_get_contact: Retrieve 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_create_contact: Create 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_update_contact: Update 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_contact_by_email: Look 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_search_accounts: Search 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_get_account: Retrieve 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_list_account_contacts: List 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_campaigns: List 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_get_campaign: Retrieve a complete Salesforce Campaign record by ID. Returns all performance metrics: NumberOfLeads, NumberOfContacts, NumberOfResponses, NumberOfOpportunities, NumberOfWonOpportunities, AmountWonOpportunities, ActualCost, BudgetedCost, ExpectedRevenue, and date range.
- sf_create_campaign: Create 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_update_campaign: Update 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_get_campaign_members: List 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_add_campaign_member: Add 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_members: Add 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_update_campaign_member_status: Update 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_create_task: Create 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_list_tasks_by_lead: List 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_list_tasks_by_contact: List 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_campaign: List 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_reports: List 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_run_report: Execute 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_get_report_metadata: Fetch 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_campaign_roi: Calculate 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_campaign_member_status_breakdown: Return 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_top_campaigns: Rank 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_campaign_performance_trend: Show 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_lead_source_breakdown: Aggregate 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_pipeline_by_campaign: Show 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_campaign_influence: Query 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_won_revenue_by_campaign: Aggregate 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?'
- sf_lead_conversion_metrics: Calculate 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_pipeline_summary: Summarize 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_pipeline_by_lead_source: Summarize 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_mql_trend: Track 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_forecast_summary: Show 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_activity_summary: Aggregate 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_recent_activities_by_lead: List 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_recent_activities_by_contact: List 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_run_soql: Execute 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_describe_object: Describe 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_list_objects: List 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.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"salesforce marketing mcp": {
"salesforce": {
"command": "npx",
"args": [
"-y",
"salesforce-marketing-mcp"
],
"env": {
"SF_USERNAME": "[email protected]",
"SF_PASSWORD": "yourpassword",
"SF_SECURITY_TOKEN": "yourtoken"
}
}
}
}
}
McpServers
{
"salesforce": {
"command": "npx",
"args": [
"-y",
"salesforce-marketing-mcp"
],
"env": {
"SF_USERNAME": "[email protected]",
"SF_PASSWORD": "yourpassword",
"SF_SECURITY_TOKEN": "yourtoken"
}
}
}
MCP server for Salesforce — query leads, campaigns, pipeline, and attribution from Claude without writing a line of SOQL.
47 tools spanning Leads, Contacts, Accounts, Campaigns, Campaign Members, Tasks, and Analytics Reports — plus 14 marketing reporting tools (campaign ROI, lead source attribution, pipeline by campaign, MQL trend, CampaignInfluence). Built for marketing ops, revenue ops, and B2B teams who want AI-assisted answers without pestering RevOps for another report.
Why this exists
Marketing ops teams need answers like "which campaigns drove the most pipeline last quarter" or "what's our MQL trend by month" and usually end up pestering RevOps or copy-pasting Lightning report URLs. This server ships those queries as first-class tools — campaign ROI, CampaignInfluence rollups, lead source breakdowns, MQL trends — so anyone with API access can ask in plain English and get a structured answer.
Most Salesforce MCP servers stop at CRUD on standard objects. The 14 marketing reporting tools are the differentiator — they run the queries marketing ops actually needs.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


