Install
$ agentstack add mcp-aiondadotcom-mcp-salesforce β scanned Β· β verified β works with Claude Code, Cursor, and more.
Security review
β PassedNo issues found. Passed automated security review. Β· v0.1.0 How review works β
- β Prompt-injection patterns
- β Secret / credential exfiltration
- β Dangerous shell & filesystem operations
- β Untrusted network calls
- β Known-malicious package signatures
What it can access
- β Network access No
- β Filesystem access No
- β Shell / process execution No
- β Environment & secrets No
- β Dynamic code execution No
From automated source analysis of v0.1.0. βUsedβ means the capability is present in the source β more access means more to trust, not that itβs unsafe.
About
MCP Salesforce Server
[](https://github.com/AiondaDotCom/mcp-salesforce/actions/workflows/ci.yml)
A Model Context Protocol (MCP) server that provides seamless integration with Salesforce using OAuth authentication. This server enables AI assistants like Claude to interact with any Salesforce organization through a secure, generic interface.
β¨ Features
- π― Seamless Authentication - Claude automatically detects when authentication is needed and handles it transparently
- π Zero Manual Setup - No need to run terminal commands or manual OAuth flows
- π OAuth-Only Authentication - Secure browser-based setup with automatic token refresh
- π Universal Salesforce Integration - Works with any Salesforce org, including custom objects and fields
- π§ Smart Installation Learning - Analyzes your complete Salesforce setup to provide intelligent assistance
- π Dynamic Schema Discovery - Automatically adapts to your Salesforce configuration
- π Secure Token Storage - File-based storage with strict permissions for production-grade security
- π Cross-Platform Home Directory Storage - Credentials and cache stored in user's home directory
- π Full CRUD Operations - Query, create, update, and delete any Salesforce records
- π Schema Inspection - Get detailed information about objects and fields
- π‘ Context-Aware Suggestions - Provides intelligent field and object name suggestions
- πΎ Comprehensive Backup System - Complete data and file backup with support for all Salesforce file systems
- β° Time Machine Feature - Point-in-time data recovery and historical analysis
- π Multi-Format File Support - Backs up ContentVersions, Attachments, and Documents with proper metadata
π Quick Start
Prerequisites
- Node.js 18+
- macOS (required for secure credential storage)
- Salesforce Connected App with OAuth configured
Installation Options
π― Recommended: NPX Usage (No Installation Required)
Use NPX to run the MCP server without any permanent installation:
{
"mcpServers": {
"salesforce": {
"command": "npx",
"args": ["@aiondadotcom/mcp-salesforce"]
}
}
}
β Benefits of NPX Usage:
- π Always Latest: Automatically uses the latest published version
- πΎ No Disk Space: No permanent installation required
- π‘οΈ No Conflicts: No global package conflicts
- β‘ Easy Updates: Just restart - gets latest version automatically
- π Simple Config: Copy-paste ready MCP configuration
NPX Command Line Usage:
# Get version
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --version
# Get help
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --help
# Run OAuth setup
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce setup
π§ Alternative: Development Setup
For development or customization:
- Clone and install dependencies:
``bash git clone https://github.com/AiondaDotCom/mcp-salesforce.git cd mcp-salesforce npm install ``
- Configure credentials: Use the
salesforce_setuptool to configure your credentials when prompted
- Add to Claude Desktop using local path (see [Configuration](#configuration) below)
π― Start Using
That's it! Claude will automatically handle setup and authentication when you first use any Salesforce tool.
β¨ Interactive Setup Process!
- Use the
salesforce_setuptool to configure your credentials - Claude will ask you for your Salesforce Connected App details
- Credentials are stored securely in your home directory
- Seamless OAuth flow directly from Claude Desktop
π§ Smart Learning System
- Use
salesforce_learnto analyze your complete Salesforce installation - Claude learns all your custom objects, fields, and relationships
- Provides intelligent suggestions based on your specific setup
- Context-aware assistance for complex Salesforce environments
π¦ NPM Package Status
β Package Successfully Published!
The package @aiondadotcom/mcp-salesforce is now live on NPM and ready for use.
Using the Published Package
NPX usage is now available for all users:
# Test the published package
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --version
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --help
# Run OAuth setup
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce setup
Publication Details
- Package Name:
@aiondadotcom/mcp-salesforce - Version:
1.0.7(latest) - Registry: NPM Public Registry
- Organization:
@aiondadotcom - Access: Public
Status:
- β Package published to NPM
- β NPX compatibility verified
- β Binary wrapper implemented
- β Setup command functional
- β MCP configuration ready
- β Available for immediate use
π All NPX functionality now works for end users worldwide!
π§ Configuration
Salesforce Connected App Setup
- In Salesforce Setup, create a new Connected App:
- App Name: MCP Salesforce Integration
- API Name: mcpsalesforceintegration
- Contact Email: Your email
- Enable OAuth Settings: β Yes
- Callback URL:
http://localhost:9876/callback
> Port 9876 was chosen deliberately to avoid conflicts with common development servers (8080, 8000, 3000) and well-known services.
- Selected OAuth Scopes:
- Manage user data via APIs (api)
- Perform requests at any time (refreshtoken, offlineaccess)
- After saving, copy the Consumer Key and Consumer Secret
Credential Configuration
Configure your credentials using the salesforce_setup tool when you first use the application:
- Interactive Setup: Claude will prompt you for your Salesforce credentials
- Client ID: Your Salesforce Connected App Consumer Key
- Client Secret: Your Salesforce Connected App Consumer Secret
- Instance URL: Your Salesforce organization URL (e.g.,
https://mycompany.salesforce.com)
The tool will validate your input and store credentials securely in ~/.mcp-salesforce.json with restricted permissions (600).
π File Locations:
- Credentials:
~/.mcp-salesforce.json(contains OAuth tokens and credentials) - Cache:
~/.mcp-salesforce-cache/(contains learned Salesforce schema and context) - Cross-Platform: Works on Windows, macOS, and Linux
Example interaction:
Claude: I need to set up your Salesforce credentials first. Please use the salesforce_setup tool with your credentials.
You: Use the salesforce_setup tool with clientId: "3MVG9...", clientSecret: "1234567890...", instanceUrl: "https://mycompany.salesforce.com"
Claude: β
Salesforce credentials configured successfully! You can now use other Salesforce tools.
Claude Desktop Integration
π― NPX Configuration (Recommended)
Add this to your Claude Desktop MCP configuration (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"salesforce": {
"command": "npx",
"args": ["@aiondadotcom/mcp-salesforce"]
}
}
}
π§ Development/Local Configuration
For development or customized installations:
{
"mcpServers": {
"salesforce": {
"command": "node",
"args": ["/path/to/mcp-salesforce/src/index.js"]
}
}
}
π VS Code MCP Configuration
For VS Code with MCP extension:
{
"servers": {
"salesforce": {
"command": "npx",
"args": ["@aiondadotcom/mcp-salesforce"]
}
}
}
πΈ Demo Screenshots
Here's a step-by-step walkthrough of the MCP Salesforce Server in action, showing a real-world use case of verifying and updating company address information:
Step 1: Address Verification Request
Claude checking if the Aionda GmbH account in Salesforce has the correct address by comparing it with their current website address
Step 2: Address Comparison Results
Claude identifying that the Salesforce address is outdated, showing detailed comparison between the current Salesforce data and the actual address from the company website
Step 3: Automated Address Update
Claude successfully updating the Salesforce account with the correct current address, showing exactly which fields were changed
Step 4: Verification in Salesforce
The updated account record in Salesforce showing the corrected address information is now accurate and up-to-date
π οΈ Available Tools
salesforce_learn
π§ Learns your complete Salesforce installation - Analyzes all objects, fields and customizations once and stores this information locally for intelligent assistance.
// One-time analysis of the Salesforce installation
{}
// Force complete re-analysis
{
"force_refresh": true,
"detailed_relationships": true
}
Why important?
- Claude learns your Custom Objects like "TimeTracking__c", "Project__c", etc.
- Recognizes all Custom Fields and their data types
- Provides intelligent suggestions based on your specific configuration
- Run once, then the AI benefits from it permanently
salesforce_installation_info
π Overview of your learned Salesforce installation - Shows available objects, Custom Fields and customizations.
// Complete overview of the installation
{}
// Details about a specific object
{
"object_name": "TimeTracking__c"
}
// Search for specific fields
{
"field_search": "email",
"show_custom_only": true
}
salesforce_query
Execute SOQL queries against any Salesforce object.
// Example: Get recent contacts
{
"query": "SELECT Id, FirstName, LastName, Email FROM Contact WHERE CreatedDate = THIS_MONTH ORDER BY CreatedDate DESC LIMIT 10"
}
π§ Smart Learning Integration:
- Automatically warns when installation has not been learned yet
- Suggests available objects and fields
- Helps with correct API names
salesforce_create
Create new records in any Salesforce object.
// Example: Create a new contact
{
"sobject": "Contact",
"data": {
"FirstName": "John",
"LastName": "Doe",
"Email": "john.doe@example.com",
"Phone": "555-1234"
}
}
π§ Smart Context: Automatically shows required fields for the selected object when the installation has been learned.
salesforce_update
Update existing records.
// Example: Update a contact's email
{
"sobject": "Contact",
"id": "003XX000008b6cYAQ",
"data": {
"Email": "new.email@example.com",
"Phone": "555-5678"
}
}
π§ Smart Context: Considers field permissions and data types from the learned installation.
salesforce_delete
Delete records (β οΈ permanent action).
// Example: Delete a record
{
"sobject": "Contact",
"id": "003XX000008b6cYAQ"
}
salesforce_describe
Get schema information for objects and fields.
// Example: Get Contact object schema
{
"sobject": "Contact"
}
// Or get list of all available objects
{} // Empty parameters
salesforce_backup
πΎ Comprehensive Backup System for Salesforce - Creates complete backups of all data and files with detailed recovery information.
// Create complete backup
{}
// Incremental backup since specific date
{
"backup_type": "incremental",
"since_date": "2025-01-01T00:00:00Z"
}
// Backup with specific options
{
"options": {
"include_files": true,
"include_attachments": true,
"include_documents": true,
"parallel_downloads": 10
}
}
What is backed up:
- π All Object Data - All queryable objects with up to 20 fields per object
- π Modern Files - ContentVersions with complete metadata
- π Legacy Attachments - Classic attachments with correct file extensions
- π Documents - Folder-based documents from the legacy system
- ποΈ Schema Information - Complete object structures and relationships
- π Backup Manifest - Detailed statistics and recovery information
Backup Structure:
salesforce-backup-2025-06-04T16-16-35-660Z/
βββ metadata/ # Schema and object definitions
βββ data/ # JSON data of all objects
βββ files/
β βββ content-versions/ # Modern files
β βββ attachments/ # Legacy attachments
β βββ documents/ # Legacy documents
βββ backup-manifest.json # Backup overview
salesforce_backup_list
π Show Available Backups - Overview of all local backups with statistics and metadata.
// List all available backups
{}
// Details about a specific backup
{
"backup_name": "salesforce-backup-2025-06-04T16-16-35-660Z"
}
salesforce_time_machine
β° Time Travel Through Salesforce Data - Analyzes data changes between different backup time points and enables targeted recovery.
// Compare current state with a backup
{
"backup_timestamp": "2025-06-04T16:16:35.660Z",
"object_name": "Account"
}
// Show all changes since a specific backup
{
"backup_timestamp": "2025-06-04T16:16:35.660Z",
"show_all_changes": true
}
// Detailed analysis for specific records
{
"backup_timestamp": "2025-06-04T16:16:35.660Z",
"object_name": "Contact",
"record_id": "003XX000008b6cYAQ"
}
Time Machine Features:
- π Data Comparison - Shows differences between backup and current state
- π Change History - Which fields were changed when
- ποΈ Deleted Records - Finds records that were deleted since the backup
- π Growth Analysis - Statistical evaluation of data development
- π― Targeted Recovery - Precise identification of changes
salesforce_auth
Authenticate with Salesforce. Automatically detects if authentication is needed and handles OAuth flow.
// Example: Standard authentication (detects if needed)
{}
// Example: Force re-authentication even if tokens appear valid
{
"force": true
}
β¨ Key Features:
- Automatic Detection: Claude automatically suggests this tool when authentication is needed
- No Manual Setup: Eliminates the need to run
npm run setupmanually - Smart Authentication: Only authenticates when necessary, checks existing tokens first
- Seamless Integration: Works transparently in the background
This tool is automatically suggested when:
- You try to use Salesforce tools without authentication
- Your tokens have expired
- Authentication errors occur
- First-time setup is needed
π§ Smart Learning System
Why is Learning Important?
Every Salesforce installation is unique with:
- Custom Objects like "TimeTracking__c", "Project__c", "CustomerCare__c"
- Custom Fields on standard objects
- Specific Workflows and validation rules
- Individual Data Structures
The AI's normal training model only knows standard Salesforce objects. Without knowledge of your specific installation, the AI cannot provide intelligent assistance.
How Does Learning Work?
- One-time Analysis:
salesforce_learnanalyzes your complete installation - Local Documentation: All objects, fields and relationships are stored locally
- Intelligent Support: Claude can then make precise suggestions and answer complex questions
Example Workflow:
You: "Are there any time tracking entries for July 2025?"
Without Learning:
β Claude: "I don't know any object called 'TimeTracking'"
With Learning:
β
Claude: "I'm checking the 'TimeTracking__c' object for entries from July 2025..."
Automatically executes the correct SOQL query
When Should You Use Learning?
- During initial setup - Once after installation
- After major changes - When new Custom Objects are added
- When having problems - When Claude doesn't find objects or fields
What is Learned?
- All SObjects (Standard and Custom)
- All Fields with data types and permissions
- Relationships between objects
- Picklist Values and validation rules
- Required Fields for better vali
β¦
Source & license
This open-source MCP server is cataloged on AgentStack and links to its original source β we do not rehost the code.
- Author: AiondaDotCom
- Source: AiondaDotCom/mcp-salesforce
- License: BSD-2-Clause
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet β be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.