Connect OpenClaw to Salesforce and Slack
What happens next
Set up in minutes
Choose where it runs
On your computer through your own OpenClaw, or hosted in the cloud. The rest of setup adapts to your choice:
Pick what it can do in Salesforce
A preset of real Salesforce operations. Each one becomes a tool the agent can call, and it can't touch anything outside the list.
Pick what it can do in Slack
A preset of real Slack operations. Each one becomes a tool the agent can call, and it can't touch anything outside the list.
Connect Salesforce
One sign-in. The agent acts through your account, scoped to the operations you picked.
Connect Slack
One sign-in. The agent acts through your account, scoped to the operations you picked.
Add your personal MCP link
The last step mints a private MCP URL for this agent and walks you through exactly this, with your real link filled in. The page flips to Connected the moment your OpenClaw first calls in.
Run this in your terminal
<your-link> is your personal server URL — setup mints it for you.
Exact capabilities
Tools OpenClaw gets
Salesforce
144 toolsExecute a SOQL query to retrieve records
Get the next batch of query results using a query locator
Execute a SOSL search across multiple objects
Get a single record by ID
Create a new record
Update an existing record
Delete a record
Create or update a record using an external ID field
Create multiple records in a single request (up to 200)
Update multiple records in a single request (up to 200)
Delete multiple records in a single request (up to 200)
List all available sObjects in the org
Get detailed metadata for a specific sObject including all fields
Get global metadata about the org
Get org API usage limits
Get information about the current authenticated user
Get available Salesforce API versions
Get available tabs for the user
List all approval processes in the org
Submit a record for approval
Approve or reject a pending approval request
Get blob (binary) data for a record field like Attachment body or Document body
Create an attachment on a record
Upload a file as ContentVersion (Files)
Execute multiple REST API requests in a single call
Create a tree of nested, parent-child records in a single request
Get recently viewed records
List available global quick actions
List quick actions for a specific object
Execute a quick action
Get page layouts for an object
Get compact layouts for an object
Create a bulk ingest job for large data operations
Upload CSV data to a bulk job
Close a bulk job to start processing
Get the status of a bulk job
Get results (successful or failed records) from a bulk job
Abort a bulk job
List bulk jobs
List available reports
Execute a report and get results
Get metadata for a report
Get records deleted within a time range
Get records updated within a time range
Execute a SOQL query including deleted and archived records
Get list views for an object
Get details of a specific list view
Execute a list view and get results
List available dashboards
Get dashboard data and metadata
Refresh a dashboard to get latest data
List available standard invocable actions
Get details of a specific invocable action
Execute an invocable action
Post a message to Chatter feed
Get Chatter feed items
Convert Lead
Merge Records
Create Task
Update Task
Create Event
Update Event
Create Note
Add Campaign Member
Update Campaign Member Status
Create Campaign
Add Case Comment
Add Opportunity Line Item
Add Contact to Opportunity
Assign Permission Set to User
Reset User Password
Get Content Document
Download Content Version
List Content Versions
Delete Content Document
Create Content Document Link
List Files Linked to Record
Send Single Email
Send Email via Template
List Email Templates
Send Mass Email
Get Chatter Feed Item
Delete Chatter Feed Item
Create Chatter Comment
Get Chatter Comments
Delete Chatter Comment
Like Chatter Feed Item
Get Record Chatter Feed
Get Chatter User Profile
List Chatter Groups
Post to Chatter Group
Get Chatter Group Members
Send Chatter Direct Message
Get Chatter Direct Messages
Search Chatter
Get Chatter News Feed
Execute Anonymous Apex
Run Apex Tests
Get Apex Test Results
Query Debug Logs
Get Debug Log Body
Create Trace Flag
Get Apex Code Coverage
Tooling SOQL Query
Get Pending Approval Items
Recall Approval Request
Get Approval History
Get Bulk Job Failed Results
Get Bulk Job Unprocessed Results
Delete Bulk Data Job
Create Bulk Query Job
Get Bulk Query Job Results
Execute Composite Batch
Bulk Retrieve Records
Composite Update Multiple
Run Report Async
Get Async Report Result
Get Dashboard Component Data
List Report Folders
Execute Flow
List Flows
Invoke Email Alert Action
Invoke Field Update Action
Get Org Info
Parameterized Search
Get Search Suggestions
Explain Query Plan
Get Record Count
List Users
Get User
Update User
List Profiles
List Roles
Get Org Storage Usage
List External Data Sources
Query External Object
Create External Object Record
List Knowledge Articles
Create Knowledge Article
Publish Knowledge Article
Attach Article to Case
Publish Platform Event
List Platform Event Channels
Get List View Results with Columns
Slack
207 toolsPost a message to a channel
Update an existing message
Delete a message
Send an ephemeral message (only visible to one user)
Schedule a message for later
Get a permalink URL for a message
List channels in the workspace
Get information about a channel
Get messages from a channel
Get members of a channel
Join a public channel
Leave a channel
Create a new channel
Archive a channel
Unarchive a channel
Invite users to a channel
Remove a user from a channel
Set the topic of a channel
Set the purpose of a channel
Rename a channel
Get thread replies
Open or resume a direct message or multi-person DM
Close a direct message or multi-person DM
Mark a channel as read
List all users in the workspace
Get information about a user
Find a user by their email address
Get a user's presence status
List conversations the calling user may access
Add a bookmark to a channel
Edit an existing bookmark
List bookmarks in a channel
Remove a bookmark from a channel
List user groups in the workspace
Create a new user group
Disable an existing user group
Enable a disabled user group
Update an existing user group
List users in a user group
Update the list of users in a user group
Turn on Do Not Disturb for the current user
End the current user's snooze mode
End the current user's Do Not Disturb session
Get Do Not Disturb status for a user
Get Do Not Disturb status for users on a team
List custom emoji in the workspace
Star a message, file, or channel
Remove a star from an item
List starred items for the current user
Get information about a bot
Create a reminder
Mark a reminder as complete
Delete a reminder
Get information about a reminder
List all reminders for the current user
Add an emoji reaction to a message
Remove an emoji reaction from a message
Get reactions on a message
Pin a message to a channel
Unpin a message from a channel
List pinned items in a channel
List files in the workspace
Get information about a file
Delete a file
Upload a file to Slack
Create a public URL for a file (files.sharedPublicURL)
Revoke public URL for a file (files.revokePublicURL)
Search for messages in the workspace
Search for files in the workspace (search.files)
Search for messages and files (search.all)
Delete a scheduled message (chat.deleteScheduledMessage)
List scheduled messages (chat.scheduledMessages.list)
Share a /me message into a channel (chat.meMessage)
Provide custom unfurl behavior for URLs (chat.unfurl)
Get a user's profile information (users.profile.get)
Set user presence (users.setPresence)
Test authentication and get info about the token
Get information about the workspace
Test the API connection (api.test)
Revoke an OAuth token (auth.revoke)
Uninstall an app from a workspace (apps.uninstall)
Get billable info for team members (team.billableInfo)
Get access logs for the workspace (team.accessLogs)
Get integration logs for the workspace (team.integrationLogs)
Accept a shared channel invite (conversations.acceptSharedInvite)
Decline a shared channel invite (conversations.declineSharedInvite)
List Slack Connect invites (conversations.listConnectInvites)
Get URL for uploading a file externally (files.getUploadURLExternal)
Complete a file upload after uploading to external URL (files.completeUploadExternal)
Set user profile fields (users.profile.set)
Approve an invitation to a Slack Connect channel (conversations.approveSharedInvite)
Invite a user to a Slack Connect channel (conversations.inviteShared)
Add a remote file (files.remote.add)
Remove a remote file (files.remote.remove)
Share a remote file to a channel (files.remote.share)
List remote files (files.remote.list)
List reactions for an item (reactions.list)
Get information about a remote file (files.remote.info)
Update a remote file (files.remote.update)
Delete a file comment (files.comments.delete)
Delete the user's profile photo (users.deletePhoto)
Mark user as active (users.setActive) - Deprecated but still functional
Create a canvas in a channel (conversations.canvases.create)
Set external invite permissions for a channel (conversations.externalInvitePermissions.set)
Approve a Slack Connect invite request (conversations.requestSharedInvite.approve)
Deny a Slack Connect invite request (conversations.requestSharedInvite.deny)
List Slack Connect invite requests (conversations.requestSharedInvite.list)
Get analytics data for a given date (admin.analytics.getFile)
Get logs for app activities (admin.apps.activities.list)
Approve an app for installation (admin.apps.approve)
List approved apps (admin.apps.approved.list)
Clear app resolution (admin.apps.clearResolution)
Look up app config (admin.apps.config.lookup)
Set app config (admin.apps.config.set)
Cancel an app request (admin.apps.requests.cancel)
List app requests (admin.apps.requests.list)
Restrict an app (admin.apps.restrict)
List restricted apps (admin.apps.restricted.list)
Uninstall an app (admin.apps.uninstall)
Get allowed audit anomaly item (admin.audit.anomaly.allow.getItem)
Update allowed audit anomaly item (admin.audit.anomaly.allow.updateItem)
Assign entities to auth policy (admin.auth.policy.assignEntities)
Get entities for auth policy (admin.auth.policy.getEntities)
Remove entities from auth policy (admin.auth.policy.removeEntities)
Create an information barrier (admin.barriers.create)
Delete an information barrier (admin.barriers.delete)
List information barriers (admin.barriers.list)
Update an information barrier (admin.barriers.update)
Archive a conversation (admin.conversations.archive)
Bulk archive conversations (admin.conversations.bulkArchive)
Bulk delete conversations (admin.conversations.bulkDelete)
Bulk move conversations to a team (admin.conversations.bulkMove)
Convert public channel to private (admin.conversations.convertToPrivate)
Convert private channel to public (admin.conversations.convertToPublic)
Create a conversation (admin.conversations.create)
Delete a conversation (admin.conversations.delete)
Disconnect a shared channel (admin.conversations.disconnectShared)
List original connected channel info for EKM (admin.conversations.ekm.listOriginalConnectedChannelInfo)
Get conversation preferences (admin.conversations.getConversationPrefs)
Get custom retention settings (admin.conversations.getCustomRetention)
Get teams for a conversation (admin.conversations.getTeams)
Invite users to a conversation (admin.conversations.invite)
Look up conversations (admin.conversations.lookup)
Remove custom retention settings (admin.conversations.removeCustomRetention)
Rename a conversation (admin.conversations.rename)
Add IDP group to channel (admin.conversations.restrictAccess.addGroup)
List IDP groups for channel (admin.conversations.restrictAccess.listGroups)
Remove IDP group from channel (admin.conversations.restrictAccess.removeGroup)
Search for conversations (admin.conversations.search)
Set conversation preferences (admin.conversations.setConversationPrefs)
Set custom retention settings (admin.conversations.setCustomRetention)
Set teams for a conversation (admin.conversations.setTeams)
Unarchive a conversation (admin.conversations.unarchive)
Add custom emoji (admin.emoji.add)
Add emoji alias (admin.emoji.addAlias)
List custom emoji (admin.emoji.list)
Remove custom emoji (admin.emoji.remove)
Rename custom emoji (admin.emoji.rename)
List functions (admin.functions.list)
Look up function permissions (admin.functions.permissions.lookup)
Set function permissions (admin.functions.permissions.set)
Approve invite request (admin.inviteRequests.approve)
List approved invite requests (admin.inviteRequests.approved.list)
List denied invite requests (admin.inviteRequests.denied.list)
Deny invite request (admin.inviteRequests.deny)
List invite requests (admin.inviteRequests.list)
Add role assignments (admin.roles.addAssignments)
List role assignments (admin.roles.listAssignments)
Remove role assignments (admin.roles.removeAssignments)
List team admins (admin.teams.admins.list)
Create a team (admin.teams.create)
List teams (admin.teams.list)
List team owners (admin.teams.owners.list)
Get team settings info (admin.teams.settings.info)
Set default channels for team (admin.teams.settings.setDefaultChannels)
Set team description (admin.teams.settings.setDescription)
Set team discoverability (admin.teams.settings.setDiscoverability)
Set team icon (admin.teams.settings.setIcon)
Set team name (admin.teams.settings.setName)
Add channels to usergroup (admin.usergroups.addChannels)
Add teams to usergroup (admin.usergroups.addTeams)
List channels in usergroup (admin.usergroups.listChannels)
Remove channels from usergroup (admin.usergroups.removeChannels)
Assign a user to a team (admin.users.assign)
Get expiration for a user (admin.users.getExpiration)
Invite a user to a team (admin.users.invite)
List users in a team (admin.users.list)
Remove a user from a team (admin.users.remove)
Clear session settings (admin.users.session.clearSettings)
Get session settings (admin.users.session.getSettings)
Invalidate user session (admin.users.session.invalidate)
List user sessions (admin.users.session.list)
Reset user session (admin.users.session.reset)
Bulk reset user sessions (admin.users.session.resetBulk)
Set session settings (admin.users.session.setSettings)
Set a user as admin (admin.users.setAdmin)
Set expiration for a user (admin.users.setExpiration)
Set a user as owner (admin.users.setOwner)
Set a user as regular (admin.users.setRegular)
Export unsupported version users (admin.users.unsupportedVersions.export)
Add workflow collaborators (admin.workflows.collaborators.add)
Remove workflow collaborators (admin.workflows.collaborators.remove)
Look up workflow permissions (admin.workflows.permissions.lookup)
Search workflows (admin.workflows.search)
Look up workflow trigger type permissions (admin.workflows.triggers.types.permissions.lookup)
Set workflow trigger type permissions (admin.workflows.triggers.types.permissions.set)
Unpublish a workflow (admin.workflows.unpublish)
Starting points
What you can build
Meet the runner
About OpenClaw
Good to know
Frequently asked questions
Keep exploring
More ways to connect
More tools for OpenClaw
Popular OpenClaw pairs
Make it yours
Open your OpenClaw agent in one click.
NoClick runs OpenClaw for you with Salesforce and Slack wired in as tools. Connect your account and run.