1.2.5npm · @aiondadotcom/mcp-salesforce · current release
Observed 2026-08-15T15:29:46.134Z using mcpSecurity-inventory. Status: succeeded. Negotiated protocol: 2025-06-18.
{
"tools": {}
}| Tool | Category | Annotations | Risk |
|---|---|---|---|
salesforce_authAuthenticate with Salesforce. Automatically detects if authentication is needed and handles OAuth flow. Call this tool if any Salesforce operations fail due to authentication issues.Input schema{
"type": "object",
"properties": {
"force": {
"type": "boolean",
"description": "Force re-authentication even if current tokens appear valid",
"default": false
}
},
"additionalProperties": false
} | — | — · — | — |
salesforce_backupStart comprehensive backups of Salesforce data including all file attachments. Runs asynchronously in background - returns immediately with job ID. Check progress with salesforce_backup_status.Input schema{
"type": "object",
"properties": {
"backup_type": {
"type": "string",
"enum": [
"full",
"incremental",
"files_only"
],
"description": "Type of backup to perform: 'full' backs up everything, 'incremental' backs up changes since a date, 'files_only' backs up just attachments",
"default": "incremental"
},
"include_files": {
"type": "boolean",
"description": "Include modern Files (ContentDocument/ContentVersion) in backup",
"default": true
},
"include_attachments": {
"type": "boolean",
"description": "Include legacy Attachment files in backup",
"default": true
},
"include_documents": {
"type": "boolean",
"description": "Include Document object files in backup",
"default": true
},
"objects_filter": {
"type": "array",
"items": {
"type": "string"
},
"description": "Specific objects to backup (empty array = all objects). Example: ['Account', 'Contact', 'CustomObject__c']",
"default": []
},
"since_date": {
"type": "string",
"description": "ISO date for incremental backup - only backup records modified after this date. Format: YYYY-MM-DDTHH:mm:ss.sssZ",
"default": null
},
"compression": {
"type": "boolean",
"description": "Compress backup files with gzip to save space",
"default": false
},
"parallel_downloads": {
"type": "number",
"description": "Number of parallel file downloads (1-10). Higher values = faster but more API usage",
"default": 5,
"minimum": 1,
"maximum": 10
}
}
} | — | — · — | — |
salesforce_backup_listList all available Salesforce backups with their details including timestamp, duration, file counts, and sizesInput schema{
"type": "object",
"properties": {}
} | — | — · — | — |
salesforce_backup_statusCheck the status of Salesforce backup jobs. Monitor running, completed, or failed backup operations. Use without parameters to see all jobs, or specify a job_id to get detailed status of a specific backup job.Input schema{
"type": "object",
"properties": {
"job_id": {
"type": "string",
"description": "Optional: Specific backup job ID to check status for. If not provided, shows status of all backup jobs."
}
}
} | — | — · — | — |
salesforce_createCreate a new record in any Salesforce object. Automatically handles required fields validation.Input schema{
"type": "object",
"properties": {
"sobject": {
"type": "string",
"description": "SObject API name (e.g., 'Contact', 'Account', 'CustomObject__c'). Use exact API names."
},
"data": {
"type": "object",
"description": "Field values for the new record. Use API field names as keys (e.g., {'FirstName': 'John', 'LastName': 'Doe', 'Email': 'john@example.com'})"
}
},
"required": [
"sobject",
"data"
]
} | — | — · — | — |
salesforce_deleteDelete a record from any Salesforce object. This action is permanent and cannot be undone.Input schema{
"type": "object",
"properties": {
"sobject": {
"type": "string",
"description": "SObject API name (e.g., 'Contact', 'Account', 'CustomObject__c')"
},
"id": {
"type": "string",
"description": "Salesforce record ID to delete (15 or 18 character ID)"
}
},
"required": [
"sobject",
"id"
]
} | — | — · — | — |
salesforce_describeGet detailed schema information for any Salesforce object, including all fields, data types, and permissions.Input schema{
"type": "object",
"properties": {
"sobject": {
"type": "string",
"description": "SObject API name to describe (e.g., 'Contact', 'Account', 'CustomObject__c'). Leave empty to get list of all available objects."
}
},
"required": []
} | — | — · — | — |
salesforce_installation_infoReturns comprehensive information about the learned Salesforce installation, including all object details, field specifications, relationships, permissions, and customizations from the learned installation data.Input schema{
"type": "object",
"properties": {
"object_name": {
"type": "string",
"description": "Specific object for detailed information (optional). Example: 'Account', 'Contact', 'CustomObject__c'"
},
"field_search": {
"type": "string",
"description": "Search for fields with this name or label (optional)"
},
"show_custom_only": {
"type": "boolean",
"description": "Show only custom objects and custom fields",
"default": false
},
"include_relationships": {
"type": "boolean",
"description": "Include relationship information between objects",
"default": true
},
"detailed_fields": {
"type": "boolean",
"description": "Show detailed field information including data types, constraints, and metadata",
"default": true
},
"include_permissions": {
"type": "boolean",
"description": "Include detailed permission information for objects and fields",
"default": true
},
"max_fields_per_object": {
"type": "number",
"description": "Maximum number of fields to show per object (default: all fields)",
"default": 0
}
}
} | — | — · — | — |
salesforce_learnAnalyzes the complete Salesforce installation and creates local documentation of all objects, fields, and customizations. This should be run once after initial setup to enable intelligent assistance.Input schema{
"type": "object",
"properties": {
"force_refresh": {
"type": "boolean",
"description": "Forces a complete re-analysis even if documentation already exists",
"default": false
},
"include_unused": {
"type": "boolean",
"description": "Includes unused/inactive fields and objects in the documentation",
"default": false
},
"detailed_relationships": {
"type": "boolean",
"description": "Analyzes detailed relationships between objects",
"default": true
}
}
} | — | — · — | — |
salesforce_learn_contextLearn and store personal/business context about the user and their Salesforce data model relationships. This helps provide better context-aware assistance across sessions. PROACTIVELY CAPTURE AHA MOMENTS: Whenever you discover something important about the user's workflow, business processes, preferences, challenges, or breakthrough insights during conversations, automatically use store_learning to preserve this knowledge. Look for moments when the user reveals key information, expresses frustration, shares successful strategies, or has realizations - these are valuable learnings that should be stored immediately.Input schema{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"start_interview",
"answer_question",
"show_context",
"reset_context",
"suggest_questions",
"quick_setup",
"store_learning"
],
"description": "Action to perform: start_interview (begin learning), answer_question (provide answers), show_context (display stored context), reset_context (clear all), suggest_questions (get intelligent questions based on data model), quick_setup (explain everything in one go), store_learning (AUTOMATICALLY capture breakthrough insights, aha moments, user preferences, workflow patterns, pain points, or any valuable context discovered during conversation)"
},
"question_id": {
"type": "string",
"description": "ID of the question being answered (when action is 'answer_question')"
},
"answer": {
"type": "string",
"description": "Answer to the question (when action is 'answer_question')"
},
"context_type": {
"type": "string",
"description": "Type of context to focus on (for show_context and suggest_questions). Can be any section name like 'personal', 'business', 'data_model', 'technical_preferences', etc., or 'all' for everything",
"default": "all"
},
"full_name": {
"type": "string",
"description": "Your full name (for quick_setup)"
},
"email": {
"type": "string",
"description": "Your email address (for quick_setup)"
},
"role": {
"type": "string",
"description": "Your professional role/position (for quick_setup)"
},
"company_name": {
"type": "string",
"description": "Your company name (for quick_setup)"
},
"industry": {
"type": "string",
"description": "Your company's industry (for quick_setup)"
},
"business_process_description": {
"type": "string",
"description": "Complete description of your business processes, how you use Salesforce, what you do, etc. (for quick_setup)"
},
"section": {
"type": "string",
"description": "Context section to store the learning in (for store_learning). Use descriptive names that capture the nature of the insight: 'aha_moments' for breakthrough realizations, 'pain_points' for challenges discovered, 'workflow_insights' for process discoveries, 'preferences' for user likes/dislikes, 'success_patterns' for what works well, 'technical_discoveries' for system insights, etc. Will be created dynamically if it doesn't exist."
},
"key": {
"type": "string",
"description": "Key name for the learning (for store_learning). Use specific, descriptive names that capture the insight: 'critical_realization_about_X', 'main_frustration_with_Y', 'breakthrough_solution_for_Z', 'preferred_approach_to_A', 'discovered_workflow_pattern_B', etc. Be specific about what was learned."
},
"value": {
"type": "string",
"description": "Value/content of the learning (for store_learning)"
},
"overwrite": {
"type": "boolean",
"description": "Whether to overwrite existing values for the same key (for store_learning). Default: false",
"default": false
}
},
"required": [
"action"
]
} | — | — · — | — |
salesforce_queryExecute SOQL queries against any Salesforce object. Supports SELECT, WHERE, ORDER BY, LIMIT, and other SOQL features.Input schema{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "SOQL query string (e.g., 'SELECT Id, Name FROM Account WHERE Industry = \\'Technology\\' LIMIT 10'). Use proper SOQL syntax with single quotes for string literals."
}
},
"required": [
"query"
]
} | — | — · — | — |
salesforce_setupConfigure Salesforce credentials (Client ID, Client Secret, Instance URL)Input schema{
"type": "object",
"properties": {
"clientId": {
"type": "string",
"description": "Salesforce Connected App Client ID (Consumer Key)"
},
"clientSecret": {
"type": "string",
"description": "Salesforce Connected App Client Secret (Consumer Secret)"
},
"instanceUrl": {
"type": "string",
"description": "Salesforce Instance URL (e.g., https://mycompany.salesforce.com)"
}
},
"required": [
"clientId",
"clientSecret",
"instanceUrl"
]
} | — | — · — | — |
salesforce_time_machine_queryQuery historical Salesforce data from backups using Time Machine functionality. Supports point-in-time queries, comparisons, and record history tracking.Input schema{
"type": "object",
"properties": {
"operation": {
"type": "string",
"enum": [
"query_at_point_in_time",
"compare_over_time",
"get_record_history",
"list_backups"
],
"description": "The Time Machine operation to perform"
},
"targetDate": {
"type": "string",
"description": "Target date for point-in-time queries (ISO 8601 format)"
},
"startDate": {
"type": "string",
"description": "Start date for comparison queries (ISO 8601 format)"
},
"endDate": {
"type": "string",
"description": "End date for comparison queries (ISO 8601 format)"
},
"objectType": {
"type": "string",
"description": "Salesforce object type to query (e.g., Account, Contact, ContentVersion)"
},
"recordId": {
"type": "string",
"description": "Specific record ID for history tracking"
},
"filters": {
"type": "object",
"description": "Optional filters to apply to the query (field-value pairs, supports wildcards with *)"
},
"backupDirectory": {
"type": "string",
"description": "Path to backup directory (defaults to ./backups)"
}
},
"required": [
"operation"
]
} | — | — · — | — |
salesforce_updateUpdate an existing record in any Salesforce object. Requires the record ID and field values to update.Input schema{
"type": "object",
"properties": {
"sobject": {
"type": "string",
"description": "SObject API name (e.g., 'Contact', 'Account', 'CustomObject__c')"
},
"id": {
"type": "string",
"description": "Salesforce record ID (15 or 18 character ID)"
},
"data": {
"type": "object",
"description": "Field values to update. Only include fields you want to change (e.g., {'Email': 'newemail@example.com', 'Phone': '555-1234'})"
}
},
"required": [
"sobject",
"id",
"data"
]
} | — | — · — | — |