Microsoft Fabric MCP Server
Локально-ориентированный сервер Model Context Protocol (MCP), который предоставляет AI-агентам полный доступ к публичным API Microsoft Fabric, определениям элементов и лучшим практикам. Fabric MCP Server упаковывает полные OpenAPI-спецификации в единый контекстный слой для разработки с поддержкой ИИ — без подключения к рабочим средам Fabric.
Table of Contents
API Documentation & Best Practices
Overview
Microsoft Fabric MCP Server даёт вашим AI-агентам знания, необходимые для генерации надёжного, готового к продакшену кода для Microsoft Fabric — без прямого доступа к вашей среде.
Ключевые возможности:
-
Полный контекст API: Полные спецификации OpenAPI для всех поддерживаемых нагрузок Fabric
-
Знания о определениях элементов: JSON-схемы для каждого типа элемента Fabric (Lakehouses, конвейеры, семантические модели, ноутбуки и т.д.)
-
Встроенные лучшие практики: Встроенные рекомендации по пагинации, обработке ошибок и рекомендуемым паттернам
-
Безопасность локального уровня: Работает полностью на вашем устройстве — не подключается к вашей среде Fabric
-
Интеграция Data Factory: Управление конвейерами и Dataflow Gen2 с выполнением M-запросов
Installation
IDE
Начните использовать Fabric MCP со своей любимой IDE. Рекомендуем VS Code:
VS Code (Recommended)
Совместим как с Stable, так и с Insiders сборками VS Code.
-
Установите расширение GitHub Copilot Chat.
-
Установите расширение Fabric MCP Server.
Manual Setup
Fabric MCP Server можно настроить и в других IDE, через CLI и MCP-клиентов:
Инструкция по ручной настройке
Используйте одну из следующих опций для конфигурации вашего mcp.json:
Option 1: Конфигурация с использованием .NET (сборка из исходников)
Необходимо иметь установленный .NET 9 SDK или более новую версию.
Чтобы проверить версию .NET, выполните: dotnet --version
Клонируйте и соберите репозиторий:
git clone https://github.com/microsoft/mcp.git
cd mcp
dotnet build servers/Fabric.Mcp.Server/src/Fabric.Mcp.Server.csproj --configuration Release
Настройте файл mcp.json следующим образом:
{
"mcpServers": {
"Fabric MCP Server": {
"command": "/path/to/repo/servers/Fabric.Mcp.Server/src/bin/Release/fabmcp",
"args": [
"server",
"start"
],
"type": "stdio"
}
}
}
Платформенные заметки:
- macOS/Linux: используйте путь как есть
- Windows: используйте обратные слэши и добавьте расширение
.exe:C:\path\to\repo\servers\Fabric.Mcp.Server\src\bin\Release\fabmcp.exe
Option 2: Конфигурация с использованием Node.js (npm/npx)
Чтобы использовать Fabric MCP server из node, на системе должен быть установлен Node.js (LTS), доступный в PATH — он обеспечивает и npm, и npx. Рекомендуем Node.js 20 LTS или новее. Чтобы проверить установку, выполните: node --version, npm --version, и npx --version.
Настройте файл mcp.json следующим образом:
{
"mcpServers": {
"fabric-mcp-server": {
"command": "npx",
"args": [
"-y",
"@microsoft/fabric-mcp@latest",
"server",
"start",
"--mode",
"all"
]
}
}
}
Примечание: При ручной настройке Visual Studio и Visual Studio Code используйте servers вместо mcpServers в корневом объекте.
Client-Specific Configuration
| IDE | File Location | Documentation Link |
|---|---|---|
| Claude Code | ~/.claude.json or .mcp.json (project) | Claude Code MCP Configuration |
| Claude Desktop | ~/.claude/claude_desktop_config.json (macOS)%APPDATA%\Claude\claude_desktop_config.json (Windows) | Claude Desktop MCP Setup |
| Cursor | ~/.cursor/mcp.json or .cursor/mcp.json | Cursor MCP Documentation |
| VS Code | .vscode/mcp.json (workspace)settings.json (user) | VS Code MCP Documentation |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | Windsurf Cascade MCP Integration |
Usage
Getting Started
-
Откройте GitHub Copilot в VS Code и перейдите в режим Agent.
-
Нажмите
refreshв списке инструментов -
Вы должны увидеть Fabric MCP Server в списке инструментов
-
Попробуйте запрос, использующий контекст Fabric, например:
What Fabric workload types are available? -
агент должен уметь использовать инструменты Fabric MCP Server для выполнения вашего запроса
-
Ознакомьтесь с документацией Microsoft Fabric и обзором руководства по устранению неполадок для часто задаваемых вопросов
-
Мы разрабатываем это открыто. Ваши отзывы очень ценны!
Open an issue in the public repository
What can you do with the Fabric MCP Server?
Сервер Fabric MCP существенно расширяет возможности ваших агентов, предоставляя контекст Microsoft Fabric. Ниже — примеры запросов, которые можно попробовать:
Catalog Discovery
-
"Search the OneLake catalog for items related to 'sales revenue'"
-
"Find a Lakehouse with 'customer' in the name across my workspaces"
-
"Discover all Report items in the catalog and show which workspace they live in"
-
"Filter the catalog to Warehouse and Notebook items"
Fabric Workloads & APIs
-
"What are the available Fabric workload types I can work with?"
-
"Show me the OpenAPI operations for 'notebook' and give a sample creation body"
-
"Get the platform-level API specifications for Microsoft Fabric"
-
"List all supported Fabric item types"
Resource Definitions & Schemas
-
"Create a Lakehouse resource definition with a schema that enforces a string column and a datetime column"
-
"Show me the JSON schema for a Data Pipeline item definition"
-
"Generate a Semantic Model configuration with sample measures"
-
"What properties are required for creating a KQL Database?"
Best Practices & Examples
-
"Show me best practices for handling API throttling in Fabric"
-
"How should I implement retry logic for Fabric API rate limits?"
-
"List recommended retry/backoff behavior for Fabric APIs when rate-limited"
-
"Show me best practices for authenticating with Fabric APIs"
-
"Get example request/response payloads for creating a Notebook"
-
"What are the pagination patterns for Fabric REST APIs?"
Development Workflows
-
"Generate a data pipeline configuration with sample data sources"
-
"Help me scaffold a Fabric workspace with Lakehouse and notebooks"
-
"Show me how to handle long-running operations in Fabric APIs"
-
"What's the recommended error handling pattern for Fabric API calls?"
Available Tools
The Fabric MCP Server exposes tools organized into three categories:
API Documentation & Best Practices
| Tool Name | Description |
|---|---|
| docs_workloads | Lists Fabric workload types that have public API specifications available. |
| docs_workload-api-spec | Retrieves the complete OpenAPI specification for a specific Fabric workload. |
| docs_platform-api-spec | Retrieves the OpenAPI specification for core Fabric platform APIs. |
| docs_item-definitions | Retrieves JSON schema definitions for items in a Fabric workload API. |
| docs_best-practices | Retrieves best practice documentation and guidance for a specific topic. |
| docs_api-examples | Retrieves example API request/response files for a specific workload. |
OneLake Data Operations
| Tool Name | Description |
|---|---|
| onelake_list_workspaces | Lists available Microsoft Fabric workspaces. |
| onelake_list_items | Lists workspace items with high-level metadata. |
| onelake_list_items_dfs | Lists Fabric items via the DFS endpoint. |
| onelake_list_files | Lists files using the hierarchical file-list endpoint. |
| onelake_download_file | Downloads a OneLake file. |
| onelake_upload_file | Uploads a file to OneLake storage. |
| onelake_delete_file | Deletes a file from OneLake storage. |
| onelake_create_directory | Creates a directory via the DFS endpoint. |
| onelake_delete_directory | Deletes a directory (optionally recursive). |
| onelake_get_table_config | Retrieves table API configuration for a workspace item. |
| onelake_list_table_namespaces | Lists table namespaces (schemas) exposed through the table API. |
| onelake_get_table_namespace | Retrieves metadata for a specific namespace. |
| onelake_list_tables | Lists tables published within a namespace. |
| onelake_get_table | Retrieves the definition for a specific table. |
OneLake Security — Data Access Roles
| Tool Name | Description |
|---|---|
| onelake_list_data_access_roles | Lists all data access roles defined on a single item. |
| onelake_get_data_access_role | Gets the full definition of a single data access role (members, permissions, decision rules). |
| onelake_create_or_update_data_access_role | Upserts a single data access role on a single item. |
| onelake_delete_data_access_role | Deletes a single data access role from an item. |
OneLake Shortcuts
| Tool Name | Description |
|---|---|
| onelake_list_shortcuts | Lists shortcuts defined within an item. Hides DW-managed shortcuts by default (--include-managed to show). |
| onelake_get_shortcut | Gets the properties of a single shortcut. |
| onelake_create_shortcut_onelake | Creates a shortcut pointing to another OneLake location. |
| onelake_create_shortcut_adls_gen2 | Creates a shortcut pointing to Azure Data Lake Storage Gen2. |
| onelake_create_shortcut_amazon_s3 | Creates a shortcut pointing to Amazon S3. |
| onelake_create_shortcut_azure_blob | Creates a shortcut pointing to Azure Blob Storage. |
| onelake_create_shortcut_gcs | Creates a shortcut pointing to Google Cloud Storage. |
| onelake_create_shortcut_s3_compatible | Creates a shortcut pointing to S3-compatible storage. |
| onelake_create_shortcut_dataverse | Creates a shortcut pointing to a Dataverse environment. |
| onelake_create_shortcut_onedrive_sharepoint | Creates a shortcut pointing to OneDrive/SharePoint Online. |
| onelake_delete_shortcut | Deletes a single shortcut from an item (preserves destination data). |
| onelake_reset_shortcut_cache | Drops cached shortcut reads, forcing re-resolution from destination. |
OneLake Settings
| Tool Name | Description |
|---|---|
| onelake_get_settings | Gets OneLake settings for a workspace (diagnostics + immutability policy). |
| onelake_modify_diagnostics | Modifies diagnostic logging configuration (status, destination lakehouse) at workspace scope. |
| onelake_modify_immutability_policy | Modifies the workspace-level OneLake immutability policy (scope, retention days). |
Core Fabric Operations
| Tool Name | Description |
|---|---|
| core_search-catalog | Searches the OneLake catalog for items across workspaces by name, description, or workspace name. Optionally filter by item type. |
| core_create-item | Creates new Fabric items (Lakehouses, Notebooks, etc.). |
Data Factory Operations
| Tool Name | Description |
|---|---|
| datafactory_list-pipelines | Lists all pipelines in a Microsoft Fabric workspace. |
| datafactory_create-pipeline | Creates a new pipeline in a workspace. |
| datafactory_get-pipeline | Gets details of a specific pipeline. |
| datafactory_run-pipeline | Runs a pipeline on demand. |
| datafactory_list-dataflows | Lists all Dataflow Gen2 items in a workspace. |
| datafactory_create-dataflow | Creates a new Dataflow Gen2 item. |
| datafactory_execute-query | Executes an M (Power Query) query against a dataflow. |
Always verify available commands via
--help. Command names and availability may change between releases.
Support and Reference
Documentation
-
See the Microsoft Fabric documentation to learn about the Microsoft Fabric platform.
-
For MCP server-specific troubleshooting, see the Troubleshooting Guide.
Feedback and Support
-
Поддержка этого серверного реализации в основном предоставляется через сообщества и репозитории GitHub. Клиентам с действующими соглашениями корпоративной поддержки Microsoft может быть доступна ограниченная поддержка для более широких сценариев Microsoft Fabric и платформы; ознакомьтесь с разделом Microsoft Support Policy в этом проекте для подробностей.
-
Ознакомьтесь с руководством по устранению неполадок для диагностики и решения частых проблем.
-
Мы делаем это открыто. Ваши отзывы очень ценны!
Open an issue в публичном репозитории GitHub — будем рады услышать вас!
Security
Fabric MCP Server — это инструмент с локальным первичным использованием, который полностью запускается на вашем устройстве. Он предоставляет спецификации API, схемы и лучшие практики без подключения к рабочим окружениям Microsoft Fabric.
MCP как явление является новой и передовой технологией. Как и со всеми новыми технологическими стандартами, рекомендуется провести обзор безопасности, чтобы обеспечить соблюдение всех регламентов и стандартов, которым должны соответствовать ваши системы.
Data Collection
Программное обеспечение может собирать информацию о вас и вашем использовании ПО и отправлять её Microsoft. Microsoft может использовать эти данные для предоставления услуг и улучшения наших продуктов и услуг. Вы можете отключить телеметрию в соответствии с инструкциями в репозитории. Также есть функции, которые позволяют вам и Microsoft собирать данные о пользователях ваших приложений. Если вы используете эти функции, вы должны соблюдать применимое законодательство, включая уведомления пользователей ваших приложений и копию заявления о конфиденциальности Microsoft. Подробнее о сборе и использовании данных в справке и нашем заявлении о конфиденциальности. Ваше использование ПО считается согласием с такими практиками.
Contributing
Мы приветствуем вклад в Fabric MCP Server! Независимо от того, исправляете ли вы ошибки, добавляете новые функции или улучшаете документацию, ваш вклад будет принят.
Пожалуйста, ознакомьтесь с нашим Contributing Guide для руководств по:
-
Настройке вашей среды разработки
-
Добавлению новых команд
-
Требованиям к стилю кода и тестированию
-
Созданию pull-запросов
Code of Conduct
Этот проект принял
Microsoft Open Source Code of Conduct.
Дополнительную информацию смотрите в
или свяжитесь open@microsoft.com
с любыми дополнительными вопросами или комментариями.
License
Этот проект распространяется по лицензии MIT — смотрите файл LICENSE для подробностей.