Back to MCP directory
publicPublicdnsLocal runtime

ibm-cloud-object-storage-mcp-server-by-cdata

该项目是CData为IBM Cloud Object Storage开发的只读MCP服务器,通过JDBC驱动将云存储数据转换为关系型SQL模型,使LLM(如Claude Desktop)能够通过自然语言查询实时数据。

article

README

🚀 ibm-cloud-object-storage-mcp-server-by-cdata

CData 为 IBM Cloud Object Storage 打造的模型上下文协议(MCP)服务器,可让大语言模型(LLMs)通过自然语言查询实时数据,无需编写 SQL 语句。

🚀 快速开始

本项目构建的是只读 MCP 服务器。若你需要完整的读、写、更新、删除和操作功能,以及更简化的设置,可查看我们免费的 CData MCP Server for IBM Cloud Object Storage (beta)

✨ 主要特性

  • 支持大语言模型(如 Claude Desktop)通过自然语言查询 IBM Cloud Object Storage 中的实时数据。
  • 借助 CData JDBC 驱动将 IBM Cloud Object Storage 数据以关系型 SQL 模型的形式暴露。
  • 提供简单的 MCP 接口,方便大语言模型获取数据。

📦 安装指南

  1. 克隆仓库
git clone https://github.com/cdatasoftware/ibm-cloud-object-storage-mcp-server-by-cdata.git
cd ibm-cloud-object-storage-mcp-server-by-cdata
  1. 构建服务器
mvn clean install

此命令会生成 JAR 文件:CDataMCP-jar-with-dependencies.jar。 3. 下载并安装 CData JDBC 驱动https://www.cdata.com/drivers/ibmcloudobjectstorage/download/jdbc 4. 为 CData JDBC 驱动授权: - 进入安装目录下的 lib 文件夹,通常路径如下: - (Windows)C:\Program Files\CData\CData JDBC Driver for IBM Cloud Object Storage\ - (Mac/Linux)/Applications/CData JDBC Driver for IBM Cloud Object Storage/ - 运行命令 java -jar cdata.jdbc.ibmcloudobjectstorage.jar --license - 输入你的姓名、邮箱和 "TRIAL"(或你的许可证密钥)。 5. 配置数据源连接(以 Salesforce 为例): - 运行命令 java -jar cdata.jdbc.ibmcloudobjectstorage.jar 打开连接字符串工具。 - 配置连接字符串并点击 "Test Connection"。 > ⚠️ 重要提示: > > 如果数据源使用 OAuth,你需要在浏览器中进行身份验证。 - 连接成功后,复制连接字符串,以备后续使用。 6. 创建 JDBC 连接的 .prp 文件(例如 ibm-cloud-object-storage.prp,使用以下属性和格式: - Prefix - 用于暴露工具的前缀 - ServerName - 服务器名称 - ServerVersion - 服务器版本 - DriverPath - JDBC 驱动 JAR 文件的完整路径 - DriverClass - JDBC 驱动类的名称(例如 cdata.jdbc.ibmcloudobjectstorage.IBMCloudObjectStorageDriver) - JdbcUrl - 用于与 CData JDBC 驱动连接到数据的 JDBC 连接字符串(从上面复制) - Tables - 留空以访问所有数据,否则可以明确声明要创建访问权限的表

Prefix=ibmcloudobjectstorage
ServerName=CDataIBMCloudObjectStorage
ServerVersion=1.0
DriverPath=PATH\TO\cdata.jdbc.ibmcloudobjectstorage.jar
DriverClass=cdata.jdbc.ibmcloudobjectstorage.IBMCloudObjectStorageDriver
JdbcUrl=jdbc:ibmcloudobjectstorage: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\\ibm-cloud-object-storage.prp"
            ]
        },
        ...
    }
}

Linux/Mac

{
    "mcpServers": {
        "{classname_dash}": {
            "command": "/PATH/TO/java",
            "args": [
                "-jar",
                "/PATH/TO/CDataMCP-jar-with-dependencies.jar",
                "/PATH/TO/ibm-cloud-object-storage.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
  1. 运行或刷新客户端(Claude Desktop)

⚠️ 重要提示

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

独立运行服务器

java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/ibm-cloud-object-storage.prp

⚠️ 重要提示

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

工具使用示例

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

  • "我的成交机会与客户行业之间有什么关联?"
  • "我在 SUPPORT 项目中有多少未解决的工单?"
  • "你能告诉我今天有哪些日程安排吗?"

可用工具及其说明如下:

  • {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 社区

支持的所有数据源

| 数据源 | | | | | ---- | ---- | ---- | ---- | | 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 | ... 更多 |

📄 许可证

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

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client