home / mcp / salesforce mcp server

Salesforce MCP Server

Provides an MCP server that enables Claude to query, modify, and manage Salesforce data and metadata using natural language.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "priyapanigrahy-mcp-salesforce-sse": {
      "command": "npx",
      "args": [
        "-y",
        "@tsmztech/mcp-server-salesforce"
      ],
      "env": {
        "SALESFORCE_TOKEN": "your_security_token",
        "SALESFORCE_PASSWORD": "your_password",
        "SALESFORCE_USERNAME": "your_username",
        "SALESFORCE_CLIENT_ID": "your_client_id",
        "SALESFORCE_INSTANCE_URL": "org_url",
        "SALESFORCE_CLIENT_SECRET": "your_client_secret",
        "SALESFORCE_CONNECTION_TYPE": "User_Password"
      }
    }
  }
}

You can run a Salesforce MCP Server to let Claude interact with your Salesforce data and metadata using natural language. This server translates your questions and commands into Salesforce operations, enabling you to search objects, describe schemas, run queries, manipulate data, manage Apex code, and handle debugging logs with intuitive prompts.

How to use

Launch the Salesforce MCP Server and connect it to Claude through your MCP client. Create natural language prompts to explore Salesforce objects, fetch field details, perform searches across multiple objects, run both simple and aggregate queries, insert, update, delete, and upsert records, and manage Apex code or debug logs. You can also run cross-object searches and manage field-level security as part of routine data operations.

How to install

Prerequisites: ensure you have Node.js and npm installed on your system.

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

Additional setup and usage notes

Authentication options include Username/Password with a security token or OAuth 2.0 Client Credentials. When using OAuth, you must provide the exact Salesforce instance URL. Here are the available environment configurations you use with Claude Desktop to start the MCP server.

{
  "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"        // Optional. Default value: https://login.salesforce.com
      }
    }
  }
}

Security and permissions

By default, Field Level Security is granted to the System Administrator when you create or modify fields. You can use the grantAccessTo parameter to assign permissions to other profiles as needed. Always verify permissions after making changes to sensitive fields like account or opportunity data.

Examples of common tasks

Use natural language prompts to perform these tasks: search for objects, describe object schemas, query accounts and related contacts, aggregate opportunities by stage, create or update custom objects and fields, manage Apex classes and triggers, execute anonymous Apex, and configure or retrieve debug logs.

How to start after configuring

Run the MCP server command through your MCP client using the configuration snippet above. The server will expose endpoints to Claude for object discovery, schema details, data queries, DML operations, Apex code management, and debugging log handling.

Available tools

salesforce_search_objects

Search standard and custom Salesforce objects by partial name matches and across multiple object types.

salesforce_describe_object

Describe an object's schema in detail, including fields, relationships, and picklist values.

salesforce_query_records

Query records with support for parent/child and child/parent relationships and complex filters.

salesforce_aggregate_query

Execute GROUP BY queries with aggregate functions like COUNT, SUM, AVG, etc.

salesforce_dml_records

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

salesforce_manage_object

Create and modify custom objects and their properties, including sharing settings.

salesforce_manage_field

Add or modify fields, including creating relationships and configuring picklists.

salesforce_manage_field_permissions

Manage field-level security by granting or revoking access for profiles.

salesforce_search_all

Cross-object search using SOSL with field snippets.

salesforce_read_apex

Read Apex classes and related metadata, with wildcard support for name patterns.

salesforce_write_apex

Create or update Apex classes, including API version specification.

salesforce_read_apex_trigger

Read Apex triggers and metadata, with wildcard support for names.

salesforce_write_apex_trigger

Create or modify Apex triggers and their event operations.

salesforce_execute_anonymous

Execute anonymous Apex code and view debug logs/results.

salesforce_manage_debug_logs

Enable, disable, and retrieve debug logs for Salesforce users with configurable levels.