项目简介
Hologres MCP 服务器是一个基于 Model Context Protocol (MCP) 实现的应用后端,旨在为 AI Agent 提供访问阿里云 Hologres 数据库的能力。通过标准化的 MCP 协议,服务器允许 AI Agent 安全、便捷地检索 Hologres 数据库的元数据信息,并执行 SQL 查询等操作。这使得 AI Agent 能够利用 Hologres 数据库的强大数据处理能力,构建更加智能和数据驱动的应用。
主要功能点
- 资源 (Resources) 管理: 提供对 Hologres 数据库信息的标准化访问,例如:
- 获取数据库中所有 Schema 列表
- 获取指定 Schema 下的 Table 列表
- 获取 Table 的 DDL 语句
- 获取 Table 的统计信息
- 查询系统运行日志,包括最近的查询日志、特定用户的查询日志、特定应用的查询日志等。
- 工具 (Tools) 注册与执行: 提供用于操作 Hologres 数据库的工具,例如:
- 执行 SQL 查询
- 分析表结构,收集统计信息
- 获取查询执行计划和实际执行计划。
- 基于标准 MCP 协议: 采用 JSON-RPC 通信协议,易于与各种 MCP 客户端集成。
- 支持多种部署方式: 支持本地文件和 PIP 包两种安装方式,方便用户快速部署和使用。
安装步骤
方式一:使用本地文件
- 下载仓库: 从 GitHub 克隆代码仓库到本地:
git clone https://github.com/aliyun/alibabacloud-hologres-mcp-server.git
方式二:使用 PIP 包
- 安装 PIP 包: 使用 pip 命令安装预编译的包:
pip install hologres-mcp-server
服务器配置
MCP 客户端需要配置 MCP 服务器的启动信息才能连接并使用 Hologres MCP 服务器。以下是两种安装方式对应的 MCP 客户端配置示例 (JSON 格式),请根据您的安装方式选择其一进行配置。
注意: 以下配置示例中的 '/path/to/alibabacloud-hologres-mcp-server' 需要替换为您本地仓库的实际路径。 'host', 'port', 'access_id', 'access_key', 'database' 等占位符需要替换为您的 Hologres 数据库的连接信息。
方式一:本地文件配置示例
{ "mcpServers": { "hologres-mcp-server": { // 服务器名称,客户端配置中用于引用 "command": "uv", // 启动命令,这里使用 uv (假设已安装 uv 并添加到 PATH 环境变量中,也可以是 python 或其他执行器) "args": [ // 启动参数 "--directory", // 指定工作目录 "/path/to/alibabacloud-hologres-mcp-server", // 本地仓库路径,请替换为实际路径 "run", // uv run 命令 "hologres-mcp-server" // 运行 hologres-mcp-server 应用 ], "env": { // 环境变量配置,用于连接 Hologres 数据库 "HOLOGRES_HOST": "host", // Hologres 主机地址,请替换为实际地址 "HOLOGRES_PORT": "port", // Hologres 端口号,请替换为实际端口 "HOLOGRES_USER": "access_id", // Hologres 用户名 (Access ID),请替换为实际用户名 "HOLOGRES_PASSWORD": "access_key", // Hologres 密码 (Access Key),请替换为实际密码 "HOLOGRES_DATABASE": "database" // Hologres 数据库名,请替换为实际数据库名 } } } }
方式二:PIP 包配置示例
{ "mcpServers": { "hologres-mcp-server": { // 服务器名称,客户端配置中用于引用 "command": "uv", // 启动命令,这里使用 uv (假设已安装 uv 并添加到 PATH 环境变量中,也可以是 python 或其他执行器) "args": [ // 启动参数 "run", // uv run 命令 "--with", // 使用已安装的包 "hologres-mcp-server", // 指定要运行的 PIP 包名称 "hologres-mcp-server" // 运行 hologres-mcp-server 应用 ], "env": { // 环境变量配置,用于连接 Hologres 数据库 "HOLOGRES_HOST": "host", // Hologres 主机地址,请替换为实际地址 "HOLOGRES_PORT": "port", // Hologres 端口号,请替换为实际端口 "HOLOGRES_USER": "access_id", // Hologres 用户名 (Access ID),请替换为实际用户名 "HOLOGRES_PASSWORD": "access_key", // Hologres 密码 (Access Key),请替换为实际密码 "HOLOGRES_DATABASE": "database" // Hologres 数据库名,请替换为实际数据库名 } } } }
基本使用方法
- 配置 MCP 客户端: 根据上述 "服务器配置" 部分的说明,配置您的 MCP 客户端,将 'hologres-mcp-server' 添加到 'mcpServers' 列表中。
- 连接 MCP 服务器: 启动您的 MCP 客户端,客户端会根据配置尝试连接并初始化 Hologres MCP 服务器。
- 使用 Resources 和 Tools: 在 MCP 客户端中,您可以:
- 列出 Resources: 查询服务器提供的资源列表,了解可以访问的数据库信息。
- 读取 Resource: 根据 Resource 的 URI 读取具体的数据库信息,例如获取 Schema 列表或 Table DDL。
- 列出 Tools: 查询服务器提供的工具列表,了解可以执行的数据库操作。
- 调用 Tool: 根据 Tool 的名称和参数,调用工具执行相应的数据库操作,例如执行 SQL 查询或分析表结构。
具体的操作方式取决于您使用的 MCP 客户端的功能和界面,请参考您所用 MCP 客户端的文档。
注意: 使用前请确保已正确安装 uv (或 python 等执行器) 并配置到系统 PATH 环境变量中,且已正确配置 Hologres 数据库的连接信息。
信息
分类
数据库与文件