Microsoft Fabric MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| AUTH_MODE | Yes | Authentication mode: azcli, sp, or obo | |
| AZURE_CLIENT_ID | No | Azure client ID (required for sp or obo mode) | |
| AZURE_TENANT_ID | No | Azure tenant ID (required for sp or obo mode) | |
| AZURE_CLIENT_SECRET | No | Azure client secret (required for sp or obo mode) | |
| FABRIC_DEFAULT_WORKSPACE | No | Optional default workspace ID |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fabric_list_workspacesA | List all Fabric workspaces the caller can access. |
| fabric_get_workspaceA | Get a workspace by ID. |
| fabric_create_workspaceC | Create a new workspace, optionally bound to a capacity. |
| fabric_update_workspaceB | Update a workspace name/description. |
| fabric_delete_workspaceB | Delete a workspace. Destructive. |
| fabric_list_workspace_role_assignmentsA | List role assignments (members) on a workspace. |
| fabric_add_workspace_role_assignmentB | Add a member (user/group/service principal) to a workspace with a role (Admin/Member/Contributor/Viewer). |
| fabric_delete_workspace_role_assignmentB | Remove a role assignment from a workspace. Destructive. |
| fabric_assign_workspace_to_capacityC | Assign a workspace to a capacity. |
| fabric_unassign_workspace_from_capacityA | Unassign a workspace from its capacity. |
| fabric_list_capacitiesA | List the capacities the caller can access. |
| fabric_list_itemsB | List items in a workspace, optionally filtered by type (Lakehouse, Notebook, DataPipeline, Warehouse, SemanticModel, Report, …). |
| fabric_get_itemA | Get a single item by ID. |
| fabric_create_itemA | Create any Fabric item by type, optionally with a definition (file parts). Use the type-specific tools for richer ergonomics. |
| fabric_update_itemC | Update an item's name/description. |
| fabric_delete_itemC | Delete an item by ID. Destructive. |
| fabric_get_item_definitionA | Fetch an item's full definition (long-running). Returns the raw definition and decoded file contents. |
| fabric_update_item_definitionC | Replace an item's definition from file parts (long-running). |
| fabric_list_lakehousesC | List lakehouses in a workspace. |
| fabric_get_lakehouseA | Get a lakehouse (includes its SQL endpoint + OneLake paths). |
| fabric_create_lakehouseC | Create a lakehouse, optionally schema-enabled. |
| fabric_delete_lakehouseB | Delete a lakehouse. Destructive. |
| fabric_list_lakehouse_tablesB | List the Delta tables in a lakehouse. |
| fabric_load_lakehouse_tableB | Load a file/folder in OneLake into a Delta table (long-running). |
| fabric_run_table_maintenanceB | Run table maintenance (OPTIMIZE / V-Order / VACUUM) on a lakehouse table (long-running). |
| fabric_list_warehousesB | List warehouses in a workspace. |
| fabric_get_warehouseB | Get a warehouse (includes its SQL connection string). |
| fabric_create_warehouseC | Create a data warehouse. |
| fabric_delete_warehouseC | Delete a warehouse. Destructive. |
| fabric_list_sql_endpointsA | List SQL analytics endpoints in a workspace. |
| fabric_get_sql_endpointA | Get a SQL analytics endpoint (connection string, etc.). |
| fabric_refresh_sql_endpoint_metadataA | Sync a SQL analytics endpoint's metadata with its source lakehouse (long-running). |
| fabric_list_shortcutsA | List OneLake shortcuts on an item (e.g. a lakehouse). |
| fabric_get_shortcutA | Get a single OneLake shortcut by path + name. |
| fabric_create_shortcutB | Create a OneLake shortcut. |
| fabric_delete_shortcutB | Delete a OneLake shortcut by path + name. Destructive. |
| fabric_list_notebooksB | List notebooks in a workspace. |
| fabric_get_notebookA | Get a notebook by ID. |
| fabric_create_notebookA | Create a notebook. Optionally populate cells at creation and attach a default lakehouse. |
| fabric_update_notebook_definitionA | Replace a notebook's cells (long-running). Optionally attach a default lakehouse. |
| fabric_get_notebook_definitionA | Fetch a notebook's definition and decoded cell source (long-running). |
| fabric_run_notebookC | Run a notebook on demand. Optionally pass executionData (parameters, configuration). |
| fabric_list_pipelinesA | List data pipelines in a workspace. |
| fabric_get_pipelineA | Get a data pipeline by ID. |
| fabric_create_pipelineB | Create a data pipeline, optionally with activities + parameters. |
| fabric_update_pipeline_definitionB | Replace a pipeline's activities + parameters (long-running). |
| fabric_get_pipeline_definitionA | Fetch a pipeline's definition (activities/parameters) decoded (long-running). |
| fabric_run_pipelineC | Run a data pipeline on demand. Optionally pass executionData (parameters). |
| fabric_run_jobC | Run an on-demand job for any item, by job type. Optionally pass executionData. |
| fabric_list_job_instancesB | List job instances (runs) for an item. |
| fabric_get_job_instanceB | Get the status/details of a job instance. |
| fabric_cancel_jobB | Cancel a running job instance. |
| fabric_list_job_schedulesB | List schedules configured for an item's job type. |
| fabric_create_job_scheduleB | Create a schedule for an item's job. configuration is the Fabric schedule object, e.g. {"type":"Daily","startDateTime":"2026-01-01T00:00:00","times":["09:00"],"localTimeZoneId":"UTC"}. |
| fabric_list_spark_job_definitionsA | List Spark job definitions in a workspace. |
| fabric_get_spark_job_definitionA | Get a Spark job definition by ID. |
| fabric_create_spark_job_definitionC | Create a Spark job definition. |
| fabric_run_spark_job_definitionC | Run a Spark job definition on demand. |
| fabric_list_spark_custom_poolsA | List the custom Spark pools in a workspace. |
| fabric_list_livy_sessionsB | List Spark Livy sessions in a workspace. |
| fabric_list_semantic_modelsC | List semantic models (datasets) in a workspace. |
| fabric_get_semantic_modelB | Get a semantic model by ID. |
| fabric_delete_semantic_modelB | Delete a semantic model. Destructive. |
| fabric_refresh_semantic_modelB | Trigger an asynchronous refresh of a semantic model. |
| fabric_get_semantic_model_refresh_historyB | Get the refresh history of a semantic model. |
| fabric_list_reportsC | List reports in a workspace. |
| fabric_get_reportB | Get a report by ID. |
| fabric_delete_reportB | Delete a report. Destructive. |
| fabric_list_dataflowsA | List Dataflow Gen2 items in a workspace. |
| fabric_get_dataflowB | Get a Dataflow Gen2 by ID. |
| fabric_create_dataflowC | Create a Dataflow Gen2. |
| fabric_delete_dataflowB | Delete a Dataflow Gen2. Destructive. |
| fabric_run_dataflowB | Run (refresh) a Dataflow Gen2 on demand. |
| fabric_list_eventhousesB | List eventhouses in a workspace. |
| fabric_get_eventhouseA | Get an eventhouse by ID. |
| fabric_create_eventhouseC | Create an eventhouse. |
| fabric_delete_eventhouseB | Delete an eventhouse. Destructive. |
| fabric_list_kql_databasesA | List KQL databases in a workspace. |
| fabric_get_kql_databaseA | Get a KQL database by ID. |
| fabric_create_kql_databaseC | Create a KQL database under an eventhouse. |
| fabric_delete_kql_databaseB | Delete a KQL database. Destructive. |
| fabric_list_eventstreamsC | List eventstreams in a workspace. |
| fabric_get_eventstreamB | Get an eventstream by ID. |
| fabric_create_eventstreamC | Create an eventstream. |
| fabric_delete_eventstreamC | Delete an eventstream. Destructive. |
| fabric_onelake_list_pathsA | List files/directories under a OneLake directory (e.g. "{lakehouseId}/Files"). |
| fabric_onelake_create_directoryC | Create a directory in OneLake. |
| fabric_onelake_read_fileA | Read a text file from OneLake. |
| fabric_onelake_write_fileB | Write a (small) text file to OneLake (create → append → flush). |
| fabric_onelake_delete_pathC | Delete a file or directory in OneLake. Destructive. |
| fabric_git_get_connectionA | Get a workspace's Git connection. |
| fabric_git_get_statusA | Get the Git status (changes) of a workspace. |
| fabric_git_connectB | Connect a workspace to a Git repository. gitProviderDetails = { gitProviderType: "AzureDevOps"|"GitHub", organizationName, projectName, repositoryName, branchName, directoryName }. |
| fabric_git_disconnectB | Disconnect a workspace from Git. Destructive. |
| fabric_git_initializeC | Initialize the Git connection (after connect) to sync direction. |
| fabric_git_commitC | Commit workspace changes to Git (mode All or Selective). |
| fabric_git_update_from_gitC | Update the workspace from the remote Git commit. |
| fabric_list_deployment_pipelinesB | List deployment pipelines. |
| fabric_get_deployment_pipelineA | Get a deployment pipeline by ID. |
| fabric_get_deployment_stagesA | Get the stages of a deployment pipeline. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| medallion-architecture | Stand up a medallion architecture: bronze/silver/gold lakehouses, transformation notebooks, and an orchestrating pipeline. |
| document-workspace | Inventory a workspace and produce a structured summary of its items and lineage. |
| build-etl | Create transformation notebooks and orchestrate them in a data pipeline. |
| diagnose-refresh | Investigate why a semantic model refresh failed or is slow. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| fabric-workspaces | All workspaces the caller can access. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/og-mcp/fabric-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server