返回市场
微软织构MCP

微软织构MCP

作者:Augustab22 星标更新:2025-09-30

项目介绍

Microsoft Fabric MCP

PyPI 版本

这是一个提供对 Microsoft Fabric 资源只读访问的模型上下文协议服务器。通过自然语言查询工作区、检查表模式、监控作业并分析依赖关系。

功能

  • 25 个工具涵盖工作区、数据湖、表、作业和依赖关系
  • 只读操作 - 仅使用 GET 请求,无数据修改风险
  • 智能缓存以实现快速响应
  • 兼容 Cursor、Claude 和其他 MCP 兼容的人工智能工具

可用的 MCP 工具

参数说明workspace 参数接受工作区名称(例如:"DWH-PROD")或工作区 ID。建议使用名称以方便使用。

🏢 核心 Fabric 管理

工具描述输入
list_workspaces列出所有可访问的 Fabric 工作区
get_workspace获取详细的工作区信息,包括工作区身份状态workspace (名称/ID)
list_items列出工作区中的所有项目,可选类型过滤workspace (名称/ID),item_type (可选)
get_item获取特定项目的详细属性和元数据workspace (名称/ID),item_name (名称/ID)
list_connections列出用户在整个租户中可以访问的所有连接
list_lakehouses列出指定工作区中的所有数据湖workspace (名称/ID)
list_capacities列出用户可以访问的所有 Fabric 容量
get_workspace_identity获取特定工作区的工作区身份详细信息workspace (名称/ID)
list_workspaces_with_identity列出已配置工作区身份的工作区

📊 数据与模式管理

工具描述输入
get_all_schemas获取数据湖中所有 Delta 表的模式workspace (名称/ID),lakehouse (名称/ID)
get_table_schema获取特定表的详细模式workspace (名称/ID),lakehouse (名称/ID),table_name
list_tables列出数据湖中的所有表,并带有格式/类型信息workspace (名称/ID),lakehouse (名称/ID)
list_shortcuts列出特定项的一湖快捷方式workspace (名称/ID),item_name (名称/ID),parent_path (可选)
get_shortcut获取详细快捷方式配置及其目标workspace (名称/ID),item_name (名称/ID),shortcut_nameparent_path (可选)
list_workspace_shortcuts汇总工作区项目中的所有快捷方式workspace (名称/ID)

⚡ 作业监控与调度

工具描述输入
list_job_instances列出作业实例,用于监控,可选状态/项目过滤workspace (名称/ID),item_name (可选),status (可选)
get_job_instance获取详细作业信息,包括错误和时间workspace (名称/ID),item_name (名称/ID),job_instance_id
list_item_schedules列出特定项目的全部计划workspace (名称/ID),item_name (名称/ID)
list_workspace_schedules汇总工作区中的所有计划 - 完整调度概览workspace (名称/ID)

🎯 运营智能

工具描述输入
list_compute_usage监控活动作业并估算资源消耗workspace (可选),time_range_hours (默认: 24)
get_item_lineage分析数据流依赖关系,上游/下游workspace (名称/ID),item_name (名称/ID)
list_item_dependencies映射工作区中的所有项目依赖关系workspace (名称/ID),item_type (可选)
get_data_source_usage分析跨项目的连接使用模式workspace (可选),connection_name (可选)
list_environments列出 Fabric 环境,用于计算/库管理workspace (可选)
get_environment_details获取详细的环境配置,包括 Spark 设置和库workspace (名称/ID),environment_name (名称/ID)

缓存

服务器缓存响应以提高性能。使用 clear_fabric_data_cache 刷新资源列表或在重命名工作区/数据湖后使用 clear_name_resolution_cache

快速开始

  1. 安装 UV 和 Azure CLI(参见下文)
  2. 设置 Azure CLI 认证:az login
  3. 在 Cursor 中配置 MCP(参见“设置 MCP”部分)

安装

UV

# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

Azure CLI 认证

此工具包需要安装并正确配置 Azure CLI 以进行 Microsoft Fabric 服务的身份验证。

Azure CLI 配置

  1. 安装 Azure CLI(如果尚未安装):
# 对于 macOS
brew install azure-cli

# 对于 Windows
# 下载安装程序:https://aka.ms/installazurecliwindows
# 或者使用 winget:
winget install -e --id Microsoft.AzureCLI

# 对于其他平台,请参阅官方 Azure CLI 文档
  1. 使用 CLI 登录到 Azure:
az login
  1. 验证登录是否成功:
az account show
  1. 如果您有多个订阅,请选择要使用的订阅:
az account set --subscription "订阅名称或ID"

完成这些步骤后,我们的代码中的 DefaultAzureCredential 将自动找到并使用您的 Azure CLI 身份验证。

设置 MCP

要使用此工具包中的 MCP(模块上下文协议),请遵循以下步骤:

  1. 确保已完成上述 Azure CLI 认证步骤。

  2. 选择您的安装方法:

选项 A:UVX 安装(推荐)

添加到 Cursor MCP 设置:

"mcp_fabric": {
  "command": "uvx",
  "args": ["microsoft-fabric-mcp"]
}

选项 B:本地开发

克隆并安装:

git clone https://github.com/Augustab/microsoft_fabric_mcp
cd microsoft_fabric_mcp
uv pip install -e .

添加到 Cursor MCP 设置:

"mcp_fabric": {
  "command": "uv",
  "args": [
    "--directory",
    "/Users/username/Documents/microsoft_fabric_mcp",
    "run",
    "fabric_mcp.py"
  ]
}

替换 /Users/username/Documents/microsoft_fabric_mcp 为您实际的路径。

💡 注意:两种方法都在您的机器上本地运行 MCP 服务器。UVX 方法只是让安装更容易!

  1. 一旦 MCP 配置完成,您就可以直接从工具和应用程序中与 Microsoft Fabric 资源交互。

  2. 您可以使用提供的 MCP 工具列出工作区、数据湖和表,以及提取模式信息,如工具部分所述。

  3. 成功配置后,您的 MCP 将出现在 Cursor 设置中如下所示:

<div align="center"> <img src="images/fmcp.png" alt="Cursor 中成功的 MCP 设置" title="MCP 设置如 Cursor 设置中所示" width="50%"> </div>

Windows 设置

设置 MCP 命令

在 Windows 上,您可以创建一个批处理文件来轻松运行 MCP 命令:

  1. 创建一个名为 run_mcp.bat 的文件,内容如下:

    @echo off
    SET PATH=C:\Users\YourUsername\.local\bin;%PATH%
    cd C:\path\to\your\microsoft_fabric_mcp\
    C:\Users\YourUsername\.local\bin\uv.exe run fabric_mcp.py
    

    示例带真实路径:

    @echo off
    SET PATH=C:\Users\YourUsername\.local\bin;%PATH%
    cd C:\Users\YourUsername\source\repos\microsoft_fabric_mcp\
    C:\Users\YourUsername\.local\bin\uv.exe run fabric_mcp.py
    
  2. 您可以通过执行以下命令来运行 MCP 命令:

    cmd /c C:\path\to\your\microsoft_fabric_mcp\run_mcp.bat
    

    示例:

    cmd /c C:\Users\YourUsername\source\repos\microsoft_fabric_mcp\run_mcp.bat
    

虚拟环境权限

在 Windows 上使用 .venv\Scripts\activate 激活虚拟环境时,可能会遇到权限问题。为了解决这个问题,在激活之前,请在 PowerShell 中运行以下命令:

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process

这会临时更改当前 PowerShell 会话的执行策略,允许脚本运行。

示例用法

设置完成后,您可以通过您的 AI 助手查询 Fabric 资源:

列出 Fabric 中的工作区

向您的 AI 助手提出自然语言问题:

你能列出我在 Fabric 中的工作区吗?
你能显示 "DWH-PROD" 工作区中的所有数据湖吗?
你能获取 "GK_Bronze" 数据湖中 "sales" 表的模式吗?

AI 将自动选择合适的 MCP 工具并显示结果:

<div align="center"> <img src="images/list_workspaces_example.png" alt="列出 Fabric 工作区的示例" title="Fabric 中列出工作区的示例" width="450" /> </div>

高级用例

对于复杂任务,AI 可以访问多个资源以生成准确的代码:

创建一个笔记本,从青铜数据湖中的 'sales' 表读取,并更新到银色数据湖中的 'sales_processed' 表,考虑两个表的模式。

AI 将:

  1. 获取两个表的模式
  2. 生成具有正确数据类型的代码
  3. 创建高效的更新操作

权限处理

AI 在运行 MCP 工具前会请求权限。在 Cursor 中,您可以启用 YOLO 模式以自动执行而无需提示。

关于 Model Context Protocol

Model Context Protocol (MCP) 是一个开放标准,使 AI 助手能够安全地连接到外部数据源和工具。此服务器实现了 MCP,为 AI 助手提供了直接访问您的 Microsoft Fabric 资源的能力。

了解更多:Model Context Protocol 文档

贡献

欢迎贡献额外的工具、实用程序或现有代码的改进。请遵循现有的代码结构并包含适当的文档。