Salesforce Data Cloud Mcp Server By Cdata

Salesforce Data Cloud Mcp Server By Cdata

🚀 CData的Salesforce Data Cloud MCP服务器

CData的Salesforce Data Cloud模型上下文协议(MCP)服务器,可实现大语言模型对Salesforce Data Cloud实时数据的查询。

⚠️ 重要提示

此项目构建的是一个只读的MCP服务器。如需完整的读、写、更新、删除和操作功能,以及更简化的设置,请查看我们免费的CData MCP Server for Salesforce Data Cloud (beta)

🚀 快速开始

目的

我们创建这个只读的MCP服务器,是为了让大语言模型(如Claude Desktop)能够查询由CData JDBC Driver for Salesforce Data Cloud支持的Salesforce Data Cloud实时数据。

CData JDBC驱动程序通过将Salesforce Data Cloud数据以关系型SQL模型的形式暴露出来,从而实现与之的连接。该服务器对该驱动程序进行了封装,并通过简单的MCP接口使Salesforce Data Cloud数据可用,因此大语言模型可以通过自然语言问题检索实时信息,无需使用SQL。

安装指南

  1. 克隆仓库
    git clone https://github.com/cdatasoftware/salesforce-data-cloud-mcp-server-by-cdata.git
    cd salesforce-data-cloud-mcp-server-by-cdata
    
  2. 构建服务器
    mvn clean install
    
    这将创建JAR文件:CDataMCP-jar-with-dependencies.jar
  3. 下载并安装CData JDBC驱动程序https://www.cdata.com/drivers/salesforcedc/download/jdbc
  4. 为CData JDBC驱动程序授权
    • 导航到安装目录中的lib文件夹,通常路径如下:
      • (Windows)C:\Program Files\CData\CData JDBC Driver for Salesforce Data Cloud\
      • (Mac/Linux)/Applications/CData JDBC Driver for Salesforce Data Cloud/
    • 运行命令java -jar cdata.jdbc.salesforcedatacloud.jar --license
    • 输入您的姓名、电子邮件和“TRIAL”(或您的许可证密钥)。
  5. 配置与数据源的连接(以Salesforce为例)
    • 运行命令java -jar cdata.jdbc.salesforcedatacloud.jar以打开连接字符串实用程序。
    • 配置连接字符串并点击“测试连接”。

    ⚠️ 重要提示

    如果数据源使用OAuth,您需要在浏览器中进行身份验证。

    • 连接成功后,复制连接字符串以备后续使用。
  6. 创建JDBC连接的.prp文件(例如salesforce-data-cloud.prp,使用以下属性和格式:
    • Prefix - 用于公开工具的前缀
    • ServerName - 服务器的名称
    • ServerVersion - 服务器的版本
    • DriverPath - JDBC驱动程序JAR文件的完整路径
    • DriverClass - JDBC驱动程序类的名称(例如cdata.jdbc.salesforcedatacloud.SalesforceDataCloudDriver
    • JdbcUrl - 用于与CData JDBC驱动程序连接到数据的JDBC连接字符串(从上面复制)
    • Tables - 留空以访问所有数据,否则您可以明确声明要创建访问权限的表
    Prefix=salesforcedatacloud
    ServerName=CDataSalesforceDataCloud
    ServerVersion=1.0
    DriverPath=PATH\TO\cdata.jdbc.salesforcedatacloud.jar
    DriverClass=cdata.jdbc.salesforcedatacloud.SalesforceDataCloudDriver
    JdbcUrl=jdbc:salesforcedatacloud:InitiateOAuth=GETANDREFRESH;
    Tables=
    

使用服务器与Claude Desktop

  1. 创建Claude Desktop的配置文件(claude_desktop_config.json,以添加新的MCP服务器,使用以下格式。如果文件已经存在,请将条目添加到配置文件的mcpServers中。
    • Windows
    {
    "mcpServers": {
    "{classname_dash}": {
    "command": "PATH\\TO\\java.exe",
    "args": [
    "-jar",
    "PATH\\TO\\CDataMCP-jar-with-dependencies.jar",
    "PATH\\TO\\salesforce-data-cloud.prp"
    ]
    },
    ...
    }
    }
    
    • Linux/Mac
    {
    "mcpServers": {
    "{classname_dash}": {
    "command": "/PATH/TO/java",
    "args": [
    "-jar",
    "/PATH/TO/CDataMCP-jar-with-dependencies.jar",
    "/PATH/TO/salesforce-data-cloud.prp"
    ]
    },
    ...
    }
    }
    
    如果需要,将配置文件复制到适当的目录(以Claude Desktop为例)。
    • Windows
    cp C:\PATH\TO\claude_desktop_config.json %APPDATA%\Claude\claude_desktop_config.json
    
    • Linux/Mac
    cp /PATH/TO/claude_desktop_config.json /Users/{user}/Library/Application\ Support/Claude/claude_desktop_config.json
    
  2. 运行或刷新您的客户端(Claude Desktop)

⚠️ 重要提示

您可能需要完全退出Claude Desktop客户端并重新打开,MCP服务器才会显示。

运行服务器

运行以下命令以独立运行MCP服务器:

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

⚠️ 重要提示

服务器使用stdio,因此只能与在同一台机器上运行的客户端一起使用。

💻 使用示例

基础用法

MCP服务器配置完成后,AI客户端将能够使用内置工具对底层数据进行读、写、更新和删除操作。一般来说,您无需显式调用这些工具,只需让客户端回答有关底层数据系统的问题即可。例如:

  • "我的成交机会与客户行业之间的相关性是什么?"
  • "我的SUPPORT项目中有多少未解决的工单?"
  • "你能告诉我今天有哪些日历事件吗?"

工具及描述

在以下定义中,{servername} 指的是配置文件中MCP服务器的名称(例如上面的{classname_dash})。

  • {servername}_get_tables - 检索数据源中可用表的列表。使用{servername}_get_columns工具列出表上可用的列。该工具的输出将以CSV格式返回,第一行包含列标题。
  • {servername}_get_columns - 检索表的列列表。使用{servername}_get_tables工具获取可用表的列表。该工具的输出将以CSV格式返回,第一行包含列标题。
  • {servername}_run_query - 执行SQL SELECT查询

JSON - RPC请求示例

如果您不使用AI客户端(如Claude),而是通过脚本向MCP服务器发送请求,那么在调用可用工具时,您可以参考以下遵循JSON - RPC 2.0规范的JSON有效负载示例。

source_get_tables

{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "source_get_tables",
"arguments": {}
}
}

source_get_columns

{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "source_get_columns",
"arguments": {
"table":  "Account"
}
}
}

source_run_query

{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "source_run_query",
"arguments": {
"sql":  "SELECT * FROM [Account] WHERE [IsDeleted] = true"
}
}
}

📚 详细文档

故障排除

  1. 如果在Claude Desktop中看不到您的CData MCP服务器,请确保您已完全退出Claude Desktop(Windows:使用任务管理器,Mac:使用活动监视器)。
  2. 如果Claude Desktop无法检索数据,请确保您已正确配置连接。使用连接字符串构建器创建连接字符串(见上文),并将连接字符串复制到属性(.prp)文件中。
  3. 如果您在连接数据源时遇到问题,请联系CData支持团队
  4. 如果您在使用MCP服务器时遇到问题,或有任何其他反馈,请加入CData社区

许可证

此MCP服务器根据MIT许可证授权。这意味着您可以自由使用、修改和分发该软件,但需遵守MIT许可证的条款和条件。有关更多详细信息,请参阅项目仓库中的LICENSE文件。

所有支持的数据源

数据源 数据源 数据源 数据源
Access Act CRM Act - On Active Directory
ActiveCampaign Acumatica Adobe Analytics Adobe Commerce
ADP Airtable AlloyDB Amazon Athena
Amazon DynamoDB Amazon Marketplace Amazon S3 Asana
Authorize.Net Avalara AvaTax Avro Azure Active Directory
Azure Analysis Services Azure Data Catalog Azure Data Lake Storage Azure DevOps
Azure Synapse Azure Table Basecamp BigCommerce
BigQuery Bing Ads Bing Search Bitbucket
Blackbaud FE NXT Box Bullhorn CRM Cassandra
Certinia Cloudant CockroachDB Confluence
Cosmos DB Couchbase CouchDB CSV
Cvent Databricks DB2 DocuSign
Dropbox Dynamics 365 Dynamics 365 Business Central Dynamics CRM
Dynamics GP Dynamics NAV eBay eBay Analytics
Elasticsearch Email EnterpriseDB Epicor Kinetic
Exact Online Excel Excel Online Facebook
Facebook Ads FHIR Freshdesk FTP
GitHub Gmail Google Ad Manager Google Ads
Google Analytics Google Calendar Google Campaign Manager 360 Google Cloud Storage
Google Contacts Google Data Catalog Google Directory Google Drive
Google Search Google Sheets Google Spanner GraphQL
Greenhouse Greenplum HarperDB HBase
HCL Domino HDFS Highrise Hive
HubDB HubSpot IBM Cloud Data Engine IBM Cloud Object Storage
IBM Informix Impala Instagram JDBC - ODBC Bridge
Jira Jira Assets Jira Service Management JSON
Kafka Kintone LDAP LinkedIn
LinkedIn Ads MailChimp MariaDB Marketo
MarkLogic Microsoft Dataverse Microsoft Entra ID Microsoft Exchange
Microsoft OneDrive Microsoft Planner Microsoft Project Microsoft Teams
Monday.com MongoDB MYOB AccountRight MySQL
nCino Neo4J NetSuite OData
Odoo Office 365 Okta OneNote
Oracle Oracle Eloqua Oracle Financials Cloud Oracle HCM Cloud
Oracle Sales Oracle SCM Oracle Service Cloud Outreach.io
Parquet Paylocity PayPal Phoenix
PingOne Pinterest Pipedrive PostgreSQL
Power BI XMLA Presto Quickbase QuickBooks
QuickBooks Online QuickBooks Time Raisers Edge NXT Reckon
Reckon Accounts Hosted Redis Redshift REST
RSS Sage 200 Sage 300 Sage 50 UK
Sage Cloud Accounting Sage Intacct Salesforce Salesforce Data Cloud
Salesforce Financial Service Cloud Salesforce Marketing Salesforce Marketing Cloud Account Engagement Salesforce Pardot
Salesloft SAP SAP Ariba Procurement SAP Ariba Source
SAP Business One SAP BusinessObjects BI SAP ByDesign SAP Concur
SAP Fieldglass SAP HANA SAP HANA XS Advanced SAP Hybris C4C
SAP Netweaver Gateway SAP SuccessFactors SAS Data Sets SAS xpt
SendGrid ServiceNow SFTP SharePoint
SharePoint Excel Services ShipStation Shopify SingleStore
Slack Smartsheet Snapchat Ads Snowflake
Spark Splunk SQL Analysis Services SQL Server
Square Stripe Sugar CRM SuiteCRM
SurveyMonkey Sybase Sybase IQ Tableau CRM Analytics
Tally TaxJar Teradata Tier1
TigerGraph Trello Trino Twilio
Twitter Twitter Ads Veeva CRM Veeva Vault
Wave Financial WooCommerce WordPress Workday
xBase Xero XML YouTube Analytics
Zendesk Zoho Books Zoho Creator Zoho CRM
Zoho Inventory Zoho Projects Zuora 更多...
  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-23 17:39

相似服务问题