Salesforce MCP Server

Salesforce MCP Server

Enables Claude to interact with Salesforce for querying, modifying, and managing objects and records, with automatic integration setup for external services like WhatsApp, Slack, email, and webhooks.

Category
Visit Server

README

Salesforce MCP Server - Enhanced Edition

An enhanced MCP (Model Context Protocol) server implementation that integrates Claude with Salesforce, featuring automatic external API integrations. This server allows Claude to query, modify, and manage your Salesforce objects and records, plus automatically set up integrations with external services like WhatsApp, Slack, email, and custom webhooks.

🆕 NEW FEATURES - Integration Management

🔗 Automatic Integration Setup

Create integrations that automatically trigger when Salesforce records are created, updated, or deleted:

  • WhatsApp notifications when new leads are created
  • Slack alerts for opportunity updates
  • Email notifications for new cases
  • Custom webhooks for any object/event combination

âš¡ Quick Setup Templates

Pre-built integration templates for common scenarios:

  • whatsapp_lead - WhatsApp notifications for new leads
  • slack_opportunity - Slack alerts for opportunities
  • email_case - Email notifications for support cases
  • webhook_custom - Generic webhook for any use case

Original Features

  • Object and Field Management: Create and modify custom objects and fields using natural language
  • Smart Object Search: Find Salesforce objects using partial name matches
  • Detailed Schema Information: Get comprehensive field and relationship details for any object
  • Flexible Data Queries: Query records with relationship support and complex filters
  • Data Manipulation: Insert, update, delete, and upsert records with ease
  • Cross-Object Search: Search across multiple objects using SOSL
  • Apex Code Management: Read, create, and update Apex classes and triggers
  • Intuitive Error Handling: Clear feedback with Salesforce-specific error details

Installation

npm install -g @tsmztech/mcp-server-salesforce

🆕 New Integration Tools

salesforce_manage_integrations

Complete integration management:

  • Create new integrations with external APIs
  • List all configured integrations
  • Update integration settings
  • Activate/deactivate integrations
  • Delete integrations

salesforce_quick_setup_integration

Quick setup for common integration scenarios:

  • WhatsApp Business API integration
  • Slack webhook integration
  • Email service integration
  • Custom webhook integration

Integration Examples

📱 WhatsApp Lead Notifications

"Set up WhatsApp notifications when new leads are created"

Quick setup with:
- Type: whatsapp_lead
- Object: Lead
- WhatsApp API token: your_token
- Phone number: +1234567890
- Message: "🔔 New lead: {Name} from {Company} - Rating: {Rating}"

💬 Slack Opportunity Alerts

"Create Slack alerts for opportunity updates"

Quick setup with:
- Type: slack_opportunity  
- Object: Opportunity
- Slack webhook URL: your_webhook_url
- Channel: #sales
- Message: "💰 {Name} - ${Amount} - Stage: {StageName}"

📧 Email Case Notifications

"Send email notifications for new support cases"

Quick setup with:
- Type: email_case
- Object: Case  
- Email API endpoint: your_email_service
- Message: "New case #{CaseNumber} from {Contact.Name}"

🎯 Custom Webhook Integration

"Create custom webhook for account updates"

Setup with:
- Type: webhook_custom
- Object: Account
- Webhook URL: https://your-system.com/webhook
- Events: insert, update
- Condition: "Type = 'Customer'"

How Integration Works

  1. Setup: Use quick setup or manual configuration
  2. Automatic Creation:
    • Creates Integration_Config__c custom object to store settings
    • Generates Apex trigger for your target object
    • Creates IntegrationCalloutService utility class
  3. Runtime: When records match your criteria, automatic callouts are made
  4. Management: Full control to activate, deactivate, update, or delete integrations

Original Tools

salesforce_search_objects

Search for standard and custom objects by partial name matches.

salesforce_describe_object

Get detailed object schema information including fields, relationships, and picklist values.

salesforce_query_records

Query records with relationship support and complex WHERE conditions.

salesforce_aggregate_query

Execute aggregate queries with GROUP BY, aggregate functions, and HAVING clauses.

salesforce_dml_records

Perform data operations: insert, update, delete, and upsert records.

salesforce_manage_object

Create and modify custom objects with sharing settings.

salesforce_manage_field

Manage object fields including relationships and automatically grant Field Level Security.

salesforce_manage_field_permissions

Manage Field Level Security (Field Permissions) for specific profiles.

salesforce_search_all

Search across multiple objects using SOSL with field snippets.

salesforce_read_apex / salesforce_write_apex

Read and manage Apex classes with full source code access.

salesforce_read_apex_trigger / salesforce_write_apex_trigger

Read and manage Apex triggers for any object.

salesforce_execute_anonymous

Execute anonymous Apex code for custom operations.

salesforce_manage_debug_logs

Manage debug logs for Salesforce users with configurable log levels.

Setup

Salesforce Authentication

You can connect to Salesforce using one of two authentication methods:

1. Username/Password Authentication (Default)

  1. Set up your Salesforce credentials
  2. Get your security token (Reset from Salesforce Settings)

2. OAuth 2.0 Client Credentials Flow

  1. Create a Connected App in Salesforce
  2. Enable OAuth settings and select "Client Credentials Flow"
  3. Set appropriate scopes (typically "api" is sufficient)
  4. Save the Client ID and Client Secret
  5. Important: Note your instance URL (e.g., https://your-domain.my.salesforce.com) as it's required for authentication

Usage with Claude Desktop

Add to your claude_desktop_config.json:

For Username/Password Authentication:

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["-y", "@tsmztech/mcp-server-salesforce"],
      "env": {
        "SALESFORCE_CONNECTION_TYPE": "User_Password",
        "SALESFORCE_USERNAME": "your_username",
        "SALESFORCE_PASSWORD": "your_password",
        "SALESFORCE_TOKEN": "your_security_token",
        "SALESFORCE_INSTANCE_URL": "org_url"
      }
    }
  }
}

For OAuth 2.0 Client Credentials Flow:

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["-y", "@tsmztech/mcp-server-salesforce"],
      "env": {
        "SALESFORCE_CONNECTION_TYPE": "OAuth_2.0_Client_Credentials",
        "SALESFORCE_CLIENT_ID": "your_client_id",
        "SALESFORCE_CLIENT_SECRET": "your_client_secret",
        "SALESFORCE_INSTANCE_URL": "https://your-domain.my.salesforce.com"
      }
    }
  }
}

🆕 Integration Usage Examples

Quick Integration Setup

"Set up WhatsApp notifications for hot leads"
"Create Slack alerts when opportunities exceed $50k" 
"Send email notifications for high-priority cases"
"Configure webhook for account updates"

Managing Integrations

"List all my integrations"
"Deactivate the WhatsApp lead integration"
"Update the Slack webhook URL"
"Delete the old email integration"

Advanced Integration Configuration

"Create custom integration for Contact updates that sends data to my CRM webhook when the lead score changes"
"Set up WhatsApp notifications only for leads with rating 'Hot' from specific lead sources"

Traditional Usage Examples

Searching Objects

"Find all objects related to Accounts"
"Show me objects that handle customer service"
"What objects are available for order management?"

Getting Schema Information

"What fields are available in the Account object?"
"Show me the picklist values for Case Status"
"Describe the relationship fields in Opportunity"

Querying Records

"Get all Accounts created this month"
"Show me high-priority Cases with their related Contacts"
"Find all Opportunities over $100k"

Managing Custom Objects

"Create a Customer Feedback object"
"Add a Rating field to the Feedback object"
"Update sharing settings for the Service Request object"

Development

Building from source

# Clone your fork
git clone https://github.com/chetyz/Mcp_Salesforce.git

# Navigate to directory
cd Mcp_Salesforce

# Install dependencies
npm install

# Build the project
npm run build

Contributing

Contributions are welcome! Feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Issues and Support

If you encounter any issues or need support, please file an issue on the GitHub repository.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured