home / mcp / salesforce marketing mcp server
Provides a read-only MCP server that exposes live Salesforce Marketing data for querying via MCP clients.
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.
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.
# 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.jar3) 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=java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prpNote: 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.
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.
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.
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.
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.
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.
Retrieves the list of columns for a specified table. The output is provided in CSV format with column headers on the first line.
Executes a SQL SELECT query against the configured Salesforce Marketing data source and returns the result set.