home / mcp / salesforce einstein mcp server

Salesforce Einstein MCP Server

Provides a read-only MCP server that enables LLMs to query live Salesforce Einstein data via a JDBC driver.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "cdatasoftware-salesforce-einstein-mcp-server-by-cdata": {
      "command": "java",
      "args": [
        "-jar",
        "/PATH/TO/CDataMCP-jar-with-dependencies.jar",
        "/PATH/TO/salesforce-einstein.prp"
      ]
    }
  }
}

This MCP server provides a read-only interface to Salesforce Einstein data via the CData JDBC driver. It lets you ask natural-language questions and receive live data without writing SQL, while keeping underlying permissions and data access controlled through Salesforce Einstein connections.

How to use

You interact with this server through an MCP client. The server exposes read-only data from Salesforce Einstein and supports querying tables, inspecting columns, and running SELECT-like queries via built-in tools. You can ask your AI assistant questions such as about opportunities, accounts, or events, and the assistant will use the MCP tools to fetch the relevant data.

The available tools are designed to be invoked implicitly by your AI client. You can retrieve a list of accessible tables, examine the columns of a table, and execute read-only queries. The server handles translating your natural-language requests into the appropriate data access actions behind the scenes.

How to install

Prerequisites: make sure you have Java and Maven installed on your machine.

1. Clone the project and build the MCP server JAR.

git clone https://github.com/cdatasoftware/salesforce-einstein-mcp-server-by-cdata.git
cd salesforce-einstein-mcp-server-by-cdata
mvn clean install

2. Obtain and install the CData JDBC Driver for Salesforce Einstein. Follow the driver’s download page and install it on your system. This enables the MCP server to access Salesforce Einstein through the JDBC bridge.

3. License the CData JDBC Driver. Open a terminal in the installation directory and run the license command, then provide your name, email, and a license key (or TRIAL).

4. Configure the connection to Salesforce Einstein. Run the Connection String utility to generate and test the JDBC URL, then copy the resulting connection string for later use.

5. Create a .prp file for the JDBC connection. Use the example below as a template and fill in your values. This file configures the MCP server to connect to Salesforce Einstein through the CData JDBC Driver.

Prefix=
ServerName=CData
ServerVersion=1.0
DriverPath=PATH\\TO\\cdata.jdbc..jar
DriverClass=cdata.jdbc..Driver
JdbcUrl=jdbc::InitiateOAuth=GETANDREFRESH;
Tables=

Run the MCP server

Start the MCP server on its own machine by running the following command. This uses stdio so the server runs on the same host as your client.

java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prp

Configuration notes

You can configure your Claude Desktop client (or any MCP client) to load the server by adding an entry that runs the MCP JAR with the PRP file. The client will locate the server in its MCP servers list and direct queries accordingly.

Troubleshooting

If you cannot see or connect to the MCP server, ensure you fully quit and restart your MCP client. Verify the PRP file path and the Java command are correct. If the client cannot retrieve data, confirm the JDBC connection string was generated and tested successfully. If you encounter driver or connection issues, contact the CData Support Team.

For broader issues or feedback, consider engaging with the CData Community.

Available tools

einstein_get_tables

Retrieves a list of tables available in the data source. CSV output with the first line containing column headers.

einstein_get_columns

Retrieves a list of columns for a table. CSV output with the first line containing column headers.

einstein_run_query

Executes a SQL SELECT query against the Salesforce Einstein data.