返回市场
企业数据库MCP服务器由cdata提供

企业数据库MCP服务器由cdata提供

作者:CDataSoftware0 星标更新:2025-08-06

项目介绍

enterprisedb-mcp-server-by-cdata

CData 的 Model Context Protocol (MCP) 服务器用于 EnterpriseDB

:heavy_exclamation_mark: 本项目构建了一个只读的 MCP 服务器。如需完整的读取、写入、更新、删除及操作功能以及简化设置,请参阅我们的免费 CData MCP 服务器 for EnterpriseDB(测试版)

目的

我们创建了这个只读 MCP 服务器,以允许大型语言模型(如 Claude Desktop)通过 CData JDBC 驱动程序 for EnterpriseDB 查询实时数据。

CData JDBC 驱动程序通过暴露它们作为关系 SQL 模型来连接到 EnterpriseDB。

此服务器封装了该驱动程序,并通过简单的 MCP 接口使 EnterpriseDB 数据可用,因此大型语言模型可以通过提出自然语言问题来检索实时信息——无需 SQL。

安装指南

  1. 克隆仓库:
    git clone https://github.com/cdatasoftware/enterprisedb-mcp-server-by-cdata.git
    cd enterprisedb-mcp-server-by-cdata
    
  2. 构建服务器:
    mvn clean install
    
    这会生成 JAR 文件:CDataMCP-jar-with-dependencies.jar
  3. 下载并安装 CData JDBC 驱动程序 for {source}: https://www.cdata.com/drivers/enterprisedb/download/jdbc
  4. 许可 CData JDBC 驱动程序:
    • 导航到安装目录中的 lib 文件夹,通常位于:
      • (Windows) C:\Program Files\CData\CData JDBC Driver for EnterpriseDB\
      • (Mac/Linux) /Applications/CData JDBC Driver for EnterpriseDB/
    • 运行命令 java -jar cdata.jdbc.enterprisedb.jar --license
    • 输入您的姓名、电子邮件和“TRIAL”(或您的许可证密钥)。
  5. 配置与数据源的连接(以 Salesforce 为例):
    • 运行命令 java -jar cdata.jdbc.enterprisedb.jar 打开连接字符串工具。

      <img src="https://github.com/user-attachments/assets/a5b5237b-79c1-472c-8c2f-3f9eb1ac9627" title="CData JDBC 驱动程序连接字符串工具。" width=384px />
    • 配置连接字符串并点击“测试连接”

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

    • 成功后,复制连接字符串以备后续使用。

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

使用 Claude Desktop 服务器

  1. 创建配置文件(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\\enterprisedb.prp"
          ]
        },
        ...
      }
    }
    

    Linux/Mac

    {
      "mcpServers": {
        "{classname_dash}": {
          "command": "/PATH/TO/java",
          "args": [
            "-jar",
            "/PATH/TO/CDataMCP-jar-with-dependencies.jar",
            "/PATH/TO/enterprisedb.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 服务器显示出来。

运行服务器

  1. 运行以下命令以独立运行 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 请求示例

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

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",
       [...]
}

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 文件。

所有支持的数据源

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