🚀 CData公司為SAP Netweaver Gateway打造的模型上下文協議(MCP)服務器
本項目由CData公司開發,藉助模型上下文協議(MCP)服務器,實現與SAP Netweaver Gateway的數據交互。該服務器允許大語言模型(LLM),如Claude Desktop,通過自然語言查詢即時數據。
:heavy_exclamation_mark: 此項目構建的是隻讀MCP服務器。若需完整的讀寫、更新、刪除及操作功能,以及更簡化的設置,請試用我們免費的 CData MCP Server for SAP Netweaver Gateway (beta)。
🚀 快速開始
項目目的
我們創建此只讀MCP服務器,旨在讓大語言模型(如Claude Desktop)能夠查詢由 CData JDBC Driver for SAP Netweaver Gateway 支持的SAP Netweaver Gateway即時數據。
CData JDBC驅動程序通過將數據以關係型SQL模型的形式呈現,實現與SAP Netweaver Gateway的連接。該服務器封裝了此驅動程序,通過簡單的MCP接口提供數據訪問,使大語言模型無需SQL即可通過自然語言問題獲取即時信息。
📦 安裝指南
- 克隆倉庫:
git clone https://github.com/cdatasoftware/sap-netweaver-gateway-mcp-server-by-cdata.git
cd sap-netweaver-gateway-mcp-server-by-cdata
- 構建服務器:
mvn clean install
此步驟將生成JAR文件:CDataMCP-jar-with-dependencies.jar。
3. 下載並安裝CData JDBC驅動:https://www.cdata.com/drivers/sapgateway/download/jdbc
4. 為CData JDBC驅動程序授權:
- 導航至安裝目錄下的 lib 文件夾,通常路徑如下:
- Windows:C:\Program Files\CData\CData JDBC Driver for SAP Netweaver Gateway\
- Mac/Linux:/Applications/CData JDBC Driver for SAP Netweaver Gateway/
- 運行命令 java -jar cdata.jdbc.sapgateway.jar --license
- 輸入您的姓名、電子郵件和 "TRIAL"(或您的許可證密鑰)。
5. 配置數據源連接(以Salesforce為例):
- 運行命令 java -jar cdata.jdbc.sapgateway.jar 打開連接字符串實用程序。
- 配置連接字符串並點擊 "Test Connection"。
> 注意:如果數據源使用OAuth,您需要在瀏覽器中進行身份驗證。
- 成功後,複製連接字符串供後續使用。
6. 創建JDBC連接的 .prp 文件(例如 sap-netweaver-gateway.prp),使用以下屬性和格式:
- Prefix - 用於暴露工具的前綴
- ServerName - 服務器名稱
- ServerVersion - 服務器版本
- DriverPath - JDBC驅動程序JAR文件的完整路徑
- DriverClass - JDBC驅動程序類的名稱(例如 cdata.jdbc.sapgateway.SAPGatewayDriver)
- JdbcUrl - 用於連接數據的CData JDBC驅動程序的JDBC連接字符串(從上述步驟複製)
- Tables - 留空以訪問所有數據,否則可明確聲明要創建訪問權限的表
Prefix=sapgateway
ServerName=CDataSAPGateway
ServerVersion=1.0
DriverPath=PATH\TO\cdata.jdbc.sapgateway.jar
DriverClass=cdata.jdbc.sapgateway.SAPGatewayDriver
JdbcUrl=jdbc:sapgateway:InitiateOAuth=GETANDREFRESH;
Tables=
💻 使用示例
與Claude Desktop配合使用
- 創建Claude Desktop的配置文件(
claude_desktop_config.json),以添加新的MCP服務器,使用以下格式。如果文件已存在,將條目添加到配置文件的 mcpServers 中。
{
"mcpServers": {
"{classname_dash}": {
"command": "PATH\\TO\\java.exe",
"args": [
"-jar",
"PATH\\TO\\CDataMCP-jar-with-dependencies.jar",
"PATH\\TO\\sap-netweaver-gateway.prp"
]
},
...
}
}
- **Linux/Mac**
{
"mcpServers": {
"{classname_dash}": {
"command": "/PATH/TO/java",
"args": [
"-jar",
"/PATH/TO/CDataMCP-jar-with-dependencies.jar",
"/PATH/TO/sap-netweaver-gateway.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
- 運行或刷新客戶端(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"
}
}
}
🔧 技術細節
故障排除
- 如果在Claude Desktop中看不到您的CData MCP服務器,請確保您已完全退出Claude Desktop(Windows:使用任務管理器,Mac:使用活動監視器)。
- 如果Claude Desktop無法檢索數據,請確保您已正確配置連接。使用連接字符串構建器創建連接字符串(見上文),並將連接字符串複製到屬性(
.prp)文件中。
- 如果您在連接數據源時遇到問題,請聯繫 CData支持團隊。
- 如果您在使用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 |
... 更多 |