salesforce_aggregate_queryExecute SOQL queries with GROUP BY, aggregate functions, and statistical analysis. Use this tool for queries that summarize and group data rather than returning individual records.
NOTE: For regular queries without GROUP BY or aggregates, use salesforce_query_records instead.
This tool handles:
1. GROUP BY queries (single/multiple fields, related objects, date functions)
2. Aggregate functions: COUNT(), COUNT_DISTINCT(), SUM(), AVG(), MIN(), MAX()
3. HAVING clauses for filtering grouped results
4. Date/time grouping: CALENDAR_YEAR(), CALENDAR_MONTH(), CALENDAR_QUARTER(), FISCAL_YEAR(), FISCAL_QUARTER()
Examples:
1. Count opportunities by stage:
- objectName: "Opportunity"
- selectFields: ["StageName", "COUNT(Id) OpportunityCount"]
- groupByFields: ["StageName"]
2. Analyze cases by priority and status:
- objectName: "Case"
- selectFields: ["Priority", "Status", "COUNT(Id) CaseCount", "AVG(Days_Open__c) AvgDaysOpen"]
- groupByFields: ["Priority", "Status"]
3. Count contacts by account industry:
- objectName: "Contact"
- selectFields: ["Account.Industry", "COUNT(Id) ContactCount"]
- groupByFields: ["Account.Industry"]
4. Quarterly opportunity analysis:
- objectName: "Opportunity"
- selectFields: ["CALENDAR_YEAR(CloseDate) Year", "CALENDAR_QUARTER(CloseDate) Quarter", "SUM(Amount) Revenue"]
- groupByFields: ["CALENDAR_YEAR(CloseDate)", "CALENDAR_QUARTER(CloseDate)"]
5. Find accounts with more than 10 opportunities:
- objectName: "Opportunity"
- selectFields: ["Account.Name", "COUNT(Id) OpportunityCount"]
- groupByFields: ["Account.Name"]
- havingClause: "COUNT(Id) > 10"
Important Rules:
- All non-aggregate fields in selectFields MUST be included in groupByFields
- Use whereClause to filter rows BEFORE grouping
- Use havingClause to filter AFTER grouping (for aggregate conditions)
- ORDER BY can only use fields from groupByFields or aggregate functions
- OFFSET is not supported with GROUP BY in SalesforceInput schema{
"type": "object",
"properties": {
"objectName": {
"type": "string",
"description": "API name of the object to query"
},
"selectFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to select - mix of group fields and aggregates. Format: 'FieldName' or 'COUNT(Id) AliasName'"
},
"groupByFields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to group by - must include all non-aggregate fields from selectFields"
},
"whereClause": {
"type": "string",
"description": "WHERE clause to filter rows BEFORE grouping (cannot contain aggregate functions)",
"optional": true
},
"havingClause": {
"type": "string",
"description": "HAVING clause to filter results AFTER grouping (use for aggregate conditions)",
"optional": true
},
"orderBy": {
"type": "string",
"description": "ORDER BY clause - can only use grouped fields or aggregate functions",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of grouped results to return",
"optional": true
}
},
"required": [
"objectName",
"selectFields",
"groupByFields"
]
} | — | | — |
salesforce_analytics_queriesExecute advanced analytics and reporting queries using Einstein Analytics (Tableau CRM), custom reports, and complex analytical SOQL queries with advanced functions and reporting capabilities.Input schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"run_analytics_query",
"list_datasets",
"create_lens",
"run_wave_query",
"get_dashboard_data",
"export_dataset",
"analytics_insights",
"trend_analysis",
"cohort_analysis",
"funnel_analysis"
],
"description": "Type of analytics operation to perform"
},
"datasetName": {
"type": "string",
"description": "Name of the analytics dataset"
},
"query": {
"type": "string",
"description": "SAQL (Salesforce Analytics Query Language) or SOQL query"
},
"dashboardId": {
"type": "string",
"description": "ID of the dashboard"
},
"dateRange": {
"type": "object",
"properties": {
"startDate": {
"type": "string"
},
"endDate": {
"type": "string"
}
},
"description": "Date range for the analysis"
},
"groupBy": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to group by in analysis"
},
"metrics": {
"type": "array",
"items": {
"type": "string"
},
"description": "Metrics to calculate"
},
"filters": {
"type": "object",
"description": "Additional filters for the query"
},
"includeForecasting": {
"type": "boolean",
"description": "Include forecasting in the analysis"
},
"exportFormat": {
"type": "string",
"enum": [
"csv",
"xlsx",
"json"
],
"description": "Export format for dataset"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_audit_trailAccess and analyze Salesforce audit trail data including setup changes, field history, and user activitiesInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"setup_trail",
"query_events",
"event_types",
"download_logs",
"field_history",
"login_history",
"data_export",
"compliance_report"
],
"description": "Audit trail operation to perform"
},
"startDate": {
"type": "string",
"description": "Start date for audit query (ISO format)"
},
"endDate": {
"type": "string",
"description": "End date for audit query (ISO format)"
},
"eventType": {
"type": "string",
"description": "Type of event to filter by"
},
"userId": {
"type": "string",
"description": "User ID to filter events"
},
"action": {
"type": "string",
"description": "Action type to filter by"
},
"objectId": {
"type": "string",
"description": "Object ID for specific record tracking"
},
"objectType": {
"type": "string",
"description": "Object type for field history tracking"
},
"fieldsToTrack": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to track for history"
},
"includeDetails": {
"type": "boolean",
"description": "Include detailed information in results"
},
"exportFormat": {
"type": "string",
"enum": [
"csv",
"json",
"excel"
],
"description": "Format for data export"
},
"limit": {
"type": "number",
"description": "Maximum number of records to return"
},
"reportType": {
"type": "string",
"enum": [
"summary",
"detailed",
"compliance"
],
"description": "Type of compliance report to generate"
},
"filters": {
"type": "object",
"description": "Additional filters for audit queries",
"properties": {
"sections": {
"type": "array",
"items": {
"type": "string"
}
},
"delegateUser": {
"type": "string"
},
"responsibilityType": {
"type": "string"
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_bulk_operationsPerform bulk operations on large datasets using Salesforce Bulk API:
- Insert: Create thousands of records efficiently
- Update: Update large numbers of existing records
- Delete: Remove multiple records in batch
- Upsert: Insert or update based on external ID
- Query: Export large datasets
Examples: Bulk insert 10,000 accounts, Bulk update all opportunities in a region
Note: Optimized for large data volumes (>200 records), supports CSV formatInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"insert",
"update",
"delete",
"upsert",
"query"
],
"description": "Type of bulk operation to perform"
},
"objectName": {
"type": "string",
"description": "API name of the Salesforce object"
},
"records": {
"type": "array",
"items": {
"type": "object"
},
"description": "Array of records for insert/update/delete/upsert operations",
"optional": true
},
"csvData": {
"type": "string",
"description": "CSV formatted data for bulk operations",
"optional": true
},
"externalIdField": {
"type": "string",
"description": "External ID field name for upsert operations",
"optional": true
},
"queryString": {
"type": "string",
"description": "SOQL query for bulk query operations",
"optional": true
},
"batchSize": {
"type": "number",
"description": "Number of records per batch (default: 10000)",
"optional": true
},
"waitForCompletion": {
"type": "boolean",
"description": "Wait for job completion (default: true)",
"optional": true
}
},
"required": [
"operation",
"objectName"
]
} | — | | — |
salesforce_case_escalationManage Salesforce case escalation rules, escalation processes, SLA management, and automated case routing for customer service optimization.Input schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"manage_escalation_rules",
"view_escalations",
"sla_management",
"escalation_analysis",
"auto_escalate",
"escalation_history",
"breach_analysis",
"escalation_metrics",
"rule_optimization",
"notification_settings"
],
"description": "Case escalation operation to perform"
},
"caseId": {
"type": "string",
"description": "Specific case ID to escalate or analyze"
},
"escalationRuleId": {
"type": "string",
"description": "ID of escalation rule to manage"
},
"priority": {
"type": "string",
"enum": [
"Low",
"Medium",
"High",
"Critical"
],
"description": "Case priority for escalation rules"
},
"timeframe": {
"type": "string",
"enum": [
"today",
"week",
"month",
"quarter"
],
"description": "Time period for escalation analysis"
},
"escalationCriteria": {
"type": "object",
"properties": {
"timeThreshold": {
"type": "number"
},
"priorityLevel": {
"type": "string"
},
"customerType": {
"type": "string"
},
"caseType": {
"type": "string"
}
},
"description": "Criteria for escalation rules"
},
"notificationSettings": {
"type": "object",
"properties": {
"recipients": {
"type": "array",
"items": {
"type": "string"
}
},
"escalationLevels": {
"type": "array",
"items": {
"type": "string"
}
},
"channels": {
"type": "array",
"items": {
"type": "string"
}
}
},
"description": "Notification configuration"
},
"slaThresholds": {
"type": "object",
"properties": {
"responseTime": {
"type": "number"
},
"resolutionTime": {
"type": "number"
},
"escalationTime": {
"type": "number"
}
},
"description": "SLA time thresholds in hours"
},
"includeMetrics": {
"type": "boolean",
"description": "Include escalation metrics in response"
},
"ruleActive": {
"type": "boolean",
"description": "Whether escalation rule should be active"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_change_setsManage Salesforce change sets for configuration deployment including creation, component management, and deploymentInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create_changeset",
"list_changesets",
"deploy_changeset",
"add_components",
"remove_components",
"clone_changeset",
"validate_changeset"
],
"description": "Change set operation to perform"
},
"changesetName": {
"type": "string",
"description": "Name of the change set"
},
"changesetId": {
"type": "string",
"description": "ID of the change set"
},
"description": {
"type": "string",
"description": "Description of the change set"
},
"components": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"action": {
"type": "string",
"enum": [
"add",
"remove"
]
}
}
},
"description": "Components to add or remove from change set"
},
"targetOrg": {
"type": "string",
"description": "Target organization for deployment"
},
"sourceOrg": {
"type": "string",
"description": "Source organization for change set"
},
"deploymentOptions": {
"type": "object",
"description": "Deployment configuration options",
"properties": {
"testLevel": {
"type": "string",
"enum": [
"NoTestRun",
"RunSpecifiedTests",
"RunLocalTests",
"RunAllTestsInOrg"
]
},
"testClasses": {
"type": "array",
"items": {
"type": "string"
}
},
"rollbackOnError": {
"type": "boolean"
},
"singlePackage": {
"type": "boolean"
}
}
},
"validationOnly": {
"type": "boolean",
"description": "Perform validation only without deployment"
},
"includeProfiles": {
"type": "boolean",
"description": "Include profile components"
},
"includePermissions": {
"type": "boolean",
"description": "Include permission set components"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_chatter_postsManage Salesforce Chatter posts and feeds:
- Post: Create new Chatter posts to feeds
- List Posts: View recent posts from feeds
- Comment: Add comments to existing posts
- Like: Like or unlike posts
- Get Feed: Get feed items for users or records
- Manage Groups: Create, join, or leave Chatter groups
Examples: Post to company feed, Comment on opportunity, Create team groupInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"post",
"list_posts",
"comment",
"like",
"get_feed",
"manage_groups"
],
"description": "Operation to perform on Chatter"
},
"feedType": {
"type": "string",
"enum": [
"News",
"UserProfile",
"Record",
"Groups",
"Company"
],
"description": "Type of feed to interact with",
"optional": true
},
"subjectId": {
"type": "string",
"description": "ID of user, record, or group to post to",
"optional": true
},
"message": {
"type": "string",
"description": "Message content for posts or comments",
"optional": true
},
"postId": {
"type": "string",
"description": "Feed item ID for comments or likes",
"optional": true
},
"mentionIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "User IDs to mention in the post",
"optional": true
},
"isRichText": {
"type": "boolean",
"description": "Whether the message contains rich text formatting",
"optional": true
},
"groupName": {
"type": "string",
"description": "Group name for group management operations",
"optional": true
},
"groupDescription": {
"type": "string",
"description": "Group description for creating groups",
"optional": true
},
"isPrivate": {
"type": "boolean",
"description": "Whether group should be private (for group creation)",
"optional": true
},
"limit": {
"type": "number",
"description": "Number of posts to retrieve",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_connected_appsManage Salesforce connected apps including OAuth configurations, policies, and security settingsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list_apps",
"create_app",
"update_app",
"manage_policies",
"oauth_settings",
"app_analytics",
"refresh_tokens",
"ip_restrictions"
],
"description": "Connected app operation to perform"
},
"appId": {
"type": "string",
"description": "Connected app ID"
},
"appName": {
"type": "string",
"description": "Name of the connected app"
},
"contactEmail": {
"type": "string",
"description": "Contact email for the app"
},
"description": {
"type": "string",
"description": "Description of the connected app"
},
"callbackUrl": {
"type": "string",
"description": "OAuth callback URL"
},
"oauthScopes": {
"type": "array",
"items": {
"type": "string"
},
"description": "OAuth scopes for the app"
},
"ipRanges": {
"type": "array",
"items": {
"type": "object",
"properties": {
"start": {
"type": "string"
},
"end": {
"type": "string"
},
"description": {
"type": "string"
}
}
},
"description": "IP ranges for access restrictions"
},
"policies": {
"type": "object",
"description": "App policies and security settings",
"properties": {
"refreshTokenPolicy": {
"type": "string",
"enum": [
"Immediately",
"Never"
]
},
"sessionPolicy": {
"type": "object",
"properties": {
"sessionTimeout": {
"type": "number"
},
"sessionTimeoutWarning": {
"type": "boolean"
}
}
},
"loginPolicy": {
"type": "object",
"properties": {
"loginHours": {
"type": "string"
},
"loginIpRanges": {
"type": "boolean"
}
}
}
}
},
"permissionSetAssignments": {
"type": "array",
"items": {
"type": "string"
},
"description": "Permission sets to assign to app users"
},
"profileAssignments": {
"type": "array",
"items": {
"type": "string"
},
"description": "Profiles to assign to app users"
},
"certificateId": {
"type": "string",
"description": "Certificate ID for SAML configuration"
},
"samlSettings": {
"type": "object",
"description": "SAML configuration settings",
"properties": {
"enabled": {
"type": "boolean"
},
"issuer": {
"type": "string"
},
"audienceUrl": {
"type": "string"
},
"identityLocation": {
"type": "string"
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_data_backupBackup critical Salesforce data with scheduling and restoration:
- Create full or incremental backups of objects
- Schedule automated backups
- Export data in multiple formats (JSON, CSV)
- Restore data from backups
Examples: Backup all Account data, Schedule weekly Contact backupsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"backup",
"restore",
"schedule",
"list_backups",
"delete_backup"
],
"description": "Type of backup operation"
},
"objectNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of object API names to backup",
"optional": true
},
"backupName": {
"type": "string",
"description": "Name for the backup",
"optional": true
},
"backupType": {
"type": "string",
"enum": [
"full",
"incremental"
],
"description": "Type of backup (full or incremental)",
"optional": true
},
"format": {
"type": "string",
"enum": [
"json",
"csv"
],
"description": "Export format for backup",
"optional": true
},
"whereClause": {
"type": "string",
"description": "WHERE clause to filter records for backup",
"optional": true
},
"schedule": {
"type": "object",
"description": "Schedule configuration for automated backups",
"optional": true
},
"backupId": {
"type": "string",
"description": "ID of backup to restore or delete",
"optional": true
},
"targetObject": {
"type": "string",
"description": "Target object for restoration",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_data_exportExport Salesforce data to various formats:
- CSV Export: Export query results to CSV format
- Excel Export: Export with formatting for Excel
- JSON Export: Export as JSON for API integration
- Filtered Export: Export with custom filters and sorting
Examples: Export all accounts to CSV, Export opportunities with custom fields
Note: Supports large datasets, relationship fields, and custom formattingInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"csv",
"json",
"excel",
"custom_query"
],
"description": "Export format and type"
},
"objectName": {
"type": "string",
"description": "API name of the Salesforce object to export",
"optional": true
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to include in export",
"optional": true
},
"queryString": {
"type": "string",
"description": "Custom SOQL query for export",
"optional": true
},
"whereClause": {
"type": "string",
"description": "WHERE clause for filtering records",
"optional": true
},
"orderBy": {
"type": "string",
"description": "ORDER BY clause for sorting",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of records to export",
"optional": true
},
"includeHeaders": {
"type": "boolean",
"description": "Include column headers in export (default: true)",
"optional": true
},
"dateFormat": {
"type": "string",
"description": "Date format for export (e.g., 'YYYY-MM-DD')",
"optional": true
},
"nullValue": {
"type": "string",
"description": "Value to use for null fields (default: empty)",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_data_importImport data into Salesforce from various formats:
- CSV Import: Import from CSV format with validation
- JSON Import: Import from JSON data structure
- Validation: Validate data before import
- Error Handling: Detailed error reporting for failed records
Examples: Import accounts from CSV, Import contacts with validation
Note: Supports data validation, duplicate detection, and error reportingInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"validate",
"import_csv",
"import_json",
"import_records"
],
"description": "Type of import operation"
},
"objectName": {
"type": "string",
"description": "API name of the Salesforce object to import into"
},
"csvData": {
"type": "string",
"description": "CSV formatted data to import",
"optional": true
},
"jsonData": {
"type": "array",
"items": {
"type": "object"
},
"description": "Array of records to import",
"optional": true
},
"fieldMapping": {
"type": "object",
"description": "Mapping of CSV columns to Salesforce fields",
"optional": true
},
"validateOnly": {
"type": "boolean",
"description": "Only validate data without importing (default: false)",
"optional": true
},
"allowPartialSuccess": {
"type": "boolean",
"description": "Allow import to succeed even if some records fail (default: true)",
"optional": true
},
"batchSize": {
"type": "number",
"description": "Number of records to process in each batch (default: 200)",
"optional": true
},
"externalIdField": {
"type": "string",
"description": "External ID field for upsert operations",
"optional": true
},
"duplicateRule": {
"type": "string",
"enum": [
"allow",
"error",
"skip"
],
"description": "How to handle duplicate records (default: allow)",
"optional": true
}
},
"required": [
"operation",
"objectName"
]
} | — | | — |
salesforce_deployment_statusMonitor and manage Salesforce deployment status, history, and operations including validation, cancellation, and rollbackInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"check_deployment",
"list_deployments",
"cancel_deployment",
"validate_deployment",
"deployment_history",
"rollback_deployment"
],
"description": "Deployment operation to perform"
},
"deploymentId": {
"type": "string",
"description": "Specific deployment ID to check or manage"
},
"targetOrg": {
"type": "string",
"description": "Target org for deployment operations"
},
"packageName": {
"type": "string",
"description": "Package name for deployment tracking"
},
"startDate": {
"type": "string",
"description": "Start date for deployment history (YYYY-MM-DD)"
},
"endDate": {
"type": "string",
"description": "End date for deployment history (YYYY-MM-DD)"
},
"status": {
"type": "string",
"enum": [
"InProgress",
"Succeeded",
"Failed",
"Canceled",
"SucceededPartial"
],
"description": "Filter deployments by status"
},
"deploymentType": {
"type": "string",
"enum": [
"changeSet",
"package",
"metadata",
"quickDeploy"
],
"description": "Type of deployment to filter by"
},
"includeDetails": {
"type": "boolean",
"description": "Include detailed deployment information"
},
"maxResults": {
"type": "number",
"description": "Maximum number of results to return"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_describe_objectGet detailed schema metadata including all fields, relationships, and field properties of any Salesforce object. Examples: 'Account' shows all Account fields including custom fields; 'Case' shows all Case fields including relationships to Account, Contact etc.Input schema{
"type": "object",
"properties": {
"objectName": {
"type": "string",
"description": "API name of the object (e.g., 'Account', 'Contact', 'Custom_Object__c')"
}
},
"required": [
"objectName"
]
} | — | | — |
salesforce_dml_recordsPerform data manipulation operations on Salesforce records:
- insert: Create new records
- update: Modify existing records (requires Id)
- delete: Remove records (requires Id)
- upsert: Insert or update based on external ID field
Examples: Insert new Accounts, Update Case status, Delete old records, Upsert based on custom external IDInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"insert",
"update",
"delete",
"upsert"
],
"description": "Type of DML operation to perform"
},
"objectName": {
"type": "string",
"description": "API name of the object"
},
"records": {
"type": "array",
"items": {
"type": "object"
},
"description": "Array of records to process"
},
"externalIdField": {
"type": "string",
"description": "External ID field name for upsert operations",
"optional": true
}
},
"required": [
"operation",
"objectName",
"records"
]
} | — | | — |
salesforce_error_monitoringMonitor and analyze Salesforce errors and exceptions:
- Error Analysis: View recent errors and exceptions
- Debug Logs: Analyze debug log errors
- System Issues: Monitor system-level problems
- User Errors: Track user-reported issues
- Error Trends: Analyze error patterns over time
- Resolution: Track error resolution status
- Alerts: Set up error monitoring alerts
Examples: View recent exceptions, Analyze debug log errors, Track error trendsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"recent_errors",
"debug_log_errors",
"system_issues",
"user_errors",
"error_trends",
"error_details",
"error_resolution"
],
"description": "Type of error monitoring to perform"
},
"timeFrame": {
"type": "string",
"enum": [
"last_hour",
"last_24_hours",
"last_week",
"last_month"
],
"description": "Time frame for error analysis",
"optional": true
},
"severity": {
"type": "string",
"enum": [
"all",
"critical",
"high",
"medium",
"low"
],
"description": "Error severity level to filter by",
"optional": true
},
"errorType": {
"type": "string",
"enum": [
"all",
"apex",
"validation",
"workflow",
"trigger",
"batch",
"integration",
"ui"
],
"description": "Type of errors to analyze",
"optional": true
},
"userId": {
"type": "string",
"description": "Specific user ID to filter errors by",
"optional": true
},
"errorId": {
"type": "string",
"description": "Specific error or debug log ID to analyze",
"optional": true
},
"includeStackTrace": {
"type": "boolean",
"description": "Include stack traces in error details",
"optional": true
},
"groupBy": {
"type": "string",
"enum": [
"error_type",
"user",
"time",
"class"
],
"description": "How to group error analysis",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of errors to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_execute_anonymousExecute anonymous Apex code in Salesforce.
Examples:
1. Execute simple Apex code:
{
"apexCode": "System.debug('Hello World');"
}
2. Execute Apex code with variables:
{
"apexCode": "List<Account> accounts = [SELECT Id, Name FROM Account LIMIT 5]; for(Account a : accounts) { System.debug(a.Name); }"
}
3. Execute Apex with debug logs:
{
"apexCode": "System.debug(LoggingLevel.INFO, 'Processing accounts...'); List<Account> accounts = [SELECT Id FROM Account LIMIT 10]; System.debug(LoggingLevel.INFO, 'Found ' + accounts.size() + ' accounts');",
"logLevel": "DEBUG"
}
Notes:
- The apexCode parameter is required and must contain valid Apex code
- The code is executed in an anonymous context and does not persist
- The logLevel parameter is optional (defaults to 'DEBUG')
- Execution results include compilation success/failure, execution success/failure, and debug logs
- For security reasons, some operations may be restricted based on user permissions
- This tool can be used for data operations or updates when there are no other specific tools available
- When users request data queries or updates that aren't directly supported by other tools, this tool can be used if the operation is achievable using Apex code
Input schema{
"type": "object",
"properties": {
"apexCode": {
"type": "string",
"description": "Apex code to execute anonymously"
},
"logLevel": {
"type": "string",
"enum": [
"NONE",
"ERROR",
"WARN",
"INFO",
"DEBUG",
"FINE",
"FINER",
"FINEST"
],
"description": "Log level for debug logs (optional, defaults to DEBUG)"
}
},
"required": [
"apexCode"
]
} | — | | — |
salesforce_file_managementManage Salesforce Files and Content:
- List: View files and documents in Salesforce
- Upload: Upload files to Salesforce (base64 encoded)
- Download: Download file content (returns base64)
- Delete: Remove files from Salesforce
- Share: Share files with users or groups
- Get Details: Get file metadata and sharing information
Examples: List recent files, Upload document, Share file with teamInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"upload",
"download",
"delete",
"share",
"get_details"
],
"description": "Operation to perform on files"
},
"fileId": {
"type": "string",
"description": "File ID (required for download/delete/share/get_details)",
"optional": true
},
"fileName": {
"type": "string",
"description": "File name for uploading or filtering",
"optional": true
},
"fileContent": {
"type": "string",
"description": "Base64 encoded file content (for upload)",
"optional": true
},
"fileType": {
"type": "string",
"description": "File content type/MIME type (for upload)",
"optional": true
},
"description": {
"type": "string",
"description": "File description (for upload)",
"optional": true
},
"shareWithIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "User or Group IDs to share with",
"optional": true
},
"shareType": {
"type": "string",
"enum": [
"V",
"C",
"I"
],
"description": "Share type: V=View, C=Collaborate, I=Infer from context",
"optional": true
},
"ownerId": {
"type": "string",
"description": "Owner ID for filtering files",
"optional": true
},
"limit": {
"type": "number",
"description": "Number of files to return (for list)",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_forecastingManage Salesforce forecasting including sales forecasts, quota management, territory forecasting, and predictive analytics for revenue planning.Input schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"view_forecasts",
"manage_quotas",
"territory_forecasting",
"forecast_categories",
"forecast_analysis",
"quota_performance",
"forecast_accuracy",
"pipeline_analysis",
"trend_forecasting",
"what_if_scenarios"
],
"description": "Forecasting operation to perform"
},
"forecastPeriod": {
"type": "string",
"enum": [
"current_quarter",
"next_quarter",
"current_year",
"next_year"
],
"description": "Forecast period to analyze"
},
"userId": {
"type": "string",
"description": "User ID for individual forecast analysis"
},
"territoryId": {
"type": "string",
"description": "Territory ID for territory-specific forecasting"
},
"quotaAmount": {
"type": "number",
"description": "Quota amount to set or analyze"
},
"forecastType": {
"type": "string",
"enum": [
"opportunity",
"revenue",
"quantity",
"product"
],
"description": "Type of forecast to generate"
},
"includeHistory": {
"type": "boolean",
"description": "Include historical data in analysis"
},
"confidence": {
"type": "string",
"enum": [
"best_case",
"commit",
"most_likely",
"pipeline"
],
"description": "Forecast confidence level"
},
"groupBy": {
"type": "string",
"enum": [
"user",
"territory",
"product",
"time"
],
"description": "How to group forecast data"
},
"scenario": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"assumptions": {
"type": "array",
"items": {
"type": "string"
}
},
"adjustments": {
"type": "object"
}
},
"description": "What-if scenario parameters"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_heroku_connectManage Heroku Connect integration for bi-directional data synchronization between Salesforce and PostgreSQLInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"setup_connection",
"manage_mappings",
"sync_data",
"monitor_sync",
"troubleshoot",
"configure_transforms"
],
"description": "Heroku Connect operation to perform"
},
"connectionName": {
"type": "string",
"description": "Name for the Heroku Connect connection"
},
"herokuAppName": {
"type": "string",
"description": "Name of the Heroku application"
},
"databaseUrl": {
"type": "string",
"description": "PostgreSQL database URL"
},
"objectName": {
"type": "string",
"description": "Salesforce object name for mapping"
},
"mappingConfig": {
"type": "object",
"description": "Configuration for object mapping",
"properties": {
"salesforceObject": {
"type": "string"
},
"herokuTable": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"type": "object",
"properties": {
"salesforceField": {
"type": "string"
},
"postgresField": {
"type": "string"
},
"type": {
"type": "string"
}
}
}
},
"syncDirection": {
"type": "string",
"enum": [
"sf_to_db",
"db_to_sf",
"bidirectional"
]
},
"pollingInterval": {
"type": "number"
}
}
},
"syncDirection": {
"type": "string",
"enum": [
"sf_to_db",
"db_to_sf",
"bidirectional"
],
"description": "Direction of data synchronization"
},
"transformConfig": {
"type": "object",
"description": "Data transformation configuration",
"properties": {
"fieldTransforms": {
"type": "object"
},
"dataFilters": {
"type": "array",
"items": {
"type": "string"
}
},
"customLogic": {
"type": "string"
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_knowledge_articlesManage Salesforce Knowledge articles:
- Create: Create new knowledge articles
- Search: Find articles by keywords or categories
- Update: Modify existing articles
- Publish: Publish draft articles
- Archive: Archive outdated articles
- Categories: Manage article categories and data categories
- Versions: View article version history
Examples: Create FAQ article, Search support articles, Publish draftInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"search",
"update",
"publish",
"archive",
"get_article",
"list_categories",
"get_versions"
],
"description": "Operation to perform on Knowledge articles"
},
"articleType": {
"type": "string",
"description": "API name of the Knowledge article type (e.g., 'FAQ__kav', 'Support_Article__kav')",
"optional": true
},
"title": {
"type": "string",
"description": "Article title",
"optional": true
},
"summary": {
"type": "string",
"description": "Article summary",
"optional": true
},
"content": {
"type": "string",
"description": "Article content/body",
"optional": true
},
"articleId": {
"type": "string",
"description": "Knowledge article ID",
"optional": true
},
"searchTerm": {
"type": "string",
"description": "Search term for finding articles",
"optional": true
},
"language": {
"type": "string",
"description": "Article language (e.g., 'en_US', 'es_MX')",
"optional": true
},
"categories": {
"type": "array",
"items": {
"type": "string"
},
"description": "Data categories for the article",
"optional": true
},
"keywords": {
"type": "array",
"items": {
"type": "string"
},
"description": "Keywords/tags for the article",
"optional": true
},
"isVisibleInApp": {
"type": "boolean",
"description": "Whether article is visible in Salesforce app",
"optional": true
},
"isVisibleInPkb": {
"type": "boolean",
"description": "Whether article is visible in public knowledge base",
"optional": true
},
"isVisibleInCsp": {
"type": "boolean",
"description": "Whether article is visible in customer self-service portal",
"optional": true
},
"validationStatus": {
"type": "string",
"enum": [
"Draft",
"In_Review",
"Published"
],
"description": "Article validation status",
"optional": true
},
"publishStatus": {
"type": "string",
"enum": [
"Draft",
"Online",
"Archived"
],
"description": "Article publish status",
"optional": true
},
"limit": {
"type": "number",
"description": "Number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_login_forensicsAdvanced login forensics and security investigation tools for analyzing authentication patterns and detecting threatsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"analyze_patterns",
"security_investigation",
"user_behavior",
"threat_detection",
"geographic_analysis",
"device_tracking",
"anomaly_detection",
"incident_response"
],
"description": "Type of forensic analysis to perform"
},
"userId": {
"type": "string",
"description": "Specific user ID to investigate"
},
"ipAddress": {
"type": "string",
"description": "IP address to investigate"
},
"startDate": {
"type": "string",
"description": "Start date for analysis period (ISO format)"
},
"endDate": {
"type": "string",
"description": "End date for analysis period (ISO format)"
},
"suspiciousActivity": {
"type": "boolean",
"description": "Focus on suspicious activity patterns"
},
"includeSuccessful": {
"type": "boolean",
"description": "Include successful login attempts"
},
"includeFailed": {
"type": "boolean",
"description": "Include failed login attempts"
},
"deviceId": {
"type": "string",
"description": "Device identifier for tracking"
},
"browserInfo": {
"type": "string",
"description": "Browser information to analyze"
},
"riskThreshold": {
"type": "string",
"enum": [
"low",
"medium",
"high"
],
"description": "Risk threshold for threat detection"
},
"analysisDepth": {
"type": "string",
"enum": [
"basic",
"detailed",
"forensic"
],
"description": "Depth of forensic analysis"
},
"alertRules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"condition": {
"type": "string"
},
"threshold": {
"type": "number"
}
}
},
"description": "Custom alert rules for detection"
},
"exportFindings": {
"type": "boolean",
"description": "Export forensic findings for external analysis"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_approval_processesManage Salesforce approval processes:
- List: View all approval processes for an object
- Get Details: Get detailed configuration of a specific approval process
- Activate: Activate an inactive approval process
- Deactivate: Deactivate an active approval process
Examples: List all Account approval processes, Activate expense approval processInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"get_details",
"activate",
"deactivate"
],
"description": "Operation to perform on approval processes"
},
"objectName": {
"type": "string",
"description": "API name of the object (required for list operation)",
"optional": true
},
"processName": {
"type": "string",
"description": "Name or ID of the approval process (required for get_details/activate/deactivate)",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_dashboardsManage Salesforce dashboards and dashboard components:
- List Dashboards: View available dashboards and their details
- Dashboard Components: View components within dashboards
- Refresh: Refresh dashboard data
- Share: Manage dashboard sharing and visibility
- Metadata: Get dashboard metadata and configuration
- Performance: Analyze dashboard performance metrics
- Subscribe: Manage dashboard subscriptions
Examples: List all dashboards, View dashboard components, Check dashboard performanceInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list_dashboards",
"dashboard_details",
"components",
"refresh_data",
"sharing",
"metadata",
"performance",
"subscriptions"
],
"description": "Dashboard management operation to perform"
},
"dashboardId": {
"type": "string",
"description": "Dashboard ID for specific operations",
"optional": true
},
"dashboardName": {
"type": "string",
"description": "Dashboard name for search operations",
"optional": true
},
"folderId": {
"type": "string",
"description": "Folder ID to filter dashboards",
"optional": true
},
"includePrivate": {
"type": "boolean",
"description": "Include private dashboards in results",
"optional": true
},
"includeComponents": {
"type": "boolean",
"description": "Include component details in dashboard listing",
"optional": true
},
"orderBy": {
"type": "string",
"enum": [
"name",
"created_date",
"modified_date",
"folder"
],
"description": "Field to order results by",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_debug_logsManage debug logs for Salesforce users - enable, disable, or retrieve logs.
Examples:
1. Enable debug logs for a user:
{
"operation": "enable",
"username": "user@example.com",
"logLevel": "DEBUG",
"expirationTime": 30
}
2. Disable debug logs for a user:
{
"operation": "disable",
"username": "user@example.com"
}
3. Retrieve debug logs for a user:
{
"operation": "retrieve",
"username": "user@example.com",
"limit": 5
}
4. Retrieve a specific log with full content:
{
"operation": "retrieve",
"username": "user@example.com",
"logId": "07L1g000000XXXXEAA0",
"includeBody": true
}
Notes:
- The operation must be one of: 'enable', 'disable', or 'retrieve'
- The username parameter is required for all operations
- For 'enable' operation, logLevel is optional (defaults to 'DEBUG')
- Log levels: NONE, ERROR, WARN, INFO, DEBUG, FINE, FINER, FINEST
- expirationTime is optional for 'enable' operation (minutes until expiration, defaults to 30)
- limit is optional for 'retrieve' operation (maximum number of logs to return, defaults to 10)
- logId is optional for 'retrieve' operation (to get a specific log)
- includeBody is optional for 'retrieve' operation (to include the full log content, defaults to false)
- The tool validates that the specified user exists before performing operations
- If logLevel is not specified when enabling logs, the tool will ask for clarificationInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"enable",
"disable",
"retrieve"
],
"description": "Operation to perform on debug logs"
},
"username": {
"type": "string",
"description": "Username of the Salesforce user"
},
"logLevel": {
"type": "string",
"enum": [
"NONE",
"ERROR",
"WARN",
"INFO",
"DEBUG",
"FINE",
"FINER",
"FINEST"
],
"description": "Log level for debug logs (required for 'enable' operation)"
},
"expirationTime": {
"type": "number",
"description": "Minutes until the debug log configuration expires (optional, defaults to 30)"
},
"limit": {
"type": "number",
"description": "Maximum number of logs to retrieve (optional, defaults to 10)"
},
"logId": {
"type": "string",
"description": "ID of a specific log to retrieve (optional)"
},
"includeBody": {
"type": "boolean",
"description": "Whether to include the full log content (optional, defaults to false)"
}
},
"required": [
"operation",
"username"
]
} | — | | — |
salesforce_manage_duplicatesFind and merge duplicate records in Salesforce:
- Find potential duplicates using matching rules
- Merge duplicate records with field mapping
- Configure duplicate detection rules
- View duplicate record sets
Examples: Find duplicate Accounts by name, Merge duplicate ContactsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"find",
"merge",
"configure_rules",
"view_rules"
],
"description": "Type of duplicate management operation"
},
"objectName": {
"type": "string",
"description": "API name of the object to check for duplicates"
},
"searchCriteria": {
"type": "object",
"description": "Criteria for finding duplicates (e.g., {Name: 'value', Email: 'value'})",
"optional": true
},
"masterRecordId": {
"type": "string",
"description": "ID of the master record to keep (for merge operation)",
"optional": true
},
"duplicateRecordIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of duplicate record IDs to merge",
"optional": true
},
"fieldMappings": {
"type": "object",
"description": "Field mappings for merge operation",
"optional": true
},
"ruleName": {
"type": "string",
"description": "Name of the duplicate rule to configure",
"optional": true
},
"matchingRules": {
"type": "array",
"items": {
"type": "object"
},
"description": "Matching rules configuration",
"optional": true
}
},
"required": [
"operation",
"objectName"
]
} | — | | — |
salesforce_manage_email_templatesManage Salesforce email templates:
- List: View all email templates or filter by type/folder
- Get Details: Get template content and metadata
- Create: Create new email templates (Classic or Lightning)
- Update: Modify existing templates
- Delete: Remove email templates
Examples: List all templates, Create welcome email template, Update signature templateInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"get_details",
"create",
"update",
"delete"
],
"description": "Operation to perform on email templates"
},
"templateId": {
"type": "string",
"description": "Template ID (required for get_details/update/delete)",
"optional": true
},
"templateName": {
"type": "string",
"description": "Template name for filtering or creating",
"optional": true
},
"templateType": {
"type": "string",
"enum": [
"Text",
"HTML",
"Custom",
"Visualforce"
],
"description": "Type of email template",
"optional": true
},
"folderName": {
"type": "string",
"description": "Folder name to filter templates",
"optional": true
},
"subject": {
"type": "string",
"description": "Email subject (for create/update)",
"optional": true
},
"htmlBody": {
"type": "string",
"description": "HTML body content (for create/update)",
"optional": true
},
"textBody": {
"type": "string",
"description": "Plain text body content (for create/update)",
"optional": true
},
"isActive": {
"type": "boolean",
"description": "Whether template is active (for create/update)",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_fieldCreate new custom fields or modify existing fields on any Salesforce object:
- Field Types: Text, Number, Date, Lookup, Master-Detail, Picklist etc.
- Properties: Required, Unique, External ID, Length, Scale etc.
- Relationships: Create lookups and master-detail relationships
- Automatically grants Field Level Security to System Administrator (or specified profiles)
Examples: Add Rating__c picklist to Account, Create Account lookup on Custom Object
Note: Use grantAccessTo parameter to specify profiles, defaults to System AdministratorInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update"
],
"description": "Whether to create new field or update existing"
},
"objectName": {
"type": "string",
"description": "API name of the object to add/modify the field"
},
"fieldName": {
"type": "string",
"description": "API name for the field (without __c suffix)"
},
"label": {
"type": "string",
"description": "Label for the field",
"optional": true
},
"type": {
"type": "string",
"enum": [
"Checkbox",
"Currency",
"Date",
"DateTime",
"Email",
"Number",
"Percent",
"Phone",
"Picklist",
"MultiselectPicklist",
"Text",
"TextArea",
"LongTextArea",
"Html",
"Url",
"Lookup",
"MasterDetail"
],
"description": "Field type (required for create)",
"optional": true
},
"required": {
"type": "boolean",
"description": "Whether the field is required",
"optional": true
},
"unique": {
"type": "boolean",
"description": "Whether the field value must be unique",
"optional": true
},
"externalId": {
"type": "boolean",
"description": "Whether the field is an external ID",
"optional": true
},
"length": {
"type": "number",
"description": "Length for text fields",
"optional": true
},
"precision": {
"type": "number",
"description": "Precision for numeric fields",
"optional": true
},
"scale": {
"type": "number",
"description": "Scale for numeric fields",
"optional": true
},
"referenceTo": {
"type": "string",
"description": "API name of the object to reference (for Lookup/MasterDetail)",
"optional": true
},
"relationshipLabel": {
"type": "string",
"description": "Label for the relationship (for Lookup/MasterDetail)",
"optional": true
},
"relationshipName": {
"type": "string",
"description": "API name for the relationship (for Lookup/MasterDetail)",
"optional": true
},
"deleteConstraint": {
"type": "string",
"enum": [
"Cascade",
"Restrict",
"SetNull"
],
"description": "Delete constraint for Lookup fields",
"optional": true
},
"picklistValues": {
"type": "array",
"items": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"isDefault": {
"type": "boolean",
"optional": true
}
}
},
"description": "Values for Picklist/MultiselectPicklist fields",
"optional": true
},
"description": {
"type": "string",
"description": "Description of the field",
"optional": true
},
"grantAccessTo": {
"type": "array",
"items": {
"type": "string"
},
"description": "Profile names to grant field access to (defaults to ['System Administrator'])",
"optional": true
}
},
"required": [
"operation",
"objectName",
"fieldName"
]
} | — | | — |
salesforce_manage_field_permissionsManage Field Level Security (Field Permissions) for custom and standard fields.
- Grant or revoke read/edit access to fields for specific profiles or permission sets
- View current field permissions
- Bulk update permissions for multiple profiles
Examples:
1. Grant System Administrator access to a field
2. Give read-only access to a field for specific profiles
3. Check which profiles have access to a fieldInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"grant",
"revoke",
"view"
],
"description": "Operation to perform on field permissions"
},
"objectName": {
"type": "string",
"description": "API name of the object (e.g., 'Account', 'Custom_Object__c')"
},
"fieldName": {
"type": "string",
"description": "API name of the field (e.g., 'Custom_Field__c')"
},
"profileNames": {
"type": "array",
"items": {
"type": "string"
},
"description": "Names of profiles to grant/revoke access (e.g., ['System Administrator', 'Sales User'])",
"optional": true
},
"readable": {
"type": "boolean",
"description": "Grant/revoke read access (default: true)",
"optional": true
},
"editable": {
"type": "boolean",
"description": "Grant/revoke edit access (default: true)",
"optional": true
}
},
"required": [
"operation",
"objectName",
"fieldName"
]
} | — | | — |
salesforce_manage_flowsRead, create, activate/deactivate Salesforce Flows:
- List all flows in the org
- Get flow details and versions
- Activate or deactivate flows
- View flow execution history
- Get flow metadata and variables
Examples: List all active flows, Deactivate a problematic flow, View flow execution logsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"get_details",
"activate",
"deactivate",
"get_versions",
"execution_history"
],
"description": "Type of flow management operation"
},
"flowName": {
"type": "string",
"description": "API name of the flow (for specific operations)",
"optional": true
},
"flowId": {
"type": "string",
"description": "ID of the flow definition",
"optional": true
},
"versionNumber": {
"type": "number",
"description": "Specific version number of the flow",
"optional": true
},
"status": {
"type": "string",
"enum": [
"Active",
"Draft",
"Obsolete",
"InvalidDraft"
],
"description": "Filter flows by status",
"optional": true
},
"flowType": {
"type": "string",
"enum": [
"Flow",
"Workflow",
"AutoLaunchedFlow",
"ScreenFlow"
],
"description": "Filter flows by type",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_objectCreate new custom objects or modify existing ones in Salesforce:
- Create: New custom objects with fields, relationships, and settings
- Update: Modify existing object settings, labels, sharing model
Examples: Create Customer_Feedback__c object, Update object sharing settings
Note: Changes affect metadata and require proper permissionsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update"
],
"description": "Whether to create new object or update existing"
},
"objectName": {
"type": "string",
"description": "API name for the object (without __c suffix)"
},
"label": {
"type": "string",
"description": "Label for the object"
},
"pluralLabel": {
"type": "string",
"description": "Plural label for the object"
},
"description": {
"type": "string",
"description": "Description of the object",
"optional": true
},
"nameFieldLabel": {
"type": "string",
"description": "Label for the name field",
"optional": true
},
"nameFieldType": {
"type": "string",
"enum": [
"Text",
"AutoNumber"
],
"description": "Type of the name field",
"optional": true
},
"nameFieldFormat": {
"type": "string",
"description": "Display format for AutoNumber field (e.g., 'A-{0000}')",
"optional": true
},
"sharingModel": {
"type": "string",
"enum": [
"ReadWrite",
"Read",
"Private",
"ControlledByParent"
],
"description": "Sharing model for the object",
"optional": true
}
},
"required": [
"operation",
"objectName"
]
} | — | | — |
salesforce_manage_permission_setsManage Salesforce permission sets - create, update, assign permission sets and manage permissions:
- Create: New permission sets with specific permissions
- Update: Modify permission set permissions
- Assign: Assign permission sets to users
- Unassign: Remove permission sets from users
- Query: List permission sets and assignments
Examples: Create API Access permission set, Assign admin permissions to specific users
Note: Requires permission set management permissionsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update",
"assign",
"unassign",
"query",
"query_assignments"
],
"description": "Type of permission set operation"
},
"permissionSetName": {
"type": "string",
"description": "Name of the permission set",
"optional": true
},
"username": {
"type": "string",
"description": "Username for assign/unassign operations",
"optional": true
},
"permissionSetDetails": {
"type": "object",
"description": "Permission set configuration details",
"optional": true,
"properties": {
"label": {
"type": "string"
},
"description": {
"type": "string",
"optional": true
},
"permissions": {
"type": "object",
"optional": true,
"properties": {
"objectPermissions": {
"type": "array",
"items": {
"type": "object"
},
"optional": true
},
"fieldPermissions": {
"type": "array",
"items": {
"type": "object"
},
"optional": true
},
"userPermissions": {
"type": "array",
"items": {
"type": "string"
},
"optional": true
},
"tabSettings": {
"type": "array",
"items": {
"type": "object"
},
"optional": true
}
}
}
}
},
"filters": {
"type": "object",
"description": "Filters for query operations",
"optional": true,
"properties": {
"type": {
"type": "string",
"optional": true
},
"hasActivationRequired": {
"type": "boolean",
"optional": true
},
"limit": {
"type": "number",
"optional": true
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_process_builderManage Process Builder processes in Salesforce:
- List: View all Process Builder processes with their status
- Activate: Activate inactive processes
- Deactivate: Deactivate active processes
- Get Details: Get detailed information about a specific process
Examples: Activate lead conversion process, View all inactive processesInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"activate",
"deactivate",
"get_details"
],
"description": "Operation to perform on Process Builder processes"
},
"processName": {
"type": "string",
"description": "Name or ID of the specific process (required for activate/deactivate/get_details)",
"optional": true
},
"status": {
"type": "string",
"enum": [
"Active",
"Inactive",
"All"
],
"description": "Filter processes by status (for list operation)",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_profilesManage Salesforce profiles - create, clone, update profiles and manage profile permissions:
- Create: New custom profiles with specific permissions
- Clone: Clone existing profiles with modifications
- Update: Modify profile settings and permissions
- Query: List profiles and their permissions
Examples: Clone Standard User profile, Create custom Sales Manager profile
Note: Requires profile management permissionsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"clone",
"update",
"query",
"get_permissions"
],
"description": "Type of profile management operation"
},
"profileName": {
"type": "string",
"description": "Name of the profile (required for update/clone operations)",
"optional": true
},
"sourceProfileName": {
"type": "string",
"description": "Name of the source profile to clone from",
"optional": true
},
"newProfileName": {
"type": "string",
"description": "Name for the new profile (required for create/clone)",
"optional": true
},
"profileDetails": {
"type": "object",
"description": "Profile configuration details",
"optional": true,
"properties": {
"description": {
"type": "string",
"optional": true
},
"userLicense": {
"type": "string",
"optional": true
},
"permissions": {
"type": "object",
"optional": true,
"properties": {
"objectPermissions": {
"type": "array",
"items": {
"type": "object"
},
"optional": true
},
"fieldPermissions": {
"type": "array",
"items": {
"type": "object"
},
"optional": true
},
"userPermissions": {
"type": "array",
"items": {
"type": "string"
},
"optional": true
},
"tabSettings": {
"type": "array",
"items": {
"type": "object"
},
"optional": true
}
}
}
}
},
"filters": {
"type": "object",
"description": "Filters for query operation",
"optional": true,
"properties": {
"userLicense": {
"type": "string",
"optional": true
},
"isCustom": {
"type": "boolean",
"optional": true
},
"limit": {
"type": "number",
"optional": true
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_reportsManage Salesforce reports:
- List: View all reports or filter by folder/type
- Run: Execute a report and get results
- Create: Create a new report (basic structure)
- Get Details: Get report metadata and configuration
- Schedule: Schedule a report to run automatically
Examples: List all account reports, Run opportunity pipeline report, Create simple contact reportInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"run",
"create",
"get_details",
"schedule"
],
"description": "Operation to perform on reports"
},
"reportId": {
"type": "string",
"description": "Report ID (required for run/get_details operations)",
"optional": true
},
"reportName": {
"type": "string",
"description": "Report name for filtering or creating",
"optional": true
},
"folderName": {
"type": "string",
"description": "Folder name to filter reports",
"optional": true
},
"reportType": {
"type": "string",
"description": "Object type for the report (e.g., 'Account', 'Opportunity')",
"optional": true
},
"includeDetails": {
"type": "boolean",
"description": "Include detailed report metadata (for list operation)",
"optional": true
},
"reportFormat": {
"type": "string",
"enum": [
"json",
"csv",
"excel"
],
"description": "Format for report results",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_rolesManage Salesforce user roles and role hierarchy:
- Create: New roles in the hierarchy
- Update: Modify role details and hierarchy
- Query: List roles and hierarchy structure
- Assign: Assign roles to users
Examples: Create Sales Manager role, Set up role hierarchy, Assign roles to team members
Note: Requires role management permissionsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update",
"query",
"query_hierarchy",
"assign"
],
"description": "Type of role management operation"
},
"roleName": {
"type": "string",
"description": "Name of the role",
"optional": true
},
"username": {
"type": "string",
"description": "Username for role assignment",
"optional": true
},
"roleDetails": {
"type": "object",
"description": "Role configuration details",
"optional": true,
"properties": {
"name": {
"type": "string"
},
"parentRoleName": {
"type": "string",
"optional": true
},
"caseAccessForAccountOwner": {
"type": "string",
"enum": [
"Edit",
"Read",
"None"
],
"optional": true
},
"contactAccessForAccountOwner": {
"type": "string",
"enum": [
"Edit",
"Read",
"None"
],
"optional": true
},
"opportunityAccessForAccountOwner": {
"type": "string",
"enum": [
"Edit",
"Read",
"None"
],
"optional": true
},
"mayForecastManagerShare": {
"type": "boolean",
"optional": true
}
}
},
"filters": {
"type": "object",
"description": "Filters for query operations",
"optional": true,
"properties": {
"parentRole": {
"type": "string",
"optional": true
},
"level": {
"type": "number",
"optional": true
},
"limit": {
"type": "number",
"optional": true
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_sandboxesManage Salesforce sandboxes:
- List: View all sandboxes and their status
- Create: Create new sandbox
- Refresh: Refresh existing sandbox
- Get Status: Check sandbox creation/refresh status
- Get Details: Get detailed sandbox information
Examples: List all sandboxes, Create developer sandbox, Check refresh statusInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"create",
"refresh",
"get_status",
"get_details"
],
"description": "Operation to perform on sandboxes"
},
"sandboxName": {
"type": "string",
"description": "Sandbox name (required for create/refresh/get_details)",
"optional": true
},
"sandboxType": {
"type": "string",
"enum": [
"Developer",
"Developer_Pro",
"Partial_Copy",
"Full"
],
"description": "Type of sandbox to create",
"optional": true
},
"templateId": {
"type": "string",
"description": "Sandbox template ID (for Partial Copy sandboxes)",
"optional": true
},
"description": {
"type": "string",
"description": "Sandbox description",
"optional": true
},
"apexClassId": {
"type": "string",
"description": "Apex class ID for post-copy script",
"optional": true
},
"sourceId": {
"type": "string",
"description": "Source organization ID (for cloning)",
"optional": true
},
"requestId": {
"type": "string",
"description": "Sandbox request ID to check status",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_usersManage Salesforce users - create, update, deactivate users, and reset passwords:
- Create: New users with profiles and roles
- Update: Modify user details, profiles, roles
- Deactivate: Deactivate users safely
- Reset Password: Reset user passwords and send notifications
Examples: Create new sales users, Update user profiles, Deactivate former employees
Note: Requires appropriate user management permissionsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update",
"deactivate",
"reset_password",
"query"
],
"description": "Type of user management operation"
},
"username": {
"type": "string",
"description": "Username (email format, required for update/deactivate/reset)",
"optional": true
},
"userDetails": {
"type": "object",
"description": "User details object for create/update operations",
"optional": true,
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
},
"email": {
"type": "string"
},
"alias": {
"type": "string"
},
"profileId": {
"type": "string"
},
"userRoleId": {
"type": "string",
"optional": true
},
"timeZoneSidKey": {
"type": "string",
"optional": true
},
"localeSidKey": {
"type": "string",
"optional": true
},
"emailEncodingKey": {
"type": "string",
"optional": true
},
"languageLocaleKey": {
"type": "string",
"optional": true
},
"isActive": {
"type": "boolean",
"optional": true
}
}
},
"filters": {
"type": "object",
"description": "Filters for query operation",
"optional": true,
"properties": {
"isActive": {
"type": "boolean",
"optional": true
},
"profileName": {
"type": "string",
"optional": true
},
"lastLoginDate": {
"type": "string",
"optional": true
},
"limit": {
"type": "number",
"optional": true
}
}
},
"sendNotification": {
"type": "boolean",
"description": "Send email notification for password reset",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_manage_workflow_rulesCreate and manage Salesforce Workflow Rules:
- List all workflow rules in the org
- Get workflow rule details including criteria and actions
- View workflow rule execution history
- Activate or deactivate workflow rules
Examples: List all active workflow rules, Get details of Account workflow rulesInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list",
"get_details",
"get_actions",
"execution_history"
],
"description": "Type of workflow rule operation"
},
"objectName": {
"type": "string",
"description": "API name of the object to filter workflow rules",
"optional": true
},
"workflowRuleId": {
"type": "string",
"description": "ID of specific workflow rule",
"optional": true
},
"workflowRuleName": {
"type": "string",
"description": "Name of specific workflow rule",
"optional": true
},
"isActive": {
"type": "boolean",
"description": "Filter by active/inactive status",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_org_limitsCheck Salesforce organization limits and usage:
- API Limits: Daily API call limits and usage
- Storage Limits: Data and file storage limits
- Feature Limits: Custom objects, fields, workflows etc.
- User Limits: Active user count and license limits
Examples: Check API usage, Monitor storage consumption, View custom object limits
Note: Essential for monitoring org health and capacity planningInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"all_limits",
"api_limits",
"storage_limits",
"feature_limits",
"user_limits",
"specific_limit"
],
"description": "Type of limits to check"
},
"limitName": {
"type": "string",
"description": "Specific limit name to check (for specific_limit operation)",
"optional": true
},
"showPercentage": {
"type": "boolean",
"description": "Show usage as percentage (default: true)",
"optional": true
},
"warningThreshold": {
"type": "number",
"description": "Percentage threshold for warnings (default: 80)",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_package_managementManage Salesforce packages and package versions:
- List Packages: View all packages in the org
- List Versions: View versions of a specific package
- Create Version: Create new package version
- Install Package: Install package in org
- Uninstall Package: Remove package from org
- Get Package Details: Get detailed package information
Examples: List all packages, Create new version, Install managed packageInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list_packages",
"list_versions",
"create_version",
"install_package",
"uninstall_package",
"get_details"
],
"description": "Operation to perform on packages"
},
"packageId": {
"type": "string",
"description": "Package ID (0Ho prefix)",
"optional": true
},
"packageVersionId": {
"type": "string",
"description": "Package version ID (04t prefix)",
"optional": true
},
"versionName": {
"type": "string",
"description": "Version name for new package version",
"optional": true
},
"versionNumber": {
"type": "string",
"description": "Version number (e.g., '1.0.0.1')",
"optional": true
},
"description": {
"type": "string",
"description": "Package or version description",
"optional": true
},
"installationKey": {
"type": "string",
"description": "Installation key for protected packages",
"optional": true
},
"skipValidation": {
"type": "boolean",
"description": "Skip validation during package installation",
"optional": true
},
"packageType": {
"type": "string",
"enum": [
"Managed",
"Unlocked"
],
"description": "Filter packages by type",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_performance_monitoringMonitor Salesforce org performance and system health:
- System Performance: Check org performance metrics
- API Usage: Monitor API call limits and usage
- Storage: Check data and file storage usage
- Processing Time: Analyze slow queries and operations
- Concurrent Users: Monitor active user sessions
- Governor Limits: Check current governor limit usage
- Health Check: Overall org health assessment
Examples: Check API limits, Monitor storage usage, Analyze performanceInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"system_performance",
"api_usage",
"storage_usage",
"processing_time",
"user_sessions",
"governor_limits",
"health_check"
],
"description": "Type of performance monitoring to perform"
},
"timeFrame": {
"type": "string",
"enum": [
"last_hour",
"last_24_hours",
"last_week",
"last_month"
],
"description": "Time frame for performance analysis",
"optional": true
},
"includeDetails": {
"type": "boolean",
"description": "Include detailed breakdown of metrics",
"optional": true
},
"threshold": {
"type": "number",
"description": "Performance threshold for alerting (percentage)",
"optional": true
},
"userId": {
"type": "string",
"description": "Specific user ID for user-specific monitoring",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_platform_eventsManage Salesforce Platform Events for real-time integration:
- Publish Events: Send platform events to the event bus
- Subscribe: Listen for platform events (setup guidance)
- Event Definitions: View and manage platform event definitions
- Event Logs: View platform event delivery logs
- Event Volume: Monitor event publishing volume and limits
- Event Replay: View replay settings and capabilities
- CDC Events: Manage Change Data Capture events
Examples: Publish custom event, View event definitions, Monitor event volumeInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"publish_event",
"list_events",
"event_definitions",
"event_logs",
"event_volume",
"replay_settings",
"cdc_events"
],
"description": "Platform events operation to perform"
},
"eventType": {
"type": "string",
"description": "Platform event API name (e.g., 'MyEvent__e')",
"optional": true
},
"eventData": {
"type": "object",
"description": "Event payload data as key-value pairs",
"optional": true
},
"replayId": {
"type": "string",
"description": "Replay ID for event subscription",
"optional": true
},
"channel": {
"type": "string",
"description": "Event channel or topic name",
"optional": true
},
"timeFrame": {
"type": "string",
"enum": [
"last_hour",
"last_24_hours",
"last_week"
],
"description": "Time frame for event analysis",
"optional": true
},
"includeSystemEvents": {
"type": "boolean",
"description": "Include system-generated platform events",
"optional": true
},
"batchSize": {
"type": "number",
"description": "Number of events to publish in batch",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_price_booksManage Salesforce price books, products, and pricing strategies including standard pricing, custom price books, product catalogs, and pricing optimization.Input schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"list_price_books",
"create_price_book",
"manage_products",
"update_pricing",
"pricing_analysis",
"product_catalog",
"price_optimization",
"competitor_pricing",
"discount_analysis",
"revenue_impact"
],
"description": "Price book operation to perform"
},
"priceBookId": {
"type": "string",
"description": "ID of the price book to work with"
},
"productId": {
"type": "string",
"description": "ID of the product to manage"
},
"priceBookName": {
"type": "string",
"description": "Name for new price book"
},
"currency": {
"type": "string",
"description": "Currency code for pricing (e.g., USD, EUR)"
},
"isActive": {
"type": "boolean",
"description": "Whether the price book is active"
},
"pricing": {
"type": "object",
"properties": {
"listPrice": {
"type": "number"
},
"unitPrice": {
"type": "number"
},
"costPrice": {
"type": "number"
}
},
"description": "Pricing information"
},
"filters": {
"type": "object",
"description": "Filters for price book or product queries"
},
"includeInactive": {
"type": "boolean",
"description": "Include inactive price books/products"
},
"analysisType": {
"type": "string",
"enum": [
"margin",
"volume",
"competition",
"trends"
],
"description": "Type of pricing analysis to perform"
},
"dateRange": {
"type": "object",
"properties": {
"startDate": {
"type": "string"
},
"endDate": {
"type": "string"
}
},
"description": "Date range for analysis"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_query_recordsQuery records from any Salesforce object using SOQL, including relationship queries.
NOTE: For queries with GROUP BY, aggregate functions (COUNT, SUM, AVG, etc.), or HAVING clauses, use salesforce_aggregate_query instead.
Examples:
1. Parent-to-child query (e.g., Account with Contacts):
- objectName: "Account"
- fields: ["Name", "(SELECT Id, FirstName, LastName FROM Contacts)"]
2. Child-to-parent query (e.g., Contact with Account details):
- objectName: "Contact"
- fields: ["FirstName", "LastName", "Account.Name", "Account.Industry"]
3. Multiple level query (e.g., Contact -> Account -> Owner):
- objectName: "Contact"
- fields: ["Name", "Account.Name", "Account.Owner.Name"]
4. Related object filtering:
- objectName: "Contact"
- fields: ["Name", "Account.Name"]
- whereClause: "Account.Industry = 'Technology'"
Note: When using relationship fields:
- Use dot notation for parent relationships (e.g., "Account.Name")
- Use subqueries in parentheses for child relationships (e.g., "(SELECT Id FROM Contacts)")
- Custom relationship fields end in "__r" (e.g., "CustomObject__r.Name")Input schema{
"type": "object",
"properties": {
"objectName": {
"type": "string",
"description": "API name of the object to query"
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of fields to retrieve, including relationship fields"
},
"whereClause": {
"type": "string",
"description": "WHERE clause, can include conditions on related objects",
"optional": true
},
"orderBy": {
"type": "string",
"description": "ORDER BY clause, can include fields from related objects",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of records to return",
"optional": true
}
},
"required": [
"objectName",
"fields"
]
} | — | | — |
salesforce_read_apexRead Apex classes from Salesforce.
Examples:
1. Read a specific Apex class by name:
{
"className": "AccountController"
}
2. List all Apex classes with an optional name pattern:
{
"namePattern": "Controller"
}
3. Get metadata about Apex classes:
{
"includeMetadata": true,
"namePattern": "Trigger"
}
4. Use wildcards in name patterns:
{
"namePattern": "Account*Cont*"
}
Notes:
- When className is provided, the full body of that specific class is returned
- When namePattern is provided, all matching class names are returned (without body)
- Use includeMetadata to get additional information like API version, length, and last modified date
- If neither className nor namePattern is provided, all Apex class names will be listed
- Wildcards are supported in namePattern: * (matches any characters) and ? (matches a single character)Input schema{
"type": "object",
"properties": {
"className": {
"type": "string",
"description": "Name of a specific Apex class to read"
},
"namePattern": {
"type": "string",
"description": "Pattern to match Apex class names (supports wildcards * and ?)"
},
"includeMetadata": {
"type": "boolean",
"description": "Whether to include metadata about the Apex classes"
}
}
} | — | | — |
salesforce_read_apex_triggerRead Apex triggers from Salesforce.
Examples:
1. Read a specific Apex trigger by name:
{
"triggerName": "AccountTrigger"
}
2. List all Apex triggers with an optional name pattern:
{
"namePattern": "Account"
}
3. Get metadata about Apex triggers:
{
"includeMetadata": true,
"namePattern": "Contact"
}
4. Use wildcards in name patterns:
{
"namePattern": "Account*"
}
Notes:
- When triggerName is provided, the full body of that specific trigger is returned
- When namePattern is provided, all matching trigger names are returned (without body)
- Use includeMetadata to get additional information like API version, object type, and last modified date
- If neither triggerName nor namePattern is provided, all Apex trigger names will be listed
- Wildcards are supported in namePattern: * (matches any characters) and ? (matches a single character)Input schema{
"type": "object",
"properties": {
"triggerName": {
"type": "string",
"description": "Name of a specific Apex trigger to read"
},
"namePattern": {
"type": "string",
"description": "Pattern to match Apex trigger names (supports wildcards * and ?)"
},
"includeMetadata": {
"type": "boolean",
"description": "Whether to include metadata about the Apex triggers"
}
}
} | — | | — |
salesforce_rest_calloutsManage Salesforce REST API callouts and external integrations:
- Test Callouts: Test REST endpoints from Salesforce
- View Endpoints: List configured remote sites and endpoints
- Callout Logs: View recent callout logs and responses
- Named Credentials: Manage named credentials for authentication
- Connected Apps: View connected app configurations
- Rate Limits: Check callout limits and usage
- Error Analysis: Analyze callout failures and errors
Examples: Test external API, View callout logs, Check rate limitsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"test_callout",
"view_endpoints",
"callout_logs",
"named_credentials",
"connected_apps",
"rate_limits",
"error_analysis"
],
"description": "REST callout operation to perform"
},
"endpoint": {
"type": "string",
"description": "REST endpoint URL for testing",
"optional": true
},
"method": {
"type": "string",
"enum": [
"GET",
"POST",
"PUT",
"DELETE",
"PATCH"
],
"description": "HTTP method for callout testing",
"optional": true
},
"requestBody": {
"type": "string",
"description": "JSON request body for POST/PUT requests",
"optional": true
},
"headers": {
"type": "object",
"description": "Custom headers for the request",
"optional": true
},
"namedCredential": {
"type": "string",
"description": "Named credential to use for authentication",
"optional": true
},
"timeout": {
"type": "number",
"description": "Request timeout in seconds",
"optional": true
},
"timeFrame": {
"type": "string",
"enum": [
"last_hour",
"last_24_hours",
"last_week"
],
"description": "Time frame for log analysis",
"optional": true
},
"includeDetails": {
"type": "boolean",
"description": "Include detailed response/error information",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_scratch_orgsManage Salesforce scratch orgs for development, testing, and CI/CD including creation, source management, and deploymentInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create_scratch_org",
"list_scratch_orgs",
"delete_scratch_org",
"push_source",
"pull_source",
"deploy_metadata",
"run_tests",
"manage_users"
],
"description": "Scratch org operation to perform"
},
"orgName": {
"type": "string",
"description": "Name for the scratch org"
},
"alias": {
"type": "string",
"description": "Alias for the scratch org"
},
"definitionFile": {
"type": "string",
"description": "Path to scratch org definition file"
},
"duration": {
"type": "number",
"description": "Duration for scratch org in days (1-30)"
},
"edition": {
"type": "string",
"enum": [
"Developer",
"Enterprise",
"Group",
"Professional"
],
"description": "Salesforce edition for scratch org"
},
"features": {
"type": "array",
"items": {
"type": "string"
},
"description": "Features to enable in scratch org"
},
"settings": {
"type": "object",
"description": "Org settings configuration"
},
"username": {
"type": "string",
"description": "Username for scratch org operations"
},
"targetOrg": {
"type": "string",
"description": "Target scratch org alias or username"
},
"sourcePath": {
"type": "string",
"description": "Path to source code for deployment"
},
"testLevel": {
"type": "string",
"enum": [
"NoTestRun",
"RunSpecifiedTests",
"RunLocalTests",
"RunAllTestsInOrg"
],
"description": "Test execution level"
},
"testClasses": {
"type": "array",
"items": {
"type": "string"
},
"description": "Specific test classes to run"
},
"metadataTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Metadata types to deploy"
},
"packageName": {
"type": "string",
"description": "Package name for deployment"
},
"userDefinition": {
"type": "object",
"description": "User definition for scratch org user creation",
"properties": {
"Username": {
"type": "string"
},
"Email": {
"type": "string"
},
"LastName": {
"type": "string"
},
"Alias": {
"type": "string"
},
"ProfileName": {
"type": "string"
},
"PermissionSets": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_search_allSearch across multiple Salesforce objects using SOSL (Salesforce Object Search Language).
Examples:
1. Basic search across all objects:
{
"searchTerm": "John",
"objects": [
{ "name": "Account", "fields": ["Name"], "limit": 10 },
{ "name": "Contact", "fields": ["FirstName", "LastName", "Email"] }
]
}
2. Advanced search with filters:
{
"searchTerm": "Cloud*",
"searchIn": "NAME FIELDS",
"objects": [
{
"name": "Account",
"fields": ["Name", "Industry"],
"orderBy": "Name DESC",
"where": "Industry = 'Technology'"
}
],
"withClauses": [
{ "type": "NETWORK", "value": "ALL NETWORKS" },
{ "type": "SNIPPET", "fields": ["Description"] }
]
}
Notes:
- Use * and ? for wildcards in search terms
- Each object can have its own WHERE, ORDER BY, and LIMIT clauses
- Support for WITH clauses: DATA CATEGORY, DIVISION, METADATA, NETWORK, PRICEBOOKID, SNIPPET, SECURITY_ENFORCED
- "updateable" and "viewable" options control record access filteringInput schema{
"type": "object",
"properties": {
"searchTerm": {
"type": "string",
"description": "Text to search for (supports wildcards * and ?)"
},
"searchIn": {
"type": "string",
"enum": [
"ALL FIELDS",
"NAME FIELDS",
"EMAIL FIELDS",
"PHONE FIELDS",
"SIDEBAR FIELDS"
],
"description": "Which fields to search in",
"optional": true
},
"objects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "API name of the object"
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to return for this object"
},
"where": {
"type": "string",
"description": "WHERE clause for this object",
"optional": true
},
"orderBy": {
"type": "string",
"description": "ORDER BY clause for this object",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of records to return for this object",
"optional": true
}
},
"required": [
"name",
"fields"
]
},
"description": "List of objects to search and their return fields"
},
"withClauses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"DATA CATEGORY",
"DIVISION",
"METADATA",
"NETWORK",
"PRICEBOOKID",
"SNIPPET",
"SECURITY_ENFORCED"
]
},
"value": {
"type": "string",
"description": "Value for the WITH clause",
"optional": true
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields for SNIPPET clause",
"optional": true
}
},
"required": [
"type"
]
},
"description": "Additional WITH clauses for the search",
"optional": true
},
"updateable": {
"type": "boolean",
"description": "Return only updateable records",
"optional": true
},
"viewable": {
"type": "boolean",
"description": "Return only viewable records",
"optional": true
}
},
"required": [
"searchTerm",
"objects"
]
} | — | | — |
salesforce_search_objectsSearch for Salesforce standard and custom objects by name pattern. Examples: 'Account' will find Account, AccountHistory; 'Order' will find WorkOrder, ServiceOrder__c etc.Input schema{
"type": "object",
"properties": {
"searchPattern": {
"type": "string",
"description": "Search pattern to find objects (e.g., 'Account Coverage' will find objects like 'AccountCoverage__c')"
}
},
"required": [
"searchPattern"
]
} | — | | — |
salesforce_send_emailsSend individual or mass emails with templates through Salesforce:
- Send single emails to specific recipients
- Send mass emails using templates
- Use email templates with merge fields
- Track email delivery and opens
- Send emails from specific users or org-wide addresses
Examples: Send welcome email to new customers, Mass email to all leadsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"send_single",
"send_mass",
"get_templates",
"track_emails"
],
"description": "Type of email operation"
},
"recipientIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of Contact, Lead, or User IDs to send emails to",
"optional": true
},
"recipientEmails": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of email addresses for external recipients",
"optional": true
},
"templateId": {
"type": "string",
"description": "ID of email template to use",
"optional": true
},
"templateName": {
"type": "string",
"description": "Name of email template to use",
"optional": true
},
"subject": {
"type": "string",
"description": "Email subject (if not using template)",
"optional": true
},
"htmlBody": {
"type": "string",
"description": "HTML body of the email (if not using template)",
"optional": true
},
"textBody": {
"type": "string",
"description": "Plain text body of the email (if not using template)",
"optional": true
},
"senderUserId": {
"type": "string",
"description": "ID of user to send email from",
"optional": true
},
"orgWideEmailId": {
"type": "string",
"description": "ID of org-wide email address to use",
"optional": true
},
"saveAsActivity": {
"type": "boolean",
"description": "Whether to save as activity on related records",
"optional": true
},
"whatIds": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of record IDs to relate the email to",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_soap_calloutsManage SOAP web service callouts in Salesforce including WSDL parsing, class generation, and secure calloutsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"make_soap_call",
"generate_soap_classes",
"parse_wsdl",
"soap_headers",
"soap_fault_handling",
"soap_security"
],
"description": "Operation to perform for SOAP callouts"
},
"wsdlUrl": {
"type": "string",
"description": "URL of the WSDL to consume"
},
"serviceName": {
"type": "string",
"description": "Name of the SOAP service"
},
"operationName": {
"type": "string",
"description": "Name of the SOAP operation to call"
},
"soapBody": {
"type": "string",
"description": "SOAP body XML for the request"
},
"soapHeaders": {
"type": "object",
"description": "SOAP headers to include in the request"
},
"endpoint": {
"type": "string",
"description": "SOAP endpoint URL"
},
"timeout": {
"type": "number",
"description": "Timeout for the SOAP call in milliseconds"
},
"username": {
"type": "string",
"description": "Username for SOAP authentication"
},
"password": {
"type": "string",
"description": "Password for SOAP authentication"
},
"certificateName": {
"type": "string",
"description": "Name of the certificate for client authentication"
},
"apexClassName": {
"type": "string",
"description": "Name for generated Apex class"
},
"namespace": {
"type": "string",
"description": "Namespace for the generated classes"
},
"generateTests": {
"type": "boolean",
"description": "Whether to generate test classes"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_static_analysisPerform static analysis on Salesforce code, flows, and configurations for quality, security, and performance issuesInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"analyze_apex",
"analyze_flows",
"security_scan",
"performance_analysis",
"dependency_analysis",
"code_metrics"
],
"description": "Type of static analysis to perform"
},
"targetType": {
"type": "string",
"enum": [
"apex_class",
"apex_trigger",
"flow",
"validation_rule",
"workflow",
"all"
],
"description": "Type of metadata to analyze"
},
"className": {
"type": "string",
"description": "Specific Apex class name to analyze"
},
"triggerName": {
"type": "string",
"description": "Specific Apex trigger name to analyze"
},
"flowName": {
"type": "string",
"description": "Specific Flow name to analyze"
},
"analysisType": {
"type": "string",
"enum": [
"complexity",
"security",
"performance",
"maintainability",
"all"
],
"description": "Type of analysis to perform"
},
"includeTests": {
"type": "boolean",
"description": "Include test classes in analysis"
},
"includeInactive": {
"type": "boolean",
"description": "Include inactive components in analysis"
},
"severityLevel": {
"type": "string",
"enum": [
"info",
"warning",
"error",
"critical"
],
"description": "Minimum severity level to report"
},
"outputFormat": {
"type": "string",
"enum": [
"summary",
"detailed",
"csv",
"json"
],
"description": "Format for analysis output"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_streaming_apiManage Salesforce Streaming API including PushTopics, Change Data Capture, Platform Events, and Generic EventsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"subscribe_pushTopics",
"create_pushTopic",
"list_pushTopics",
"delete_pushTopic",
"cdc_subscribe",
"platform_events",
"generic_events",
"replay_events"
],
"description": "Streaming API operation to perform"
},
"topicName": {
"type": "string",
"description": "Name of the PushTopic"
},
"soqlQuery": {
"type": "string",
"description": "SOQL query for the PushTopic"
},
"notifyForFields": {
"type": "string",
"enum": [
"All",
"Referenced",
"Select",
"Where"
],
"description": "Which fields trigger notifications"
},
"notifyForOperations": {
"type": "string",
"enum": [
"Create",
"Update",
"Delete",
"Undelete"
],
"description": "Which operations trigger notifications"
},
"description": {
"type": "string",
"description": "Description of the PushTopic"
},
"channel": {
"type": "string",
"description": "Streaming channel to subscribe to"
},
"replayId": {
"type": "number",
"description": "Replay ID for event replay"
},
"batchSize": {
"type": "number",
"description": "Batch size for streaming events"
},
"eventType": {
"type": "string",
"description": "Type of platform event"
},
"objectName": {
"type": "string",
"description": "Object name for Change Data Capture"
},
"changeType": {
"type": "string",
"enum": [
"ALL",
"CREATE",
"UPDATE",
"DELETE",
"UNDELETE"
],
"description": "Type of changes to capture"
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": "Fields to monitor for changes"
},
"timespan": {
"type": "number",
"description": "Timespan for event replay in hours"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_territory_managementManage Salesforce Territory Management 2.0:
- View Territories: List territory hierarchy and structure
- Manage Users: Assign/remove users from territories
- Territory Rules: View and manage territory assignment rules
- Account Assignment: Manage account-territory assignments
- Performance: View territory performance metrics
- Settings: Configure territory model settings
- Forecasting: Territory-based forecast management
Examples: View territory structure, Assign users to territories, Check account assignmentsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"view_territories",
"manage_users",
"territory_rules",
"account_assignment",
"performance_metrics",
"model_settings",
"forecasting"
],
"description": "Territory management operation to perform"
},
"territoryId": {
"type": "string",
"description": "Territory ID for specific operations",
"optional": true
},
"userId": {
"type": "string",
"description": "User ID for user assignment operations",
"optional": true
},
"accountId": {
"type": "string",
"description": "Account ID for assignment operations",
"optional": true
},
"territoryName": {
"type": "string",
"description": "Territory name for search/filter operations",
"optional": true
},
"userRole": {
"type": "string",
"enum": [
"Territory_User",
"Territory_Manager",
"Territory_Owner"
],
"description": "User role in territory",
"optional": true
},
"assignmentType": {
"type": "string",
"enum": [
"manual",
"rule_based",
"inherited"
],
"description": "Type of territory assignment",
"optional": true
},
"includeInactive": {
"type": "boolean",
"description": "Include inactive territories/assignments",
"optional": true
},
"timeFrame": {
"type": "string",
"enum": [
"current_quarter",
"last_quarter",
"current_year",
"last_year"
],
"description": "Time frame for performance metrics",
"optional": true
},
"limit": {
"type": "number",
"description": "Maximum number of results to return",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_test_executionExecute Apex tests and view code coverage in Salesforce:
- Run Tests: Execute specific test classes or all tests
- View Coverage: Get code coverage reports for classes
- Test Results: View detailed test execution results
- Run Specific: Run tests for specific classes or methods
Examples: Run all tests, Check coverage for AccountService class, Run specific test methodInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"run_tests",
"view_coverage",
"test_results",
"run_specific"
],
"description": "Type of test operation to perform"
},
"testLevel": {
"type": "string",
"enum": [
"RunLocalTests",
"RunAllTestsInOrg",
"RunSpecifiedTests"
],
"description": "Level of tests to run (for run_tests operation)",
"optional": true
},
"testClasses": {
"type": "array",
"items": {
"type": "string"
},
"description": "Specific test classes to run (for RunSpecifiedTests)",
"optional": true
},
"className": {
"type": "string",
"description": "Specific class name for coverage or results",
"optional": true
},
"testId": {
"type": "string",
"description": "Specific test run ID to view results",
"optional": true
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_usage_analyticsAnalyze Salesforce org usage patterns, user adoption metrics, feature utilization, and system performance analytics to optimize org efficiency and user experience.Input schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"user_adoption",
"feature_usage",
"login_patterns",
"performance_metrics",
"storage_analysis",
"license_utilization",
"app_usage",
"report_usage",
"dashboard_usage",
"api_consumption"
],
"description": "Type of usage analytics to generate"
},
"timeframe": {
"type": "string",
"enum": [
"today",
"week",
"month",
"quarter",
"year"
],
"description": "Time period for analysis"
},
"userId": {
"type": "string",
"description": "Specific user ID for individual analysis"
},
"includeInactive": {
"type": "boolean",
"description": "Include inactive users in analysis"
},
"groupBy": {
"type": "string",
"enum": [
"user",
"profile",
"role",
"department",
"license"
],
"description": "How to group the analytics data"
},
"threshold": {
"type": "number",
"description": "Threshold for usage metrics (e.g., minimum logins)"
},
"exportFormat": {
"type": "string",
"enum": [
"summary",
"detailed",
"csv"
],
"description": "Format for the analytics output"
},
"includeRecommendations": {
"type": "boolean",
"description": "Include optimization recommendations"
}
},
"required": [
"operation"
]
} | — | | — |
salesforce_view_automation_statusMonitor the status and performance of Salesforce automation:
- Running Processes: View currently running processes and flows
- Failed Processes: View failed automation with error details
- Performance Stats: Get automation performance statistics
- Queue Status: Check automation queue depth and processing times
Examples: Check failed flows today, View running approval processes, Monitor automation queueInput schema{
"type": "object",
"properties": {
"viewType": {
"type": "string",
"enum": [
"running_processes",
"failed_processes",
"performance_stats",
"queue_status",
"all"
],
"description": "Type of automation status to view"
},
"timeRange": {
"type": "string",
"enum": [
"last_hour",
"today",
"last_24_hours",
"last_7_days",
"last_30_days"
],
"description": "Time range for the status view",
"optional": true
},
"objectName": {
"type": "string",
"description": "Filter by specific object (optional)",
"optional": true
}
},
"required": [
"viewType"
]
} | — | | — |
salesforce_view_user_permissionsView effective permissions for Salesforce users:
- Check user's profile permissions
- List assigned permission sets
- View object and field-level permissions
- Analyze effective permissions from all sources
Examples: Check user's object permissions, View all permissions for a specific user
Note: Provides comprehensive permission analysisInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"user_summary",
"object_permissions",
"field_permissions",
"system_permissions",
"all_permissions"
],
"description": "Type of permission analysis to perform"
},
"username": {
"type": "string",
"description": "Username to analyze permissions for"
},
"objectName": {
"type": "string",
"description": "Specific object to check permissions for (required for object_permissions and field_permissions)",
"optional": true
},
"fieldName": {
"type": "string",
"description": "Specific field to check permissions for (required for field_permissions)",
"optional": true
}
},
"required": [
"operation",
"username"
]
} | — | | — |
salesforce_write_apexCreate or update Apex classes in Salesforce.
Examples:
1. Create a new Apex class:
{
"operation": "create",
"className": "AccountService",
"apiVersion": "58.0",
"body": "public class AccountService { public static void updateAccounts() { /* implementation */ } }"
}
2. Update an existing Apex class:
{
"operation": "update",
"className": "AccountService",
"body": "public class AccountService { public static void updateAccounts() { /* updated implementation */ } }"
}
Notes:
- The operation must be either 'create' or 'update'
- For 'create' operations, className and body are required
- For 'update' operations, className and body are required
- apiVersion is optional for 'create' (defaults to the latest version)
- The body must be valid Apex code
- The className in the body must match the className parameter
- Status information is returned after successful operationsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update"
],
"description": "Whether to create a new class or update an existing one"
},
"className": {
"type": "string",
"description": "Name of the Apex class to create or update"
},
"apiVersion": {
"type": "string",
"description": "API version for the Apex class (e.g., '58.0')"
},
"body": {
"type": "string",
"description": "Full body of the Apex class"
}
},
"required": [
"operation",
"className",
"body"
]
} | — | | — |
salesforce_write_apex_triggerCreate or update Apex triggers in Salesforce.
Examples:
1. Create a new Apex trigger:
{
"operation": "create",
"triggerName": "AccountTrigger",
"objectName": "Account",
"apiVersion": "58.0",
"body": "trigger AccountTrigger on Account (before insert, before update) { /* implementation */ }"
}
2. Update an existing Apex trigger:
{
"operation": "update",
"triggerName": "AccountTrigger",
"body": "trigger AccountTrigger on Account (before insert, before update, after update) { /* updated implementation */ }"
}
Notes:
- The operation must be either 'create' or 'update'
- For 'create' operations, triggerName, objectName, and body are required
- For 'update' operations, triggerName and body are required
- apiVersion is optional for 'create' (defaults to the latest version)
- The body must be valid Apex trigger code
- The triggerName in the body must match the triggerName parameter
- The objectName in the body must match the objectName parameter (for 'create')
- Status information is returned after successful operationsInput schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"create",
"update"
],
"description": "Whether to create a new trigger or update an existing one"
},
"triggerName": {
"type": "string",
"description": "Name of the Apex trigger to create or update"
},
"objectName": {
"type": "string",
"description": "Name of the Salesforce object the trigger is for (required for 'create')"
},
"apiVersion": {
"type": "string",
"description": "API version for the Apex trigger (e.g., '58.0')"
},
"body": {
"type": "string",
"description": "Full body of the Apex trigger"
}
},
"required": [
"operation",
"triggerName",
"body"
]
} | — | | — |