Connect Your AI Agent with Salesforce for Slack

Integrate Salesforce MCP server into your Slack workspace for instant access to your AI agent.

Back to MCP Servers
Salesforce
Salesforce
Cloud-based customer relationship management (CRM) platform that helps businesses manage sales, marketing, customer support, and other business activities, ultimately aiming to improve customer relationships and streamline operations.

Categories

CRM

Available Tools

Tools that your AI agent can use through this MCP server to interact with Salesforce

Upsert Record

Create or update a record of a given object. See the documentation

Update Record

Update fields of a record. See the documentation

Update Opportunity

Updates an opportunity. See the documentation

Update Note

Updates a classic Salesforce note, which can contain up to 32 KB of text and is associated with a parent record. See the documentation

Update Email Template

Updates an email template. See the documentation

Update Content Note

Updates an enhanced Salesforce content note, which can include formatted text and is part of Salesforce Files. See the documentation and Set Up Notes.

Update Contact

Updates a contact. See the documentation

Update Account

Updates a Salesforce account. See the documentation

Create User

Creates a Salesforce user. See the documentation

Create Task

Creates a task. See the documentation

Create Record

Create a record of a given object. See the documentation

Create Opportunity

Creates an opportunity. See the documentation

Create Note

Creates a note. See the documentation

Create Lead

Creates a lead. See the documentation

Create Event

Creates an event. See the documentation

Create Content Note

Creates a content note. See the documentation and Set Up Notes.

Create Contact

Creates a contact. See the documentation

Create Case Comment

Creates a Case Comment on a selected Case. See the documentation

Create Case

Creates a Case, which represents a customer issue or problem. See the documentation

Create Campaign

Creates a marketing campaign. See the documentation

Create Attachment

Creates an Attachment on a parent object. See the documentation

Create Account

Creates a Salesforce account. See the documentation

Update Record

Update an existing Salesforce record. Only pass fields you want to change — unspecified fields remain unchanged. Use Describe Object for valid field names and picklist values. Use SOQL Query to find the record ID if you only have the name.

Text Search

Search Salesforce records by keyword across multiple object types simultaneously. Use for free-text search when the user mentions a name, term, or keyword without specifying an object type. Use SOQL Query instead for structured queries on a single object type with specific conditions. Results are grouped by object type.

SOQL Query

Execute a SOQL query against Salesforce. This is the primary tool for querying Salesforce data — use for all structured queries. For free-text search across multiple objects, use Text Search instead.

When the user uses first-person language ('my', 'I', 'me'), filter by OwnerId using the userId from Get User Info. Use Describe Object to discover field names and picklist values before querying non-obvious fields.

SOQL syntax reference:

  • Basic: SELECT Id, Name, Email FROM Contact WHERE AccountId = '001xxx'
  • Operators: =, !=, >, <, >=, <=, LIKE '%text%', IN ('a','b'), NOT IN
  • Date literals: TODAY, THIS_MONTH, LAST_N_DAYS:30, THIS_QUARTER, LAST_QUARTER, THIS_YEAR
  • NULL checks: WHERE Email != null
  • Aggregates: SELECT StageName, COUNT(Id) c, SUM(Amount) s FROM Opportunity GROUP BY StageName
  • SOQL does NOT support the AS keyword — write COUNT(Id) c, not COUNT(Id) AS c
  • Reserved words cannot be aliasescount, sum, avg are reserved. Use short aliases like c, s, a
  • Cannot ORDER BY alias — repeat the aggregate: ORDER BY COUNT(Id) DESC, not ORDER BY c DESC
  • Parent relationship: SELECT Name, Account.Name FROM Contact
  • Child subquery: SELECT Name, (SELECT Name FROM Contacts) FROM Account
  • Sorting/limits: ORDER BY CreatedDate DESC LIMIT 10

Always include Id in SELECT. Include a clickable Salesforce link for every record using the format {instanceUrl}/lightning/r/{objectType}/{Id}/view (get instanceUrl from Get User Info).

List Objects

List available Salesforce object types (SObjects) in the org. Use when the user references an object type you're not sure about, or to discover custom objects. Custom objects end in __c. Standard CRM objects: Account, Contact, Lead, Opportunity, Case, Task, Event, Campaign, User. Use Describe Object to get field details for a specific object type.

Get User Info

Get the current authenticated Salesforce user's identity, including user ID, email, org ID, and instance URL. Must be called before any query that uses first-person language ('my', 'I', 'me'). The userId can be used as an OwnerId filter in SOQL queries (e.g. WHERE OwnerId = '{userId}'). The instanceUrl is needed to construct clickable links to Salesforce records: {instanceUrl}/lightning/r/{objectType}/{recordId}/view.

Get Related Records

Get child records related to a parent Salesforce record via a relationship. Use to traverse relationships without writing SOQL joins. Common relationships: Account → Contacts, Opportunities, Cases, Tasks; Contact → Cases, Opportunities, Tasks; Opportunity → OpportunityLineItems, Tasks. Use Describe Object to discover available relationship names if unsure (look for relationshipName on reference fields).

Describe Object

Get field metadata for a Salesforce object type, including field names, types, required status, and picklist values. Use before Create Record or Update Record to discover available fields and valid picklist values. For picklist fields (like StageName on Opportunity, Status on Case), this returns all valid values — use the API value, not the display label. Use the fieldsFilter parameter to narrow results — full object descriptions can be very large (100+ fields). Use List Objects if you're unsure of the object's API name.

Delete Record

Permanently deletes a Salesforce record (moves to Recycle Bin for 15 days). Use SOQL Query to find the record ID if you only have the record name.

Create Record

Create a new Salesforce record of any object type. Use Describe Object first if you're unsure what fields are available or required. For picklist fields, use the API value from Describe Object, not the display label.

Common required fields:

  • Account: Name
  • Contact: LastName
  • Lead: LastName, Company
  • Opportunity: Name, StageName, CloseDate
  • Case: Subject
  • Task: Subject
  • Event: Subject, StartDateTime, EndDateTime

To add a Contact/Lead to a Campaign, create a CampaignMember: {"CampaignId": "701xxx", "ContactId": "003xxx"} or {"CampaignId": "701xxx", "LeadId": "00Qxxx"}.

Update Opportunities (Batch)

Update multiple Opportunities in Salesforce using Bulk API 2.0. See the documentation

Update Accounts (Batch)

Update multiple Accounts in Salesforce using Bulk API 2.0. See the documentation

Create Opportunities (Batch)

Create multiple Opportunities in Salesforce using Bulk API 2.0. See the documentation

Create Accounts (Batch)

Create multiple Accounts in Salesforce using Bulk API 2.0. See the documentation

Search Object Records

Searches for records in an object using a parameterized search. See the documentation

Send Email

Sends an email. See the documentation

Delete Note Or Content Note

Delete a note or content note from a Salesforce record. See the documentation

SOSL Search (Object Search)

Executes a Salesforce Object Search Language (SOSL) text-based search query.

SOQL Query (Object Query)

Executes a Salesforce Object Query Language (SOQL) query-based, SQL-like search.

Post a Message to Chatter Feed

Post a feed item in Chatter. See the documentation

List Object Fields

Lists all fields for a given object type. See the documentation

List Knowledge Articles

Lists all knowledge articles. See the documentation

List Email Templates

Lists all email templates. See the documentation

List Email Messages

Lists all email messages for a case. See the documentation

List Case Comments

Lists all comments for a case. See the documentation

Insert Blob Data

Inserts blob data in Salesforce standard objects. See the documentation

Get User

Retrieves a user by their ID. See the documentation

Get Record by ID

Retrieves a record by its ID. See the documentation

Get Knowledge Data Category Groups

Fetch data category groups visible to the current user. See the documentation

Get Knowledge Articles

Get a page of online articles for the given language and category through either search or query. See the documentation

Get Case

Retrieves a case by its ID. See the documentation

Find Records

Retrieves selected fields for some or all records of a selected object. See the documentation

Delete Record

Deletes an existing record in an object. See the documentation

Delete Opportunity

Deletes an opportunity. See the documentation

Convert SOAP XML Object to JSON

Converts a SOAP XML Object received from Salesforce to JSON

Add Lead to Campaign

Adds an existing lead to an existing campaign. See the documentation

Add Contact to Campaign

Adds an existing contact to an existing campaign. See the documentation