Connects to Salesforce via the REST API to expose CRM operations for accounts, contacts, opportunities, leads, tasks, users, and custom objects. Built by Mindstone as part of a 35-connector suite that emphasizes security hardening (pinned dependencies, OIDC provenance, no publish-time scripts). You'd reach for this when you want an LLM to query pipeline data, update records, or orchestrate workflows across your Salesforce org without building custom integrations. The server uses stdio transport and supports multi-account scenarios. Part of the broader Mindstone collection that includes similar treatment for HubSpot, Microsoft 365, Google Workspace, and other SaaS platforms.
Public tool metadata for what this MCP can expose to an agent.
SALESFORCE_ACCOUNT_CREATION_WITH_CONTENT_TYPE_OPTIONDEPRECATED: Creates a new Salesforce Account using a JSON POST request, requiring 'Name'; specific fields (e.g., custom, DunsNumber) may have org-level prerequisites.66 paramsDEPRECATED: Creates a new Salesforce Account using a JSON POST request, requiring 'Name'; specific fields (e.g., custom, DunsNumber) may have org-level prerequisites.
IdstringFaxstringSicstringNamestringSitestringTypestringPhonestringJigsawstringRatingstringSLA__cstringOwnerIdstringSicDescstringWebsitestringIndustrystringParentIdstringPhotoUrlstringActive__cstringIsDeletedbooleanNaicsCodestringNaicsDescstringOwnershipstringDunsNumberstringTradestylestringBillingCitystringCleanStatusstringCreatedByIdstringCreatedDatestringDescriptionstringYearStartedstringBillingStatestringShippingCitystringTickerSymbolstringAccountNumberstringAccountSourcestringAnnualRevenueintegerBillingStreetstringShippingStatestringBillingCountrystringDandbCompanyIdstringLastViewedDatestringMasterRecordIdstringShippingStreetstringSystemModstampstringBillingLatitudeintegerJigsawCompanyIdstringShippingCountrystringattributes__urlstringBillingLongitudeintegerLastActivityDatestringLastModifiedByIdstringLastModifiedDatestringOperatingHoursIdstringShippingLatitudeintegerattributes__typestringBillingPostalCodestringNumberOfEmployeesintegerShippingLongitudeintegerLastReferencedDatestringSLASerialNumber__cstringShippingPostalCodestringCustomerPriority__cstringNumberofLocations__cintegerSLAExpirationDate__cstringUpsellOpportunity__cstringBillingGeocodeAccuracystringShippingGeocodeAccuracystringSALESFORCE_ADD_CONTACT_TO_CAMPAIGNAdds a contact to a campaign by creating a CampaignMember record, allowing you to track campaign engagement.3 paramsAdds a contact to a campaign by creating a CampaignMember record, allowing you to track campaign engagement.
statusstringcontact_idstringcampaign_idstringSALESFORCE_ADD_LEAD_TO_CAMPAIGNAdds a lead to a campaign by creating a CampaignMember record, allowing you to track campaign engagement.3 paramsAdds a lead to a campaign by creating a CampaignMember record, allowing you to track campaign engagement.
statusstringlead_idstringcampaign_idstringSALESFORCE_ADD_OPPORTUNITY_LINE_ITEMAdds a product (line item) to an opportunity. The product must exist in a pricebook entry that's associated with the opportunity's pricebook.8 paramsAdds a product (line item) to an opportunity. The product must exist in a pricebook entry that's associated with the opportunity's pricebook.
discountnumberquantitynumberunit_pricenumberdescriptionstringtotal_pricenumberservice_datestringopportunity_idstringpricebook_entry_idstringSALESFORCE_APPLY_LEAD_ASSIGNMENT_RULESApplies configured lead assignment rules to a specific lead, automatically routing it to the appropriate owner based on your organization's rules.1 paramsApplies configured lead assignment rules to a specific lead, automatically routing it to the appropriate owner based on your organization's rules.
lead_idstringSALESFORCE_ASSOCIATE_CONTACT_TO_ACCOUNTAssociates a contact with an account by updating the contact's AccountId field.2 paramsAssociates a contact with an account by updating the contact's AccountId field.
account_idstringcontact_idstringSALESFORCE_CLONE_OPPORTUNITY_WITH_PRODUCTSClones an opportunity and optionally its products (line items). Creates a new opportunity with the same field values and products as the original.5 paramsClones an opportunity and optionally its products (line items). Creates a new opportunity with the same field values and products as the original.
new_namestringclose_datestringstage_namestringclone_productsbooleanopportunity_idstringSALESFORCE_CLONE_RECORDCreates a copy of an existing Salesforce record by reading its data, removing system fields, and creating a new record. Optionally apply field updates to the clone.3 paramsCreates a copy of an existing Salesforce record by reading its data, removing system fields, and creating a new record. Optionally apply field updates to the clone.
record_idstringobject_typestringfield_updatesstringSALESFORCE_COMPLETE_TASKMarks a task as completed with optional completion notes. This is a convenience action that updates the task status to 'Completed'.2 paramsMarks a task as completed with optional completion notes. This is a convenience action that updates the task status to 'Completed'.
task_idstringcompletion_notesstringSALESFORCE_CREATE_ACCOUNTCreates a new account in Salesforce with the specified information.22 paramsCreates a new account in Salesforce with the specified information.
faxstringnamestringtypestringphonestringwebsitestringindustrystringsic_descstringparent_idstringdescriptionstringbilling_citystringbilling_statestringshipping_citystringaccount_sourcestringannual_revenuenumberbilling_streetstringshipping_statestringbilling_countrystringshipping_streetstringshipping_countrystringbilling_postal_codestringnumber_of_employeesintegershipping_postal_codestringSALESFORCE_CREATE_CAMPAIGNCreates a new campaign in Salesforce with the specified information.13 paramsCreates a new campaign in Salesforce with the specified information.
namestringtypestringstatusstringend_datestringis_activebooleanparent_idstringstart_datestringactual_costnumberdescriptionstringnumber_sentnumberbudgeted_costnumberexpected_revenuenumberexpected_responsenumberSALESFORCE_CREATE_CAMPAIGN_RECORD_VIA_POSTDEPRECATED: Creates a new campaign record in Salesforce; if 'ParentId' is provided, it must be a valid ID of an existing Campaign record, and if 'OwnerId' is provided, it must be a valid ID of an active User.35 paramsDEPRECATED: Creates a new campaign record in Salesforce; if 'ParentId' is provided, it must be a valid ID of an existing Campaign record, and if 'OwnerId' is provided, it must be a valid ID of an active User.
IdstringNamestringTypestringStatusstringEndDatestringOwnerIdstringIsActivebooleanParentIdstringIsDeletedbooleanStartDatestringActualCostintegerNumberSentintegerCreatedByIdstringCreatedDatestringDescriptionstringBudgetedCostintegerNumberOfLeadsintegerLastViewedDatestringSystemModstampstringExpectedRevenueintegerattributes__urlstringExpectedResponseintegerLastActivityDatestringLastModifiedByIdstringLastModifiedDatestringNumberOfContactsintegerattributes__typestringNumberOfResponsesintegerLastReferencedDatestringNumberOfOpportunitiesintegerAmountAllOpportunitiesintegerAmountWonOpportunitiesintegerNumberOfConvertedLeadsintegerNumberOfWonOpportunitiesintegerCampaignMemberRecordTypeIdstringSALESFORCE_CREATE_CONTACTCreates a new contact in Salesforce with the specified information.16 paramsCreates a new contact in Salesforce with the specified information.
emailstringphonestringtitlestringbirthdatestringlast_namestringaccount_idstringdepartmentstringfirst_namestringdescriptionstringlead_sourcestringmailing_citystringmobile_phonestringmailing_statestringmailing_streetstringmailing_countrystringmailing_postal_codestringSALESFORCE_CREATE_LEADCreates a new lead in Salesforce with the specified information.19 paramsCreates a new lead in Salesforce with the specified information.
citystringemailstringphonestringstatestringtitlestringratingstringstatusstringstreetstringcompanystringcountrystringwebsitestringindustrystringlast_namestringfirst_namestringdescriptionstringlead_sourcestringpostal_codestringannual_revenuenumbernumber_of_employeesintegerSALESFORCE_CREATE_LEAD_WITH_SPECIFIED_CONTENT_TYPEDEPRECATED: Creates a new Lead in Salesforce, requiring `LastName` and `Company` unless person accounts are enabled and `Company` is null.54 paramsDEPRECATED: Creates a new Lead in Salesforce, requiring `LastName` and `Company` unless person accounts are enabled and `Company` is null.
CitystringEmailstringPhonestringStatestringTitlestringJigsawstringRatingstringStatusstringStreetstringCompanystringCountrystringOwnerIdstringWebsitestringIndustrystringLastNamestringPhotoUrlstringFirstNamestringIsDeletedbooleanLeadSourcestringWeb · Other · Phone Inquiry · Partner Referral · Purchased ListPostalCodestringPrimary__cstringSICCode__cstringSalutationstringMr. · Ms. · Mrs. · Dr. · Prof.CleanStatusstringCreatedByIdstringCreatedDatestringDescriptionstringIsConvertedbooleanIndividualIdstringAnnualRevenueintegerConvertedDatestringDandbCompanyIdstringLastViewedDatestringMasterRecordIdstringSystemModstampstringIsUnreadByOwnerbooleanJigsawContactIdstringattributes__urlstringEmailBouncedDatestringIsPriorityRecordbooleanLastActivityDatestringLastModifiedByIdstringLastModifiedDatestringattributes__typestringCompanyDunsNumberstringNumberOfEmployeesintegerConvertedAccountIdstringConvertedContactIdstringEmailBouncedReasonstringLastReferencedDatestringProductInterest__cstringCurrentGenerators__cstringNumberofLocations__cintegerConvertedOpportunityIdstringSALESFORCE_CREATE_NEW_CONTACT_WITH_JSON_HEADERDEPRECATED: Creates a new Contact in Salesforce; 'LastName' is required, an existing 'AccountId' must be used if provided, and any custom fields (ending with '__c') must be predefined.63 paramsDEPRECATED: Creates a new Contact in Salesforce; 'LastName' is required, an existing 'AccountId' must be used if provided, and any custom fields (ending with '__c') must be predefined.
IdstringFaxstringNamestringEmailstringPhonestringTitlestringJigsawstringOwnerIdstringLastNamestringLevel__cstringPhotoUrlstringAccountIdstringBirthdatestringFirstNamestringHomePhonestringIsDeletedbooleanOtherCitystringDepartmentstringLeadSourcestringOtherPhonestringOtherStatestringSalutationstringCleanStatusstringCreatedByIdstringCreatedDatestringDescriptionstringMailingCitystringMobilePhonestringOtherStreetstringReportsToIdstringIndividualIdstringLanguages__cstringMailingStatestringOtherCountrystringAssistantNamestringContactSourcestringMailingStreetstringOtherLatitudeintegerAssistantPhonestringIsEmailBouncedbooleanLastViewedDatestringMailingCountrystringMasterRecordIdstringOtherLongitudeintegerSystemModstampstringJigsawContactIdstringMailingLatitudeintegerOtherPostalCodestringattributes__urlstringEmailBouncedDatestringIsPriorityRecordbooleanLastActivityDatestringLastCUUpdateDatestringLastModifiedByIdstringLastModifiedDatestringMailingLongitudeintegerattributes__typestringLastCURequestDatestringMailingPostalCodestringEmailBouncedReasonstringLastReferencedDatestringOtherGeocodeAccuracystringMailingGeocodeAccuracystringSALESFORCE_CREATE_NOTECreates a new note attached to a Salesforce record with the specified title and content.5 paramsCreates a new note attached to a Salesforce record with the specified title and content.
bodystringtitlestringowner_idstringparent_idstringis_privatebooleanSALESFORCE_CREATE_NOTE_RECORD_WITH_CONTENT_TYPE_HEADERDEPRECATED: Creates a new Note record in Salesforce, associated with an existing Salesforce object via `ParentId`, automatically including a `Content-Type: application/json` header.14 paramsDEPRECATED: Creates a new Note record in Salesforce, associated with an existing Salesforce object via `ParentId`, automatically including a `Content-Type: application/json` header.
IdstringBodystringTitlestringOwnerIdstringParentIdstringIsDeletedbooleanIsPrivatebooleanCreatedByIdstringCreatedDatestringSystemModstampstringattributes__urlstringLastModifiedByIdstringLastModifiedDatestringattributes__typestringSALESFORCE_CREATE_OPPORTUNITYCreates a new opportunity in Salesforce with the specified information.12 paramsCreates a new opportunity in Salesforce with the specified information.
namestringtypestringamountnumbernext_stepstringaccount_idstringclose_datestringcontact_idstringstage_namestringdescriptionstringlead_sourcestringprobabilitynumberpricebook2_idstringSALESFORCE_CREATE_OPPORTUNITY_RECORDDEPRECATED: Creates a new Opportunity record in Salesforce; `Name`, `StageName`, and `CloseDate` are mandatory, and ensure any referenced IDs (e.g., `AccountId`, `CampaignId`) are valid and corresponding Salesforce features are enabled if used.48 paramsDEPRECATED: Creates a new Opportunity record in Salesforce; `Name`, `StageName`, and `CloseDate` are mandatory, and ensure any referenced IDs (e.g., `AccountId`, `CampaignId`) are valid and corresponding Salesforce features are enabled if used.
IdstringNamestringTypestringIsWonbooleanAmountintegerFiscalstringOwnerIdstringIsClosedbooleanNextStepstringAccountIdstringCloseDatestringContactIdstringIsDeletedbooleanIsPrivatebooleanPushCountintegerStageNamestringCampaignIdstringFiscalYearintegerLeadSourcestringCreatedByIdstringCreatedDatestringDescriptionstringProbabilityintegerPricebook2IdstringFiscalQuarterintegerHasOverdueTaskbooleanLastViewedDatestringOrderNumber__cstringSystemModstampstringExpectedRevenueintegerHasOpenActivitybooleanattributes__urlstringForecastCategorystringLastActivityDatestringLastModifiedByIdstringLastModifiedDatestringattributes__typestringTrackingNumber__cstringLastReferencedDatestringMainCompetitors__cstringLastStageChangeDatestringCurrentGenerators__cstringForecastCategoryNamestringHasOpportunityLineItembooleanTotalOpportunityQuantityintegerLastAmountChangedHistoryIdstringDeliveryInstallationStatus__cstringLastCloseDateChangedHistoryIdstringSALESFORCE_CREATE_TASKCreates a new task in Salesforce to track activities, to-dos, and follow-ups related to contacts, leads, or other records.10 paramsCreates a new task in Salesforce to track activities, to-dos, and follow-ups related to contacts, leads, or other records.
statusstringwho_idstringsubjectstringwhat_idstringowner_idstringprioritystringdescriptionstringactivity_datestringis_reminder_setbooleanreminder_date_timestringSALESFORCE_DELETE_ACCOUNTPermanently deletes an account from Salesforce. This action cannot be undone.1 paramsPermanently deletes an account from Salesforce. This action cannot be undone.
account_idstringSALESFORCE_DELETE_A_LEAD_OBJECT_BY_ITS_IDDEPRECATED: Permanently deletes an existing Lead object from Salesforce using its unique ID.1 paramsDEPRECATED: Permanently deletes an existing Lead object from Salesforce using its unique ID.
idstringSALESFORCE_DELETE_CAMPAIGNPermanently deletes a campaign from Salesforce. This action cannot be undone.1 paramsPermanently deletes a campaign from Salesforce. This action cannot be undone.
campaign_idstringSALESFORCE_DELETE_CONTACTPermanently deletes a contact from Salesforce. This action cannot be undone.1 paramsPermanently deletes a contact from Salesforce. This action cannot be undone.
contact_idstringSALESFORCE_DELETE_LEADPermanently deletes a lead from Salesforce. This action cannot be undone.1 paramsPermanently deletes a lead from Salesforce. This action cannot be undone.
lead_idstringSALESFORCE_DELETE_NOTEPermanently deletes a note from Salesforce. This action cannot be undone.1 paramsPermanently deletes a note from Salesforce. This action cannot be undone.
note_idstringSALESFORCE_DELETE_OPPORTUNITYPermanently deletes an opportunity from Salesforce. This action cannot be undone.1 paramsPermanently deletes an opportunity from Salesforce. This action cannot be undone.
opportunity_idstringSALESFORCE_EXECUTE_SOQL_QUERYDEPRECATED: Executes the provided SOQL query against Salesforce; the query must begin with 'SELECT'.1 paramsDEPRECATED: Executes the provided SOQL query against Salesforce; the query must begin with 'SELECT'.
soql_querystringSALESFORCE_FETCH_ACCOUNT_BY_ID_WITH_QUERYDEPRECATED: Use this action to retrieve a Salesforce Account by its unique ID, which must be a valid and existing Salesforce Account ID; you can optionally specify a comma-delimited list of fields to return.2 paramsDEPRECATED: Use this action to retrieve a Salesforce Account by its unique ID, which must be a valid and existing Salesforce Account ID; you can optionally specify a comma-delimited list of fields to return.
idstringfieldsstringSALESFORCE_FETCH_MODIFIED_OR_UNMODIFIED_SOBJECTSDEPRECATED: Fetches SObjects from `/sobjects` based on caller-set 'If-Modified-Since' (returns objects modified after a date, or 304 status if none) or 'If-Unmodified-Since' (returns objects if unmodified since a date, or 412 status if modified) HTTP headers.2 paramsDEPRECATED: Fetches SObjects from `/sobjects` based on caller-set 'If-Modified-Since' (returns objects modified after a date, or 304 status if none) or 'If-Unmodified-Since' (returns objects if unmodified since a date, or 412 status if modified) HTTP headers.
If-Modified-SincestringIf-Unmodified-SincestringSALESFORCE_GET_ACCOUNTRetrieves a specific account by ID from Salesforce, returning all available fields.1 paramsRetrieves a specific account by ID from Salesforce, returning all available fields.
account_idstringSALESFORCE_GET_CAMPAIGNRetrieves a specific campaign by ID from Salesforce, returning all available fields.1 paramsRetrieves a specific campaign by ID from Salesforce, returning all available fields.
campaign_idstringSALESFORCE_GET_CONTACTRetrieves a specific contact by ID from Salesforce, returning all available fields.2 paramsRetrieves a specific contact by ID from Salesforce, returning all available fields.
fieldsstringcontact_idstringSALESFORCE_GET_DASHBOARDGets detailed metadata for a specific dashboard including its components, layout, and filters.1 paramsGets detailed metadata for a specific dashboard including its components, layout, and filters.
dashboard_idstringSALESFORCE_GET_LEADRetrieves a specific lead by ID from Salesforce, returning all available fields.1 paramsRetrieves a specific lead by ID from Salesforce, returning all available fields.
lead_idstringSALESFORCE_GET_NOTERetrieves a specific note by ID from Salesforce, returning all available fields.1 paramsRetrieves a specific note by ID from Salesforce, returning all available fields.
note_idstringSALESFORCE_GET_NOTE_BY_ID_WITH_FIELDSDEPRECATED: Retrieves a Salesforce Note object by its ID, optionally specifying which fields to return; the Note ID must exist.2 paramsDEPRECATED: Retrieves a Salesforce Note object by its ID, optionally specifying which fields to return; the Note ID must exist.
idstringfieldsstringSALESFORCE_GET_OPPORTUNITYRetrieves a specific opportunity by ID from Salesforce, returning all available fields.2 paramsRetrieves a specific opportunity by ID from Salesforce, returning all available fields.
fieldsstringopportunity_idstringSALESFORCE_GET_REPORTGets detailed metadata for a specific report including its structure, columns, filters, and groupings.1 paramsGets detailed metadata for a specific report including its structure, columns, filters, and groupings.
report_idstringSALESFORCE_GET_REPORT_INSTANCEGets the results of a report instance created by running a report. Check status to see if report has completed.2 paramsGets the results of a report instance created by running a report. Check status to see if report has completed.
report_idstringinstance_idstringSALESFORCE_GET_USER_INFORetrieves information about the current user or a specific user in Salesforce.2 paramsRetrieves information about the current user or a specific user in Salesforce.
user_idstringinclude_permissionsbooleanSALESFORCE_LIST_ACCOUNTSLists accounts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.1 paramsLists accounts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.
querystringSALESFORCE_LIST_CAMPAIGNSLists campaigns from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.1 paramsLists campaigns from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.
querystringSALESFORCE_LIST_CONTACTSLists contacts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.1 paramsLists contacts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.
querystringSALESFORCE_LIST_DASHBOARDSLists all dashboards available in Salesforce with basic metadata including name, ID, and URLs.Lists all dashboards available in Salesforce with basic metadata including name, ID, and URLs.
No parameter schema in public metadata yet.
SALESFORCE_LIST_EMAIL_TEMPLATESLists available email templates in Salesforce with filtering and search capabilities.8 paramsLists available email templates in Salesforce with filtering and search capabilities.
limitintegerorder_bystringfolder_namestringsearch_termstringinclude_bodybooleantemplate_typestringis_active_onlybooleanorder_directionstringSALESFORCE_LIST_LEADSLists leads from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.1 paramsLists leads from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.
querystringSALESFORCE_LIST_NOTESLists notes from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.1 paramsLists notes from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.
querystringSALESFORCE_LIST_OPPORTUNITIESLists opportunities from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.1 paramsLists opportunities from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection.
querystringSALESFORCE_LIST_PRICEBOOK_ENTRIESLists pricebook entries from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Use this to map product names to pricebook entry IDs needed for opportunity line items.1 paramsLists pricebook entries from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Use this to map product names to pricebook entry IDs needed for opportunity line items.
querystringSALESFORCE_LIST_PRICEBOOKSLists pricebooks from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Use this to map pricebook names to IDs.1 paramsLists pricebooks from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Use this to map pricebook names to IDs.
querystringSALESFORCE_LIST_REPORTSLists all reports available in Salesforce with basic metadata including name, ID, and URLs.Lists all reports available in Salesforce with basic metadata including name, ID, and URLs.
No parameter schema in public metadata yet.
SALESFORCE_LOG_CALLLogs a completed phone call as a task in Salesforce with call-specific details like duration, type, and disposition.8 paramsLogs a completed phone call as a task in Salesforce with call-specific details like duration, type, and disposition.
who_idstringsubjectstringwhat_idstringcommentsstringcall_datestringcall_typestringcall_dispositionstringcall_duration_secondsintegerSALESFORCE_LOG_EMAIL_ACTIVITYCreates an EmailMessage record to log email activity in Salesforce, associating it with related records.14 paramsCreates an EmailMessage record to log email activity in Salesforce, associating it with related records.
statusstringsubjectstringhtml_bodystringparent_idstringtext_bodystringcc_addressstringto_addressstringbcc_addressstringis_incomingbooleanfrom_addressstringmessage_datestringrelated_to_idstringis_client_managedbooleanis_externally_visiblebooleanSALESFORCE_MASS_TRANSFER_OWNERSHIPTransfers ownership of multiple records to a new owner in a single operation using Salesforce's composite API for better performance.4 paramsTransfers ownership of multiple records to a new owner in a single operation using Salesforce's composite API for better performance.
record_idsarrayobject_typestringnew_owner_idstringsend_notification_emailbooleanSALESFORCE_QUERY_CONTACTS_BY_NAMEDEPRECATED: Finds Salesforce Contact records by name using a case-insensitive search.3 paramsDEPRECATED: Finds Salesforce Contact records by name using a case-insensitive search.
limitintegerfieldsstringcontact_namestringSALESFORCE_QUERY_REPORTDEPRECATED: Executes a Salesforce report synchronously by its `id` and `reportType`, optionally with dynamic ad-hoc adjustments like filters or groupings, and returns its data without modifying the saved report.32 paramsDEPRECATED: Executes a Salesforce report synchronously by its `id` and `reportType`, optionally with dynamic ad-hoc adjustments like filters or groupings, and returns its data without modifying the saved report.
idstringnamestringchartarrayscopestringsortByarraybucketsarraytopRowsobjectcurrencystringUSD · EUR · GBP · CAD · AUD · JPYdivisionstringfolderIdstringaggregatesarrayreportTypeobjectcrossFiltersarrayreportFormatstringTABULAR · SUMMARY · MATRIX · MULTI_BLOCKdetailColumnsarraydeveloperNamestringgroupingsDownarrayhasDetailRowsbooleanreportFiltersarrayshowSubtotalsbooleanhasRecordCountbooleanshowGrandTotalbooleangroupingsAcrossarraystandardFiltersarraystandardDateFilterobjectcustomDetailFormulaarraypresentationOptionsobjectreportBooleanFilterstringcustomSummaryFormulaarrayhistoricalSnapshotDatesarrayuserOrHierarchyFilterIdstringallowedInCustomDetailFormulabooleanSALESFORCE_REMOVE_ACCOUNT_BY_UNIQUE_IDENTIFIERDEPRECATED: Deletes an existing Salesforce Account using its unique ID, returning an empty response on success (HTTP 204).1 paramsDEPRECATED: Deletes an existing Salesforce Account using its unique ID, returning an empty response on success (HTTP 204).
idstringSALESFORCE_REMOVE_A_SPECIFIC_CONTACT_BY_IDDEPRECATED: Permanently deletes a specific Contact from Salesforce using its unique ID, which must correspond to an existing record.1 paramsDEPRECATED: Permanently deletes a specific Contact from Salesforce using its unique ID, which must correspond to an existing record.
idstringSALESFORCE_REMOVE_CAMPAIGN_OBJECT_BY_IDDEPRECATED: Permanently deletes a specific Campaign SObject in Salesforce using its unique ID.1 paramsDEPRECATED: Permanently deletes a specific Campaign SObject in Salesforce using its unique ID.
idstringSALESFORCE_REMOVE_FROM_CAMPAIGNRemoves a lead or contact from a campaign by deleting the CampaignMember record. Provide either the member_id (lead/contact ID) or the specific campaign_member_id.3 paramsRemoves a lead or contact from a campaign by deleting the CampaignMember record. Provide either the member_id (lead/contact ID) or the specific campaign_member_id.
member_idstringcampaign_idstringcampaign_member_idstringSALESFORCE_REMOVE_NOTE_OBJECT_BY_IDDEPRECATED: Permanently deletes an existing Salesforce Note object identified by its unique ID.1 paramsDEPRECATED: Permanently deletes an existing Salesforce Note object identified by its unique ID.
idstringSALESFORCE_REMOVE_OPPORTUNITY_BY_IDDEPRECATED: Permanently deletes an existing Salesforce Opportunity by its ID; if the Opportunity does not exist, a 'not found' (404) error occurs.1 paramsDEPRECATED: Permanently deletes an existing Salesforce Opportunity by its ID; if the Opportunity does not exist, a 'not found' (404) error occurs.
idstringSALESFORCE_RETRIEVE_ACCOUNT_DATA_AND_ERROR_RESPONSESDEPRECATED: Retrieves comprehensive metadata for the Salesforce Account sObject, detailing its properties, recent records, and related resource URLs.DEPRECATED: Retrieves comprehensive metadata for the Salesforce Account sObject, detailing its properties, recent records, and related resource URLs.
No parameter schema in public metadata yet.
SALESFORCE_RETRIEVE_CAMPAIGN_DATA_WITH_ERROR_HANDLINGDEPRECATED: Retrieves comprehensive information and metadata for the Salesforce Campaign sObject, provided it is enabled and accessible in the organization, and features robust error handling.DEPRECATED: Retrieves comprehensive information and metadata for the Salesforce Campaign sObject, provided it is enabled and accessible in the organization, and features robust error handling.
No parameter schema in public metadata yet.
SALESFORCE_RETRIEVE_CONTACT_INFO_WITH_STANDARD_RESPONSESDEPRECATED: Retrieves comprehensive metadata (e.g., fields, data types, picklist values) for the Salesforce Contact SObject; this action does not retrieve individual contact records.DEPRECATED: Retrieves comprehensive metadata (e.g., fields, data types, picklist values) for the Salesforce Contact SObject; this action does not retrieve individual contact records.
No parameter schema in public metadata yet.
SALESFORCE_RETRIEVE_LEAD_BY_IDRetrieves details for a Salesforce Lead by its ID; the specified Lead ID must exist in Salesforce.2 paramsRetrieves details for a Salesforce Lead by its ID; the specified Lead ID must exist in Salesforce.
idstringfieldsstringSALESFORCE_RETRIEVE_LEAD_DATA_WITH_VARIOUS_RESPONSESDEPRECATED: Retrieves Lead sObject data from Salesforce, such as recently viewed leads or general Lead object information.DEPRECATED: Retrieves Lead sObject data from Salesforce, such as recently viewed leads or general Lead object information.
No parameter schema in public metadata yet.
SALESFORCE_RETRIEVE_NOTE_OBJECT_INFORMATIONDEPRECATED: Retrieves comprehensive metadata for the Salesforce 'Note' SObject, if it is enabled and accessible, to understand its structure and capabilities.DEPRECATED: Retrieves comprehensive metadata for the Salesforce 'Note' SObject, if it is enabled and accessible, to understand its structure and capabilities.
No parameter schema in public metadata yet.
SALESFORCE_RETRIEVE_OPPORTUNITIES_DATARetrieves all available Opportunity records, representing potential revenue-generating deals, from Salesforce.Retrieves all available Opportunity records, representing potential revenue-generating deals, from Salesforce.
No parameter schema in public metadata yet.
SALESFORCE_RETRIEVE_OPPORTUNITY_BY_ID_WITH_OPTIONAL_FIELDSDEPRECATED: Retrieves a Salesforce Opportunity by its ID; the Opportunity ID must exist.2 paramsDEPRECATED: Retrieves a Salesforce Opportunity by its ID; the Opportunity ID must exist.
idstringfieldsstringSALESFORCE_RETRIEVE_SPECIFIC_CAMPAIGN_OBJECT_DETAILSDEPRECATED: Retrieves details for a specific Salesforce Campaign object by its ID, optionally limiting to specified fields; the Campaign object must exist.2 paramsDEPRECATED: Retrieves details for a specific Salesforce Campaign object by its ID, optionally limiting to specified fields; the Campaign object must exist.
idstringfieldsstringSALESFORCE_RETRIEVE_SPECIFIC_CONTACT_BY_IDRetrieves a Salesforce Contact by its unique ID; the ID must correspond to an existing Contact record in Salesforce.2 paramsRetrieves a Salesforce Contact by its unique ID; the ID must correspond to an existing Contact record in Salesforce.
idstringfieldsstringSALESFORCE_RUN_REPORTRuns a report and returns the results. Creates a report instance that can be checked for completion.1 paramsRuns a report and returns the results. Creates a report instance that can be checked for completion.
report_idstringSALESFORCE_RUN_SOQL_QUERYExecutes a SOQL query against Salesforce data. Returns records matching the query with pagination support.1 paramsExecutes a SOQL query against Salesforce data. Returns records matching the query with pagination support.
querystringSALESFORCE_SEARCH_ACCOUNTSSearch for Salesforce accounts using multiple criteria like name, industry, type, location, or contact information.10 paramsSearch for Salesforce accounts using multiple criteria like name, industry, type, location, or contact information.
namestringtypestringlimitintegerphonestringfieldsstringwebsitestringindustrystringbilling_citystringbilling_statestringbilling_countrystringSALESFORCE_SEARCH_CAMPAIGNSSearch for Salesforce campaigns using multiple criteria like name, type, status, date range, or active status.8 paramsSearch for Salesforce campaigns using multiple criteria like name, type, status, date range, or active status.
namestringtypestringlimitintegerfieldsstringstatusstringis_activebooleanstart_date_tostringstart_date_fromstringSALESFORCE_SEARCH_CONTACTSSearch for Salesforce contacts using multiple criteria like name, email, phone, account, or title.7 paramsSearch for Salesforce contacts using multiple criteria like name, email, phone, account, or title.
namestringemailstringlimitintegerphonestringtitlestringfieldsstringaccount_namestringSALESFORCE_SEARCH_LEADSSearch for Salesforce leads using multiple criteria like name, email, phone, company, title, status, or lead source.9 paramsSearch for Salesforce leads using multiple criteria like name, email, phone, company, title, status, or lead source.
namestringemailstringlimitintegerphonestringtitlestringfieldsstringstatusstringcompanystringlead_sourcestring
Source-available MCP servers by Mindstone. Works with any MCP host — Claude Desktop, Cursor, Rebel, and others.
Browse all 35 connectors with their version, auth model, and tool count at the catalogue site (regenerated from each connector's STATUS.json on every push).
| Connector | Description |
|---|---|
| apple-shortcuts | Run and list Apple Shortcuts on macOS via the shortcuts CLI |
| browser-automation | Headless browser control via accessibility snapshots — navigate, fill forms, click, and screenshot pages via the agent-browser CLI |
| elevenlabs | Generate speech, music, and sound effects, browse voices, and transcribe audio via the ElevenLabs API |
| email-imap | Read, search, send, and manage emails through IMAP and SMTP |
| fathom | List and search meetings, view details, read transcripts, and manage teams via Fathom AI |
| freshdesk | Manage helpdesk tickets, search support requests, reply to customers, and add internal notes |
| gamma | Create AI-powered presentations, documents, webpages, and social posts via Gamma |
| google-analytics | Discover GA4 accounts and properties, explore the live schema, and run reports via the Google Analytics API |
| google-workspace | Read, search, and send across Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, and Comments with host-orchestrated OAuth and per-account on-disk credentials |
| hubspot | Manage HubSpot CRM — contacts, companies, deals, tickets, leads, tasks, notes, properties, lists, workflows, knowledge base, and files — with multi-account, host-orchestrated OAuth |
| humaans | Query employee profiles, job roles, time-away requests, and company info via Humaans HR |
| kling | Generate AI videos from text descriptions or images via Kling AI |
| microsoft-calendar | List, create, update, and respond to Outlook calendar events, check free/busy, and list calendars; reuses the cohort's host-orchestrated Microsoft 365 OAuth surface |
| microsoft-files | List, search, upload, download, share, and read OneDrive files via Microsoft Graph; reuses the cohort's host-orchestrated Microsoft 365 OAuth surface |
| microsoft-mail | List, search, read, send, reply, forward, draft, move, and delete Outlook email; owns the cohort's host-orchestrated Microsoft 365 OAuth surface |
| microsoft-sharepoint | Discover sites, browse libraries, read pages and lists, search content, and mutate SharePoint files/lists with incremental Sites.Read.All consent |
| microsoft-teams | List and read Teams chats, send chat messages, list teams and channels, and read presence; reuses the cohort's host-orchestrated Microsoft 365 OAuth surface |
| mixmax | Manage sequences, send tracked emails, use templates, and monitor engagement via Mixmax |
| nano-banana | Generate and edit images using Google Gemini's AI capabilities |
| napkin | Generate professional visuals — diagrams, infographics, and illustrations — from text via Napkin AI |
| office | Read and edit Word documents, Excel workbooks, and PowerPoint presentations from desktop Microsoft 365 via an Office Add-in sidecar |
| openai-image | Generate and edit images via OpenAI's gpt-image-2 — sharp text rendering, multilingual support, and four quality levels |
| outreach | Manage prospects, sequences, accounts, tasks, and mailings via the Outreach sales engagement API |
| pandadoc | Create, send, and manage documents, templates, and e-signatures via PandaDoc |
| quickbooks | Manage invoices, bills, customers, vendors, employees, and accounts in QuickBooks Online |
| replit-ssh | Read, write, list, and check files on Replit projects over SSH/SFTP, with one-shot SSH key + config setup on the operator's machine |
| retell-ai | Place voice-agent phone calls, manage agents and LLM prompts, and discover voices via the Retell AI API |
| runway | Generate AI video, images, audio, speech, and sound effects via Runway ML |
| salesforce | Manage accounts, contacts, opportunities, leads, tasks, users, and custom objects via the Salesforce API |
| servicenow | Manage incidents, change requests, users, and knowledge base articles in ServiceNow |
| slack | Multi-workspace Slack — channels, messages, threads, reactions, users, files, bookmarks, and scheduled messages via the Slack Web API, with host-orchestrated OAuth |
| talentlms | Manage users, courses, groups, branches, enrolments, and assessments in TalentLMS |
| vanta | Read and manage compliance posture in Vanta — vulnerabilities, tests, controls, evidence, resources, people, vendors, documents, and compliance summary |
| workday | Query workers, profiles, and organizations in Workday HCM |
| zendesk | Manage tickets, macros, users, and views in Zendesk Support |
Each server builds independently:
cd connectors/<name>
npm install
npm run build
Or run directly via npx (once published):
npx -y @mindstone/mcp-server-zendesk
Moving from
@mindstone-engineering/? Every server has been republished under the shorter@mindstone/npm scope. The legacy@mindstone-engineering/mcp-server-*packages still install but are marked deprecated. See MIGRATION.md for the consumer one-liner and the deprecation timeline.
See each server's README for configuration and host setup instructions. Some connectors require additional environment variables to opt into specific behaviour (e.g. QB_ALLOW_PROD_WRITES for QuickBooks production writes, MCP_WORKSPACE_PATH for sandboxed file reads, BROWSER_AUTOMATION_ALLOW_EVAL for browser-automation script eval) — see the per-connector READMEs for the full list.
This monorepo follows a defence-in-depth posture for tool-call hosts. Highlights include:
permissions: block. Publish is split into a build job (does the install/test/pack with no publish credentials) and a publish job (downloads the packed tarball, runs only npm publish --ignore-scripts --provenance under OIDC trusted publishing, gated by the npm-publish environment). The publish job invokes NO third-party JS — tsc, vitest, lifecycle scripts, etc. all run upstream, away from id-token: write. See docs/security/AUDIT_FOX-3319_tanstack_supply_chain.md for the supply-chain threat model and docs/security/BRANCH_PROTECTION.md for required GitHub settings..npmrc sets min-release-age=7 (days), so CI refuses to install dependency versions published in the last week. This blocks the "same-day malicious re-publish" path that ships post-npm audit-clean PRs into a release tag..github/workflows/release.yml) under the @mindstone/ npm scope via Trusted Publishing OIDC — no long-lived npm token exists anywhere — with --provenance Sigstore attestations consumers can verify via npm audit signatures. Every publishable release commit must carry a Release-Gate trailer pointing at its pre-release security review, and every publish posts an alert; the full gate chain is in docs/PUBLISH_APPROVAL_PROCESS.md. (Only a brand-new connector's first publish is manual and WebAuthn-gated; those tarballs carry no provenance attestation but remain shasum-verifiable — check out the release commit and run npm pack; see MIGRATION.md.).github/workflows/scorecard.yml. The report is generated by a third party from the source tree, so every claim above (action pinning, branch protection, token usage, dependency hygiene) is independently checked rather than just asserted here. The current score is shown by the badge at the top of this README.These connectors are published as plain npm packages. The strongest single thing you can do to protect yourself from a future supply-chain compromise of any npm package (these or otherwise) is to use a client that does not run lifecycle scripts by default:
pnpm install / pnpm dlx) — does not execute postinstall/prepare hooks unless explicitly allowlisted via onlyBuiltDependencies. pnpm v11+ also defaults to a 24-hour minimumReleaseAge cool-down.bunx) — same default, no lifecycle scripts unless allowlisted.min-release-age=7 and ignore-scripts=true in your global ~/.npmrc. Requires npm v11.10+ for min-release-age.None of our published packages need postinstall to function, so disabling lifecycle scripts in your installer of choice is safe.
<untrusted-content source="..."> envelopes with close-tag breakout escaping, so an LLM host can recognise and refuse instruction-injection attempts.MCP_WORKSPACE_PATH (or os.tmpdir()) with canonical-prefix containment that handles symlinked roots like /tmp → /private/tmp.QB_ALLOW_PROD_WRITES=1 opt-in env var; outreach prospect-enrolment and mixmax sequence-recipient tools carry destructiveHint: true so hosts surface confirmation prompts.MCP_OAUTH_BIND_HOST override.For per-connector security notes, see each connector's README.
To report a vulnerability, please see SECURITY.md.
This repo is one of several open-source projects from Mindstone:
Each connector is licensed under FSL-1.1-MIT — see the LICENSE file in each connector directory for details.
SALESFORCE_CLIENT_ID*Salesforce Connected App client ID (recommended path)
SALESFORCE_CLIENT_SECRET*secretSalesforce Connected App client secret (recommended path)
SALESFORCE_SANDBOXSet to true for sandbox environments
SALESFORCE_ACCESS_TOKENsecretStatic access token (alternative to OAuth)
SALESFORCE_INSTANCE_URLSalesforce instance URL (required for manual token mode)
SALESFORCE_CONFIG_DIRdefault: ~/.mcp/salesforceCustom config directory
SALESFORCE_OAUTH_PORTdefault: 0OAuth callback port (0 = OS-assigned)
SALESFORCE_OAUTH_SCOPESSpace-separated OAuth scopes
explorium-ai/vibeprospecting-mcp
io.github.compuute/lead-enrichment
dev.workers.selbyventurecap.cf-worker/apollo-salesforce-mapper
io.github.br0ski777/company-enrichment
com.mcparmory/apollo
mambalabsdev/mcp-gtm-tech-stack-signal-scraper