Salesforce Automation via Rube MCP
Automate Salesforce CRM operations through Composio's Salesforce toolkit via Rube MCP.
Toolkit docs: composio.dev/toolkits/salesforce
Prerequisites
- •Rube MCP must be connected (RUBE_SEARCH_TOOLS available)
- •Active Salesforce connection via
RUBE_MANAGE_CONNECTIONSwith toolkitsalesforce - •Always call
RUBE_SEARCH_TOOLSfirst to get current tool schemas
Setup
Get Rube MCP: Add https://rube.app/mcp as an MCP server in your client configuration. No API keys needed — just add the endpoint and it works.
- •Verify Rube MCP is available by confirming
RUBE_SEARCH_TOOLSresponds - •Call
RUBE_MANAGE_CONNECTIONSwith toolkitsalesforce - •If connection is not ACTIVE, follow the returned auth link to complete Salesforce OAuth
- •Confirm connection status shows ACTIVE before running any workflows
Core Workflows
1. Manage Leads
When to use: User wants to create, search, update, or list leads
Tool sequence:
- •
SALESFORCE_SEARCH_LEADS- Search leads by criteria [Optional] - •
SALESFORCE_LIST_LEADS- List all leads [Optional] - •
SALESFORCE_CREATE_LEAD- Create a new lead [Optional] - •
SALESFORCE_UPDATE_LEAD- Update lead fields [Optional] - •
SALESFORCE_ADD_LEAD_TO_CAMPAIGN- Add lead to campaign [Optional] - •
SALESFORCE_APPLY_LEAD_ASSIGNMENT_RULES- Apply assignment rules [Optional]
Key parameters:
- •
LastName: Required for lead creation - •
Company: Required for lead creation - •
Email,Phone,Title: Common lead fields - •
lead_id: Lead ID for updates - •
campaign_id: Campaign ID for campaign operations
Pitfalls:
- •LastName and Company are required fields for lead creation
- •Lead IDs are 15 or 18 character Salesforce IDs
2. Manage Contacts and Accounts
When to use: User wants to manage contacts and their associated accounts
Tool sequence:
- •
SALESFORCE_SEARCH_CONTACTS- Search contacts [Optional] - •
SALESFORCE_LIST_CONTACTS- List contacts [Optional] - •
SALESFORCE_CREATE_CONTACT- Create a new contact [Optional] - •
SALESFORCE_SEARCH_ACCOUNTS- Search accounts [Optional] - •
SALESFORCE_CREATE_ACCOUNT- Create a new account [Optional] - •
SALESFORCE_ASSOCIATE_CONTACT_TO_ACCOUNT- Link contact to account [Optional]
Key parameters:
- •
LastName: Required for contact creation - •
Name: Account name for creation - •
AccountId: Account ID to associate with contact - •
contact_id,account_id: IDs for association
Pitfalls:
- •Contact requires at least LastName
- •Account association requires both valid contact and account IDs
3. Manage Opportunities
When to use: User wants to track and manage sales opportunities
Tool sequence:
- •
SALESFORCE_SEARCH_OPPORTUNITIES- Search opportunities [Optional] - •
SALESFORCE_LIST_OPPORTUNITIES- List all opportunities [Optional] - •
SALESFORCE_GET_OPPORTUNITY- Get opportunity details [Optional] - •
SALESFORCE_CREATE_OPPORTUNITY- Create new opportunity [Optional] - •
SALESFORCE_RETRIEVE_OPPORTUNITIES_DATA- Retrieve opportunity data [Optional]
Key parameters:
- •
Name: Opportunity name (required) - •
StageName: Sales stage (required) - •
CloseDate: Expected close date (required) - •
Amount: Deal value - •
AccountId: Associated account
Pitfalls:
- •Name, StageName, and CloseDate are required for creation
- •Stage names must match exactly what is configured in Salesforce
4. Run SOQL Queries
When to use: User wants to query Salesforce data with custom SOQL
Tool sequence:
- •
SALESFORCE_RUN_SOQL_QUERY/SALESFORCE_QUERY- Execute SOQL [Required]
Key parameters:
- •
query: SOQL query string
Pitfalls:
- •SOQL syntax differs from SQL; uses Salesforce object and field API names
- •Field API names may differ from display labels (e.g.,
Account.NamenotAccount Name) - •Results are paginated for large datasets
5. Manage Tasks
When to use: User wants to create, search, update, or complete tasks
Tool sequence:
- •
SALESFORCE_SEARCH_TASKS- Search tasks [Optional] - •
SALESFORCE_UPDATE_TASK- Update task fields [Optional] - •
SALESFORCE_COMPLETE_TASK- Mark task as complete [Optional]
Key parameters:
- •
task_id: Task ID for updates - •
Status: Task status value - •
Subject: Task subject
Pitfalls:
- •Task status values must match picklist options in Salesforce
Common Patterns
SOQL Syntax
Basic query:
SELECT Id, Name, Email FROM Contact WHERE LastName = 'Smith'
With relationships:
SELECT Id, Name, Account.Name FROM Contact WHERE Account.Industry = 'Technology'
Date filtering:
SELECT Id, Name FROM Lead WHERE CreatedDate = TODAY SELECT Id, Name FROM Opportunity WHERE CloseDate = NEXT_MONTH
Pagination
- •SOQL queries with large results return pagination tokens
- •Use
SALESFORCE_QUERYwith nextRecordsUrl for pagination - •Check
donefield in response; if false, continue paging