Fabric资源管理服务

Microsoft Fabric的模型上下文协议(MCP)服务器,提供API层用于控制和自动化Fabric资源,如工作区、项目、域、管道和Lakehouse数据。

  • by PrathmeshPawar2110
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 PrathmeshPawar2110/Microsoft-Fabric-MCP-Server

使用说明

📘 Microsoft Fabric MCP服务器-自述文件

概述

该项目实现了 模型上下文协议(MCP) 使用Microsoft Fabric的服务器 快速API 和 FastMCP。它提供了一个API层,用于通过安全的、基于会话的或API-key访问来控制和自动化结构资源,如工作空间、项目、域、管道和Lakehouse数据。


🧩 关键能力

1.工作空间管理

  • 创建、更新、删除和列出工作区
  • 将工作空间分配给/取消分配给:
    • 能力
    • 部署阶段
    • 域(按容量或工作区ID)
  • 管理工作区的角色分配

2.项目管理

  • 创建、删除、更新项目(报告、仪表板等)
  • 获取项目定义
  • 列出具有筛选功能的项目
  • 对项目应用/取消应用标签
  • 列出项目连接

3.文件夹管理

  • 创建、删除、更新、移动文件夹
  • 列出文件夹(递归或平面)
  • 检索文件夹元数据

4.部署管道

  • 创建/删除管道
  • 创建/更新阶段
  • 向/从阶段分配/取消分配工作空间
  • 使用可选注释跨阶段部署内容
  • 管理管道角色分配
  • 列出管道阶段、操作和部署项目

5.域名管理

  • 创建、更新、删除域
  • 列出域及其工作区
  • 为域分配/取消分配工作区
  • 向域中的主体批量分配/取消分配角色
  • 取消分配所有或特定工作区

6.标签

  • 将标签应用于项目
  • 未应用标签
  • 列出租户范围内的所有标签

7.能力

  • 列出所有可用的结构容量

8.Lakehouse SQL访问

  • 通过经过身份验证的ODBC连接使用SQL查询湖屋数据

🔐 认证

  • 用途 微软身份识别平台 用于身份验证
  • Redis用于会话存储和API-key映射
  • 用户可以通过OAuth2流进行身份验证或使用API密钥(带TTL)

⚙️ 环境配置

在a中设置以下变量 .env 文件:

客户端_ID=。..

CLIENT_SECRET=。..

TENANT_ID=。..

SESSION_SECRET_KEY=。..

APP_URL=https://your-app-url

REDIS_HOST=您的REDIS主机

重新排序=6380

REDIS_KEY=您的REDIS密码

🚀 运行服务器

导航到源目录

cd ./fabric_mcp_server_user

安装依赖项:

pip install -r requirements.txt

运行FastAPI应用程序:

uvicorn main:app --reload

🛠️ 扩展MCP

您可以通过将函数包装为 @mcp.tool() 并遵循已经定义的模式。