使用说明
项目简介
adx-mcp-server 是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为AI助手提供访问和操作 Azure Data Explorer (ADX) 数据库的能力。通过此服务器,AI助手可以执行KQL查询、浏览数据库资源,从而更好地理解和利用ADX中的数据。
主要功能点
- 执行 KQL 查询: 允许 AI 助手向 Azure Data Explorer 数据库发送和执行 KQL 查询,并获取查询结果。
- 数据库资源发现: 提供工具让 AI 助手能够浏览 ADX 数据库中的表,包括列出表名、查看表结构 (schema) 和获取示例数据。
- 可配置工具: 管理员可以配置暴露给 AI 助手的工具列表,从而控制 AI 助手可以执行的操作范围。
- 身份验证支持: 支持通过环境变量配置 Azure 身份验证,保障数据访问安全。
安装步骤
-
安装 'uv': 根据仓库 'README.md' 提供的指引,安装 'uv' 包管理器。'uv' 用于管理 Python 依赖。
curl -LsSf https://astral.sh/uv/install.sh | sh -
创建虚拟环境并安装依赖: 使用 'uv' 创建虚拟环境,并安装项目依赖。
uv venv source .venv/bin/activate # Unix/macOS .venv\Scripts\activate # Windows uv pip install -e .
服务器配置
为了让 MCP 客户端(如 Claude Desktop)连接到 adx-mcp-server,您需要在客户端的配置文件中添加服务器配置。以下是一个示例 JSON 配置,您需要根据您的实际环境进行修改:
{ "mcpServers": { "adx": { // 服务器名称,可以自定义 "command": "uv", // 启动服务器的命令,这里使用 uv "args": [ "--directory", // 指定工作目录 "<adx-mcp-server 仓库的完整路径>", // 请替换为 adx-mcp-server 仓库在您本地文件系统中的完整路径 "run", // uv run 命令 "src/adx-mcp-server/main.py" // 服务器主程序路径 ], "env": { // 环境变量配置 "ADX_CLUSTER_URL": "https://yourcluster.region.kusto.windows.net", // 您的 Azure Data Explorer 集群 URL,请替换为实际值 "ADX_DATABASE": "your_database", // 您的 Azure Data Explorer 数据库名称,请替换为实际值 "AZURE_TENANT_ID": "your_tenant_id", // (可选) Azure 租户 ID,如果使用客户端凭据认证,请配置 "AZURE_CLIENT_ID": "your_client_id", // (可选) Azure 客户端 ID,如果使用客户端凭据认证,请配置 "AZURE_CLIENT_SECRET": "your_client_secret" // (可选) Azure 客户端密钥,如果使用客户端凭据认证,请配置 } } } }
基本使用方法
-
配置环境变量: 根据 '服务器配置' 中的 'env' 字段,您需要设置相应的环境变量。您可以选择直接在系统环境中设置,或者在仓库根目录下创建 '.env' 文件并写入这些变量。 '.env' 文件示例如下:
ADX_CLUSTER_URL=https://yourcluster.region.kusto.windows.net ADX_DATABASE=your_database AZURE_TENANT_ID=your_tenant_id AZURE_CLIENT_ID=your_client_id AZURE_CLIENT_SECRET=your_client_secret -
启动服务器: MCP 客户端会根据您在配置文件中提供的 'command' 和 'args' 启动 adx-mcp-server。通常情况下,客户端会在需要时自动启动服务器。
-
在 MCP 客户端中使用工具: 一旦服务器成功配置并启动,您就可以在 MCP 客户端中调用服务器提供的工具,例如 'execute_query' (执行查询), 'list_tables' (列出表), 'get_table_schema' (获取表结构), 'sample_table_data' (获取示例数据) 等,来与 Azure Data Explorer 数据库进行交互。 具体工具的使用方式请参考 MCP 客户端的文档。
注意: 确保您配置的 Azure 服务主体或账户对指定的 Azure Data Explorer 集群和数据库具有足够的访问权限。
信息
分类
数据库与文件