Token导航 LogoToken导航TokenDH.com
Azure Sku MCP logo
运维云端stdio官方级别未说明来源级核验

Azure Sku MCP

MCP Server

一个通过Model Context Protocol (MCP)服务器提供Azure计算SKU信息查询的工具,适用于AI助手。

工具数

1

提示词数

0

GitHub Stars

2

资源数

0
PythonSession认证云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

edwardsp

提供方

edwardsp

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -m venv .venv

详细介绍

Azure SKU资源管理器MCP服务器

A. 模型上下文协议(MCP) 将Azure Compute SKU信息作为AI助手的工具公开的服务器。建于 FastMCP.

它做什么

提供单一工具-- search_azure_skus -查询Azure Resource SKU API并返回任何Azure区域的VM大小、功能(vCPU、内存、GPU、加速网络等)和限制信息。结果可以通过搜索字符串进行筛选。

先决条件

  • Python 3.10+
  • 已配置凭据的Azure订阅(Azure CLI、托管身份、环境变量等)

设置

# Clone the repo
git clone 
cd azure-sku-mcp

# Create and activate a virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install fastmcp azure-identity azure-mgmt-subscription azure-mgmt-compute

通过Azure身份验证

服务器使用 AzureCliCredential 用于身份验证。您必须通过Azure CLI登录:

az login --tenant 
# Optionally set your default subscription
az account set --subscription 

重要:服务器查询Azure资源SKU API,这需要:

  • Azure订阅ID (AZURE_SUBSCRIPTION_ID 环境变量)
  • Azure租户ID (AZURE_TENANT_ID 环境变量)

运行服务器

# Stdio transport (default — used by MCP clients like GitHub Copilot)
python server.py

测试

验证服务器负载和工具是否已注册:

source .venv/bin/activate

python -c "
import asyncio
from server import mcp

async def main():
    tools = await mcp.list_tools()
    for t in tools:
        print(f'Tool: {t.name}')
    print('Server OK')

asyncio.run(main())
"

使用实时Azure查询测试该工具(需要 az login):

python -c "
import asyncio, json
from server import mcp

async def main():
    result = await mcp.call_tool('search_azure_skus', {
        'location': 'eastus',
        'filter_str': 'Standard_NC'
    })
    # result.content contains TextContent with JSON
    for item in result.content:
        data = json.loads(item.text)
        for sku in data[:3]:
            print(f\"{sku['name']:30s} vCPUs={sku['capabilities'].get('vCPUs','?'):>3s}  Mem={sku['capabilities'].get('MemoryGB','?'):>5s} GB\")
        print(f'... {len(data)} SKUs matched')

asyncio.run(main())
"

预期输出(示例):

Standard_NC12s_v3              vCPUs= 12  Mem=  224 GB
Standard_NC16as_T4_v3          vCPUs= 16  Mem=  110 GB
Standard_NC24ads_A100_v4       vCPUs= 24  Mem=  220 GB
... 13 SKUs matched

添加到GitHub副本(VS代码)

  1. 创建一个 .vscode/mcp.json 项目根目录中的文件:
{
    "mcp": {
        "servers": {
            "azure-sku-explorer": {
                "command": "/absolute/path/to/azure-sku-mcp/.venv/bin/python",
                "args": ["/absolute/path/to/azure-sku-mcp/server.py"],
                "env": {
                    // Required: Your Azure subscription ID
                    "AZURE_SUBSCRIPTION_ID": "your-subscription-id-here",
                    // Required: Your Azure tenant ID
                    "AZURE_TENANT_ID": "your-tenant-id-here"
                }
            }
        }
    }
}

替换 /absolute/path/to/ 根据实际路径(例如。, /home/paul/Microsoft/)并设置您的 AZURE_SUBSCRIPTION_ID.

  1. 重新加载VS代码(Ctrl+Shift+P → “开发人员:重新加载窗口”)
  1. 在Copilot Chat(代理模式)中,询问以下内容:
eastus2提供了哪些GPU VM尺寸?给我看看他们的vCPU和内存规格。

副驾驶将调用 search_azure_skus 工具自动。

示例:NC和ND SKU上的缓存磁盘大小

在Copilot聊天(代理模式)中,我们问:

NC和ND SKU的缓存磁盘大小是多少?

自动副驾驶:

  1. 进行了两次并行的工具调用 --一个与 filter_str="Standard_NC" 另一个与 filter_str="Standard_ND" --一次查询两个SKU系列。
  2. 已提取 CachedDiskBytes 能力 从每个SKU结果中提取数据,并将其从字节转换为人类可读的GB。
  3. 结果以表格形式呈现,按系列分组。

这演示了MCP工具如何返回原始JSON数据,人工智能如何处理所有的格式化和分析——你问一个自然语言问题,得到一个结构化的答案。

Copilot invoking the Azure SKU Explorer tool

项目结构

azure-sku-mcp/
├── server.py          # MCP server with search_azure_skus tool
├── requirements.txt   # Pinned dependencies
└── README.md          # This file

许可证

麻省理工学院

目录标签

目录标签

PythonSession认证云端部署AzureSKU查询本地部署AI助手工具云计算资源管理

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

session

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiosession部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP