返回市场
mcp-azure表存储

mcp-azure表存储

作者:dkmaker6 星标更新:2024-12-23

项目介绍

Azure 表存储 MCP 服务器

MIT 许可证

这是一个基于 TypeScript 的 MCP 服务器,它允许通过 Cline 直接与 Azure 表存储进行交互。此工具使您能够查询和管理 Azure 存储表中的数据。

<a href="https://glama.ai/mcp/servers/8kah8zukke"><img width="380" height="200" src="https://gips1.baidu.com/it/u=3563804226,3125279352&fm=3081&app=3081&f=PNG?w=760&h=400" alt="mcp-azure-tablestorage MCP 服务器" /></a>

功能

  • 使用 OData 过滤器支持查询 Azure 存储表
  • 获取表模式以了解数据结构
  • 列出存储帐户中的所有表
  • 详细的错误处理和响应信息
  • 通过连接字符串进行简单配置

安装

本地开发环境设置

  1. 克隆仓库:
git clone https://github.com/dkmaker/mcp-azure-tablestorage.git
cd mcp-azure-tablestorage
  1. 安装依赖项:
npm install
  1. 构建服务器:
npm run build

NPM 安装

您可以使用 npm 全局安装该包:

npm install -g dkmaker-mcp-server-tablestore

或者直接使用 npx 运行:

npx dkmaker-mcp-server-tablestore

注意:当使用 npx 或全局安装时,您仍然需要配置 AZURE_STORAGE_CONNECTION_STRING 环境变量。

在 Cline 中安装

要使用 Azure 表存储服务器与 Cline,您需要将其添加到您的 MCP 设置配置中。配置文件位于:

Windows: %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json

在您的配置中添加以下内容:

{
  "mcpServers": {
    "tablestore": {
      "command": "node",
      "args": ["C:/path/to/your/mcp-azure-tablestorage/build/index.js"],
      "env": {
        "AZURE_STORAGE_CONNECTION_STRING": "your_connection_string_here"  // 必需:您的 Azure 存储连接字符串
      }
    }
  }
}

用您实际克隆仓库的位置替换 C:/path/to/your/mcp-azure-tablestorage

配置

服务器需要以下环境变量:

  • AZURE_STORAGE_CONNECTION_STRING:您的 Azure 存储帐户连接字符串

在 Cline 中使用

⚠️ 重要安全提示:query_table 工具返回的结果子集有限(默认:5 项),以保护 LLM 的上下文窗口。除非用户明确确认,否则不要增加此限制,因为更大的结果集可能会淹没上下文窗口。

安装后,您可以通过 Cline 使用 Azure 表存储服务器。这里有一些示例:

  1. 查询表:
查询 PartitionKey 是 'ACTIVE' 的 Users 表

Cline 将使用 query_table 工具:

{
  "tableName": "Users",
  "filter": "PartitionKey eq 'ACTIVE'",
  "limit": 5  // 可选:默认为 5 项。警告:未经用户确认不得增加
}

响应将包括:

  • 符合查询的项目总数(无限制)
  • 安全的 LLM 处理的有限子集(默认 5)项
  • 应用的限制值

例如:

{
  "totalItems": 25,
  "limit": 5,
  "items": [
    // 前 5 个匹配项
  ]
}

这种设计允许 LLM 理解数据的全部范围,同时处理一个可控的子集。默认的 5 项限制保护了 LLM 的上下文窗口不被淹没——只有在用户明确确认的情况下才应增加此限制。

  1. 获取表模式:
显示 Orders 表的模式

Cline 将使用 get_table_schema 工具:

{
  "tableName": "Orders"
}
  1. 列出表:
列出存储帐户中的所有表

Cline 将使用 list_tables 工具:

{}

项目结构

  • src/index.ts:主要服务器实现,包含与 Azure 表存储交互的逻辑
  • build/:编译后的 JavaScript 输出
  • package.json:项目依赖项和脚本

依赖项

  • @azure/data-tables:Azure 表存储客户端库
  • @modelcontextprotocol/sdk:MCP 服务器实现工具包

许可证

本项目采用 MIT 许可证——详情见 LICENSE 文件。这意味着您可以自由地使用、修改、分发和再许可代码,只要您包含原始的版权声明和许可条款。