Skip to main content
Glama

OData MCP Server by CData

Official

由 cdata 提供的 odata-mcp-服务器

CData 的 OData 模型上下文协议 (MCP) 服务器

:heavy_exclamation_mark: 本项目构建了一个只读 MCP 服务器。如需完整的读取、写入、更新、删除和操作功能以及简化的设置,请查看我们免费的 [CData MCP Server for OData (beta)]( https://www.cdata.com/download/download.aspx?sku=RDZK-V &type=beta )。

目的

我们创建了这个只读的 MCP 服务器,以允许 LLM(如 Claude Desktop)查询由CData JDBC Driver for OData支持的实时数据 OData。

CData JDBC 驱动程序通过将其公开为关系 SQL 模型来连接到 OData。

该服务器包装该驱动程序并通过简单的 MCP 接口提供 OData 数据,因此 LLM 可以通过询问自然语言问题来检索实时信息 - 无需 SQL。

设置指南

  1. 克隆存储库:

    git clone https://github.com/cdatasoftware/odata-mcp-server-by-cdata.git cd odata-mcp-server-by-cdata
  2. 构建服务器:

    mvn clean install

    这将创建 JAR 文件:CDataMCP-jar-with-dependencies.jar

  3. 下载并安装 {source} 的 CData JDBC 驱动程序: https://www.cdata.com/drivers/odata/download/jdbc

  4. 许可 CData JDBC 驱动程序:

    • 导航到安装目录中的lib文件夹,通常:

      • (Windows) C:\Program Files\CData\CData JDBC Driver for OData\

      • (Mac/Linux) /Applications/CData JDBC Driver for OData/

    • 运行命令java -jar cdata.jdbc.odata.jar --license

    • 输入您的姓名、电子邮件和“试用版”(或您的许可证密钥)。

  5. 配置与数据源的连接(以 Salesforce 为例):

    • 运行命令java -jar cdata.jdbc.odata.jar打开连接字符串实用程序。

    • 配置连接字符串并点击“测试连接”

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

    • 一旦成功,复制连接字符串以供稍后使用。

  6. 使用以下属性和格式为您的 JDBC 连接创建一个.prp文件(例如odata.prp ):

    • 前缀- 用于公开的工具的前缀

    • ServerName - 您的服务器的名称

    • ServerVersion - 您的服务器的版本

    • DriverPath - JDBC 驱动程序的 JAR 文件的完整路径

    • DriverClass - JDBC 驱动类的名称(例如 cdata.jdbc.odata.ODataDriver)

    • JdbcUrl - 与 CData JDBC 驱动程序一起使用以连接到数据的 JDBC 连接字符串(从上面复制)

    • 表格- 留空以访问所有数据,否则您可以明确声明要创建访问权限的表格

      Prefix=odata ServerName=CDataOData ServerVersion=1.0 DriverPath=PATH\TO\cdata.jdbc.odata.jar DriverClass=cdata.jdbc.odata.ODataDriver JdbcUrl=jdbc:odata:InitiateOAuth=GETANDREFRESH; Tables=

使用 Claude Desktop 的服务器

  1. 使用以下格式创建 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\\odata.prp" ] }, ... } }

    Linux/Mac

    { "mcpServers": { "{classname_dash}": { "command": "/PATH/TO/java", "args": [ "-jar", "/PATH/TO/CDataMCP-jar-with-dependencies.jar", "/PATH/TO/odata.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 查询

故障排除

  1. 如果您在 Claude Desktop 中看不到您的 CData MCP 服务器,请确保您已完全退出 Claude Desktop(Windows:使用任务管理器,Mac:使用活动监视器)

  2. 如果 Claude Desktop 无法检索数据,请确保您已正确配置连接。使用连接字符串生成器创建连接字符串(参见上文),并将其复制到属性 (.prp) 文件中。

  3. 如果您在连接数据源时遇到问题,请联系CData 支持团队

  4. 如果您在使用 MCP 服务器时遇到问题,或者有任何其他反馈,请加入CData 社区

执照

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

所有支持的来源

-
security - not tested
A
license - permissive license
-
quality - not tested

Related MCP Servers

View all related MCP servers

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CDataSoftware/odata-mcp-server-by-cdata'

If you have feedback or need assistance with the MCP directory API, please join our Discord server