home / mcp / salesforce marketing mcp server

Salesforce Marketing MCP Server

Provides a read-only MCP server that exposes live Salesforce Marketing data for querying via MCP clients.

Installation
Add the following to your MCP client configuration file.

Configuration

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

You can use this MCP server to query live Salesforce Marketing data through a read-only MCP interface. It exposes Salesforce Marketing data via a JDBC driver and lets you ask natural-language questions to retrieve up-to-date information without writing SQL.

How to use

After you configure and start the MCP server, you interact with it through an MCP client. You can ask questions about Salesforce Marketing data such as opportunities, tickets, events, or any other data exposed by the connected source. The client will use built‑in MCP tools to fetch tables, inspect columns, and run queries under the hood. You do not need to issue SQL yourself; you simply ask questions and let the client retrieve the relevant data.

How to install

# prerequisites
- Java (JDK 11+)
- Maven

# 1) Clone the project
git clone https://github.com/cdatasoftware/salesforce-marketing-mcp-server-by-cdata.git
cd salesforce-marketing-mcp-server-by-cdata

# 2) Build the server
mvn clean install

# This creates the JAR: CDataMCP-jar-with-dependencies.jar

3) Obtain and install the CData JDBC Driver for Salesforce Marketing from the driver download page. Follow the installation steps provided by the driver package. License the driver when prompted by running the licensing command from the driver's lib directory. You will typically provide your name, email, and a license key (TRIAL for evaluation).

4) Configure your JDBC connection. Run the connection string utility to build and test the connection string, then copy it for the next step. If OAuth is used, authenticate in your browser during testing.

5) Create a configuration file for the JDBC connection. Save it as a .prp file (for example, salesforce-marketing.prp) with these properties set to your environment: Prefix, ServerName, ServerVersion, DriverPath, DriverClass, JdbcUrl, Tables. The JDBC URL is copied from the connection test.

6) Example .prp content (adjust paths to your environment):

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

Starting the server

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

Note: The server runs over stdio, so it is intended for use with clients on the same machine. Use the start command above to launch the MCP server with your Salesforce.prp configuration.

Usage notes

Once configured, your MCP client can leverage built‑in tools to read data from Salesforce Marketing. You can ask questions that trigger the following capabilities: retrieve table lists, inspect columns, and execute read queries against the data source. The client handles invoking the appropriate tools behind the scenes, so you don’t manually call each tool.

Troubleshooting

If you cannot see the CData MCP Server in your MCP client, completely quit the client and restart it. If the client cannot retrieve data, verify that the JDBC connection string is correctly configured and test it again. Ensure the JDBC driver is licensed and properly installed. If you continue to have issues with the MCP server, contact CData Support or the CData Community for assistance.

Tools & Descriptions

The MCP server exposes a few core tools that you can invoke through your MCP client. Each tool returns data in CSV format for easy consumption.

Json-RPC and client usage guidance

You interact with the server through your MCP client by asking questions rather than issuing raw JSON-RPC requests. The client translates your questions into the appropriate tool calls under the hood.

Available tools

salesforce_marketing_get_tables

Retrieves the list of available tables in the Salesforce Marketing data source. The output is provided in CSV format with column headers on the first line.

salesforce_marketing_get_columns

Retrieves the list of columns for a specified table. The output is provided in CSV format with column headers on the first line.

salesforce_marketing_run_query

Executes a SQL SELECT query against the configured Salesforce Marketing data source and returns the result set.