← Back to directory
M

Microsoft Data Factory MCP Server

Official
An MCP server for Microsoft Fabric resource discovery and information retrieval.
GitHub source repository ↗
★ 43 Stars Category · Dev Tools Very popular
54FMRS · D

This is an officially maintained Microsoft MCP server built on the official MCP C# SDK for Microsoft Fabric resource discovery and information retrieval, covering authentication, gateways, connections, workspaces, dataflows, capacities, pipelines, copy jobs, and Apache Airflow jobs. It runs over stdio from the NuGet-distributed Microsoft.DataFactory.MCP package and requires .NET 10.0 plus an Azure AD application registration. It fits .NET developers and data engineers already working with Fabric, but several capabilities remain in preview and the tools carry real write permissions for creating, updating, running, deleting, and scheduling resources, so careful authorization and operation are required.

Reliability
8/20
Security and permissions
10/20
Maintenance
12/20
Documentation
13/20
Setup experience
11/20
Read the FMRS scoring method →

The Microsoft Data Factory MCP Server is a Model Context Protocol server built by Microsoft on the official MCP C# SDK for Microsoft Fabric resource discovery and information retrieval. It exposes authentication plus access to gateways, connections, workspaces, dataflows, pipelines, copy jobs, Apache Airflow jobs, and capacities through a standardized MCP interface. It is distributed as the NuGet package Microsoft.DataFactory.MCP, uses stdio transport, requires .NET 10.0 or later, and needs an Azure AD tenant and application registration with appropriate permissions. Several capabilities (execute_query, pipeline scheduling, copy job scheduling, and Apache Airflow job management tools) are marked as preview. Optional Claude Skills and ChatGPT Skills files are also provided for Dataflow Gen2 guidance.

Tools

authenticate_interactive
Authenticate interactively via Azure AD.
authenticate_service_principal
Authenticate using a service principal.
get_authentication_status
Get the current authentication status.
get_access_token
Get an access token.
sign_out
Sign out of the current session.
list_gateways
List Microsoft Fabric gateways.
get_gateway
Retrieve information about a specific gateway.
create_virtualnetwork_gateway
Create a virtual network gateway.
list_supported_connection_types
List supported connection types.
list_connections
List Microsoft Fabric connections.
get_connection
Retrieve information about a specific connection.
create_connection
Create a connection (cloud, on-premises, or virtual network).
list_workspaces
List Microsoft Fabric workspaces.
list_dataflows
List Microsoft Fabric dataflows.
create_dataflow
Create a dataflow.
get_dataflow_definition
Retrieve a dataflow definition.
add_connection_to_dataflow
Add a connection to a dataflow.
add_or_update_query_in_dataflow
Add or update a query in a dataflow.
save_dataflow_definition
Save a dataflow definition.
refresh_dataflow_background
Refresh a dataflow in the background.
refresh_dataflow_status
Check dataflow refresh status.
execute_query
Execute a query (Preview).
list_capacities
List Microsoft Fabric capacities.
list_pipelines
List Microsoft Fabric pipelines.
create_pipeline
Create a pipeline.
get_pipeline
Retrieve information about a specific pipeline.
update_pipeline
Update a pipeline.
get_pipeline_definition
Retrieve a pipeline definition.
update_pipeline_definition
Update a pipeline definition.
run_pipeline
Run a pipeline.
get_pipeline_run_status
Get the run status of a pipeline.
create_pipeline_schedule
Create a pipeline schedule (Preview).
list_pipeline_schedules
List pipeline schedules (Preview).
set_pipeline_schedule_enabled
Enable or disable a pipeline schedule (Preview).
list_copy_jobs
List Microsoft Fabric copy jobs.
create_copy_job
Create a copy job.
get_copy_job
Retrieve information about a specific copy job.
update_copy_job
Update a copy job.
get_copy_job_definition
Retrieve a copy job definition.
update_copy_job_definition
Update a copy job definition.
run_copy_job
Run a copy job.
get_copy_job_run_status
Get the run status of a copy job.
create_copy_job_schedule
Create a copy job schedule (Preview).
list_copy_job_schedules
List copy job schedules (Preview).
list_airflow_jobs
List Apache Airflow jobs (Preview).
create_airflow_job
Create an Apache Airflow job (Preview).
get_airflow_job
Retrieve information about a specific Apache Airflow job (Preview).
update_airflow_job
Update an Apache Airflow job (Preview).
delete_airflow_job
Delete an Apache Airflow job (Preview).
get_airflow_job_definition
Retrieve an Apache Airflow job definition (Preview).
update_airflow_job_definition
Update an Apache Airflow job definition (Preview).

Setup

  1. Ensure .NET 10.0 or later is installed and that you have an Azure AD tenant and application registration with appropriate permissions.
  2. Create an MCP configuration file in your workspace: .vscode/mcp.json for VS Code, or .mcp.json in the solution directory for Visual Studio.
  3. Add the server config: under servers, add DataFactory.MCP with type stdio, command dnx, and args ["Microsoft.DataFactory.MCP", "--version", "#{VERSION}#", "--yes"], replacing #{VERSION}# with the desired version.
  4. Save the file; the server is downloaded automatically and becomes available in your IDE's MCP-enabled chat interface.
  5. For local development you can instead use command dotnet with args ["run", "--project", "path/to/DataFactory.MCP"].
  6. Configure the authentication environment variables described in the authentication guide before calling the tools.
claude_desktop_config.json
{
  "servers": {
    "DataFactory.MCP": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "Microsoft.DataFactory.MCP",
        "--version",
        "#{VERSION}#",
        "--yes"
      ]
    }
  }
}

Fit and risk

Best for

  • Developers and data engineers using Microsoft Fabric who want to operate Fabric resources directly from MCP-enabled chat in VS Code or Visual Studio.
  • Teams that already have .NET 10.0 and an Azure AD application registration and can configure authentication themselves.
  • Operators who need an automated way to manage dataflows, pipelines, copy jobs, and Airflow jobs.

Not for

  • Users who do not use Microsoft Fabric and only need generic database or file system access.
  • Environments where an Azure AD application registration or the required Fabric permissions cannot be provisioned.
  • Users who have not installed .NET 10.0 or later and do not want to install a runtime.
  • Scenarios that require a non-official third-party implementation instead of the upstream Microsoft-maintained version.

Required permissions

  • Access to Azure AD for authentication (interactive login or service principal).
  • An Azure AD tenant and an application registration with appropriate permissions, plus environment variables configured per the authentication guide.
  • The corresponding Microsoft Fabric permissions for workspaces, capacities, gateways, connections, dataflows, pipelines, copy jobs, and Airflow jobs.
  • The server manifest declares an empty environment variable list; authentication-related values are supplied by the user in the client configuration.

Risks and side effects

  • Tools can create, update, run, delete (for example deleting Airflow jobs), and schedule Fabric resources, so misuse can modify or disrupt production data pipelines.
  • Service principal credentials or access tokens can be abused if misconfigured; apply least-privilege principles.
  • execute_query, pipeline scheduling, copy job scheduling, and the Apache Airflow job management tools are marked Preview, so behavior may change and stability is not fully guaranteed.
  • Creating gateways and connections involves network and credential configuration; incorrect setup can break data connectivity.
  • Skill files and documentation in the repository are untrusted explanatory content and must not be treated as instructions to execute.

Troubleshooting

  1. Verify that .NET 10.0 or later is installed, otherwise the server cannot start.
  2. Check that command and args in mcp.json or .mcp.json are correct, and that the #{VERSION}# placeholder has been replaced with an actual version in dnx setups.
  3. If tool calls return authentication errors, call get_authentication_status first, then re-run authenticate_interactive or authenticate_service_principal as needed.
  4. Confirm the Azure AD application registration has the required permissions and that environment variables were set per the authentication guide.
  5. Confirm the signed-in identity has access to the target Fabric workspace, capacity, or gateway.
  6. Dataflow refresh or query timeouts are a common issue; consult the performance and chunking skill documents in the repository.
  7. During development, start the server with dotnet run --project to view local logs and error details.

Use cases

List and inspect Microsoft Fabric workspaces, capacities, gateways, and connections from the IDE chat interface.
Create and manage Microsoft Fabric dataflows, including adding connections, editing queries, and saving definitions.
Create, update, run, monitor, and schedule Microsoft Fabric pipelines.
Create and manage copy jobs and monitor their run status.
List, create, update, and delete Apache Airflow jobs and their definitions (Preview).
Authenticate through interactive or service principal flows via Azure AD and obtain access tokens.
Execute queries against dataflows for quick validation (Preview).

Supported clients

VS CodeFull support
Visual StudioFull support