Microsoft Fabric · AI Agents · MCP

Fabric Core MCP Server Tutorial: Connect Copilot to Microsoft Fabric

Connect an MCP-compatible AI client to Microsoft Fabric through Microsoft’s hosted Core MCP endpoint. This guide covers the VS Code setup, Microsoft Entra ID sign-in, safe first prompts, how to review a tool call before you approve it, workflows worth automating, a team rollout plan, and the cases where a different Fabric MCP server is the right choice.

Remote MCP endpointVS Code and GitHub CopilotReviewed 24 October 2026

By A.J. · Documentation review: 24 October 2026 · Independent guide

Learning resources / Fabric Core MCP Server

The short answer: Fabric Core MCP Server is a Microsoft-hosted endpoint that exposes Fabric resource-management operations to an AI agent over the Model Context Protocol. You connect to https://api.fabric.microsoft.com/v1/mcp/core, sign in with Microsoft Entra ID, and ask the agent to find items, list workspaces, inspect or manage items and folders, review role assignments, or check capacities. The server calls Fabric APIs with your identity’s permissions, so it can never do more than you can. Microsoft’s September 2026 Fabric feature summary lists it as generally available. Start with read-only prompts, and read every proposed write before you approve it.
What this guide covers, and what it doesn’t: this is the remote Fabric Core MCP Server, which manages Fabric resources. Microsoft’s own documentation says these tools are not general-purpose tools for querying or changing data in Lakehouse tables. If you want DAX against a semantic model, T-SQL against a warehouse, or KQL against an Eventhouse, you need a different server. Section 3 shows which.

1. What is the Fabric Core MCP Server?

The Fabric Core MCP Server is a remote endpoint hosted by Microsoft. It exposes supported Fabric REST API operations as tools that an MCP-compatible AI client can discover and call. Instead of building a custom integration for every assistant, you point a supported client at the endpoint and sign in once.

After that, the agent picks a tool to answer your request. Ask “show me my Fabric workspaces” and it can call the workspace-listing tool. Ask it to find lakehouses with “Customer” in the name and it can call the catalog search tool. Microsoft states that supported operations are recorded in Fabric audit logs under the identity that ran them.

Without Core MCP

You browse the portal or write scripts against the Fabric REST APIs, handling authentication, request building, and error handling yourself.

With Core MCP

An MCP-compatible agent can pick supported management tools from plain-language requests, within your permissions and your client’s approval settings.

What it can do

  • Catalog search: find items across workspaces in the OneLake Catalog by display name, description, or workspace name, optionally filtered by item type.
  • Workspaces: list, inspect, create, update, and delete.
  • Items: create, read, update, and delete items such as lakehouses, semantic models, notebooks, and pipelines, and read or update an item’s definition.
  • Permissions: list, grant, change, and remove workspace roles (Admin, Member, Contributor, Viewer).
  • Folders: create, list, rename, move, and delete folders, and move several items into a folder at once.
  • Capacities and operations: list capacities you can access, and check the state and result of long-running operations.
Connecting the server grants no extra permissions. What the agent can do depends entirely on the signed-in identity’s Fabric permissions. Because the tools include deletes and role changes, don’t connect it to an important workspace and ask it to “clean things up”. Begin with discovery.

2. How the connection works

Advertisements

The server is hosted remotely by Microsoft, but your MCP client still runs where you choose, and the model behind it may process your prompts and the returned results under its own terms. Microsoft says plainly that the Core server may interact with clients and services that process data outside Fabric’s compliance boundaries, and that you are responsible for making sure the integration meets your requirements. “Remote server” does not mean the whole AI interaction stays inside Fabric.

Connection details

SettingValueWhy it matters
Endpointhttps://api.fabric.microsoft.com/v1/mcp/coreThe Microsoft-hosted Core MCP endpoint.
TransportStreamable HTTPYour MCP host must support remote HTTP servers.
AuthenticationOAuth 2.0 with Microsoft Entra ID, through a browser sign-inUse the supported sign-in flow. Never paste tokens into prompts or files.
Scopehttps://api.fabric.microsoft.com/.defaultDocumented scope for hosts that need manual setup.
AuthorizationFabric RBAC for the signed-in identityConnecting doesn’t bypass workspace roles or tenant controls.

3. Choose the right Microsoft Fabric MCP server

Microsoft now documents a long list of Fabric MCP servers, and they are not interchangeable. Its directory was updated on 21 October 2026. Choosing Core because the name says “Fabric” is the most common mistake. Here is the directory grouped by the job you need done.

JobServerHosting
Manage workspaces, items, folders and workspace rolesFabric Core MCP ServerRemote
Run T-SQL against a warehouse or SQL analytics endpointFabric Data Warehouse MCP serverRemote
Discover Power BI reports and semantic models, inspect metadata, run DAXFabric IQ MCP serverRemote
Author Power BI semantic modelsPower BI Authoring (one server, remote or local deployment)Remote or local
Query Eventhouse data with KQLEventhouse MCP serverRemote
Create and manage monitoring rules with email or Teams actionsActivator MCP serverRemote
Configure operations agents and playbooksOperations agent MCP serverRemote
Ask a published data agent questions over its configured dataFabric data agent as an MCP serverRemote
Give an agent business entities and definitions from an ontologyOntology MCP serverRemote
Develop Fabric solutions with API docs, OneLake tools, core and Data Factory operationsFabric MCP Server (local)Local
Manage Data Factory connections, dataflows, pipelines, copy jobs and Airflow jobsDataFactory MCP serverLocal
Work with Eventhouse, Eventstreams, Activator, maps and Azure Data ExplorerReal-Time Intelligence MCP server (local)Local
Give Claude Code or Codex notebook context in VS CodeFabric Data Engineering notebook integrationLocal (VS Code extension)

Two points from Microsoft’s own wording are worth remembering. First, “remote” and “local” describe where the server runs, not where your client or model processes data. Second, an agent can use more than one server if its client supports that, so you can pair Core with a data-access server for a fuller workflow. For the Power BI side, see our Power BI MCP Server guide. For the app-building context, see Microsoft Fabric Apps and Rayfin.

4. Prerequisites before you configure anything

  • Fabric access: an active Fabric tenant with at least one workspace you can access, and a Microsoft work or school Entra ID account with Fabric permissions.
  • An MCP host that supports Streamable HTTP and the server’s Entra ID authentication flow. Microsoft recommends VS Code with GitHub Copilot.
  • Workspace permission: Microsoft suggests at least Viewer access to one workspace to verify the connection. Write operations need the matching role.
  • Permission to create workspaces, if you plan to: Microsoft notes some organisations limit workspace creation to specific roles.
  • A safe test workspace for anything that creates, changes, moves, or deletes.
  • Approval controls you understand. Know how your client asks before running a tool, and never set it to approve destructive calls blindly.
  • Organisation sign-off on the MCP host and model provider, in line with your data-handling and compliance rules.
First principle: build a read-only workflow before you allow writes. Catalog search, workspace inventory, and permission reviews already deliver real value with no destructive risk.

5. Set up Fabric Core MCP Server in VS Code with GitHub Copilot

This follows Microsoft’s published quickstart, which estimates five to ten minutes. You are configuring a connection to a remote service. You are not cloning a repository or installing a local server.

Step 1: Add the server

  1. Open Visual Studio Code with the GitHub Copilot extension and Copilot Chat available.
  2. Open the Command Palette with Ctrl+Shift+P on Windows and Linux, or Cmd+Shift+P on macOS.
  3. Type MCP: Add Server and choose HTTP.
  4. Enter the endpoint exactly:
https://api.fabric.microsoft.com/v1/mcp/core
  1. When asked for a server name, enter fabric.
  2. VS Code opens your browser. Sign in with the Entra ID account that has access to your target workspace. The window closes on its own when sign-in succeeds.

Step 2: Confirm the server is connected

Back in VS Code, check that the server shows as connected in the MCP configuration area. The host must support both the Entra ID flow and remote Streamable HTTP. If your client only supports local stdio servers, pasting the endpoint into its configuration won’t work without extra host support.

Step 3: Run a read-only verification

Open Copilot Chat with Ctrl+Alt+I (or Cmd+Alt+I on macOS) and ask:

List all my Fabric workspaces. Do not create, modify, move, delete, or grant access to anything. Report the workspace names and IDs returned by the Fabric tools.

Compare the answer with the Fabric portal. If a workspace you can open in the portal is missing, check that the same account is signed in and your access is still valid.

Success looks like: the agent lists only workspaces your identity can see, and makes no write calls. A working connection doesn’t prove every tool or every workspace operation is available to you.

6. Manual configuration in .vscode/mcp.json

Advertisements

If you prefer a project-level file, Microsoft documents this entry. Create or edit .vscode/mcp.json in your project:

{
  "servers": {
    "fabric": {
      "type": "http",
      "url": "https://api.fabric.microsoft.com/v1/mcp/core"
    }
  }
}

Save it, reconnect the server if needed, and complete the browser sign-in. The file holds only the endpoint. It has no secret, token, or password, and you shouldn’t add any.

Using another MCP host

Another host can connect only if it supports the required transport and sign-in flow. The documented parameters are:

  • Transport: Streamable HTTP
  • Authentication: OAuth 2.0 with Microsoft Entra ID
  • Scope: https://api.fabric.microsoft.com/.default

Follow that host’s current instructions for registering a remote HTTP server and completing OAuth. Don’t copy a setup command meant for a different Fabric MCP server, because local servers, workload servers, and Core each have their own requirements.

7. First prompts that are safe to run

Use these in order. They start with discovery only.

Prompt A: inventory workspaces

List the Fabric workspaces I can access. Return each workspace's name, ID and any description. Do not change anything.

Proves the identity can list workspaces.

Prompt B: inventory one workspace

In the workspace named "Sales Analytics Dev", list every item you can see. Group them by item type and include the item IDs. Do not create or modify anything. If more than one workspace matches the name, stop and show me the choices.

Shows how the client resolves names to IDs before any write.

Prompt C: review access

For the workspace "Finance Dev", list the current role assignments and summarise who is Admin, Member, Contributor and Viewer. Do not change access. If the name is ambiguous, ask me to choose.

Inspects permissions before any access management.

Prompt D: find an asset

Search the OneLake Catalog for items whose name or description relates to customer retention. Group the results by workspace and item type. Do not open unrelated items or change anything.

Uses catalog search instead of walking each workspace by hand.

Prompt wording is not a security boundary. “Do not delete anything” states your intent, but the real safeguards are permissions, your client’s approval settings, workspace isolation, and your own review of each tool call.

8. How to review a tool call before you approve it

Microsoft’s overview warns that autonomous or misconfigured clients may perform destructive actions, and that safeguards such as “don’t delete” flags aren’t part of the MCP standard and may not exist in your client. So the approval prompt is your last control. Treat it like a code review for a command.

Check four things on every write

  1. The tool name. Is it the operation you asked for, and not a neighbour of it? update_item and update_item_definition are very different changes.
  2. The target IDs. Compare the workspace ID and item ID with what the agent listed earlier. Names can collide. IDs don’t.
  3. The payload. Read the new name, role, or definition being sent. For a role change, check the user and the role.
  4. The blast radius. Ask what else the call touches. Deleting a workspace removes everything inside it.

A watchlist of tools that need extra care

ToolWhy to slow down
delete_workspaceMicrosoft states deleting a workspace permanently removes all its items, and you can’t undo it.
delete_itemAn item that looks temporary may have dependants such as reports, pipelines, or shortcuts.
update_item_definitionRewrites an item’s definition or schema. Read the current definition first and ask for the smallest change.
add_workspace_role, update_workspace_role, delete_workspace_roleChanges who can see and change data. Check the user ID, the role, and the workspace.
bulk_move_itemsMoves many items at once. Confirm the item list and the destination folder.
delete_folderMicrosoft notes folders must be empty first, which is a helpful guard, but check that the right folder was emptied.

Make the agent plan before it acts

This prompt pattern works well for any change. It turns a one-step action into a proposal you can read.

I want to [describe the change]. Before you call any tool that changes something:
1. List what you found, with workspace and item IDs.
2. State the exact tool you plan to call and the values you will send.
3. Say what could go wrong or what else it affects.
4. Wait for my approval before running it.

9. Lab: prepare a development workspace safely

This lab shows a sensible resource-management flow: inspect, plan, create, verify. It is a set of instructions for your own tenant, not a record of steps run in a live environment.

Phase 1: discover before you create

List my Fabric workspaces and tell me whether one named "UIG Fabric MCP Lab - DEV" already exists. Do not create anything. If it exists, return its ID and list its items.

If it exists, inspect it rather than creating a duplicate. Tools generally want IDs even when people use display names.

Phase 2: plan the workspace, then create it

Propose a plan to create a development workspace named "UIG Fabric MCP Lab - DEV". Do not run it yet. Show the exact operation, the name, the permission it needs, and any side effects.

Read the proposed call. If it matches your intent and your organisation permits it, approve it through the normal tool-approval flow. Then list workspaces again to confirm. Remember that creating workspaces may need a specific permission in your tenant.

Phase 3: add a test lakehouse

In the workspace "UIG Fabric MCP Lab - DEV", propose creating one lakehouse named "McpLabLakehouse". First confirm the exact workspace ID and the item type. Do not run anything until I approve.

After approval, list the workspace items and confirm the lakehouse exists. If the operation is asynchronous, use the returned operation ID to check its state and fetch its result. Don’t assume a submitted request has finished.

Phase 4: verify, don’t trust the summary

  • Re-list the workspace and confirm its ID and display name.
  • Re-list the items and confirm the lakehouse and its item ID.
  • Open the Fabric portal and check the same result yourself.
  • Review the operation result and the audit trail where available.
  • Note which identity ran the action and whether any permissions changed.
Cleanup: don’t ask the agent to delete the whole workspace casually. Look at the exact resource ID, confirm it is only a disposable test, check ownership, and require an explicit approval step. When you finish the whole exercise, you can remove the connection with MCP: Remove Server and select fabric.

10. Tools reference

Microsoft’s tools reference (updated 23 September 2026) lists 28 tools. Each maps to a Fabric REST API operation with input validation and error handling. Availability still depends on your permissions.

TaskToolsGood first prompt
Find catalog itemssearch_catalog“Find items related to sales forecasting across the workspaces I can access.”
Workspaceslist_workspaces, get_workspace, create_workspace, update_workspace, delete_workspace“List my workspaces and show the IDs. Don’t change anything.”
Itemslist_items, get_item, create_item, update_item, delete_item, get_item_definition, update_item_definition“List the items in this workspace with their types and IDs.”
Review accesslist_workspace_roles, get_workspace_role“List the role assignments for this workspace without changing them.”
Change accessadd_workspace_role, update_workspace_role, delete_workspace_role“Explain the current access and propose a role change. Don’t apply it.”
Folderslist_folders, get_folder, create_folder, update_folder, move_folder, delete_folder, bulk_move_items“Show the folder tree and suggest an organisation plan without applying it.”
Capacity and async worklist_capacities, get_operation_state, get_operation_result“List the capacities I can access, then explain the status of this operation ID.”
Guidanceget_knowledge“Get the available guidance for this item type before proposing a change.”
  • update_workspace and update_item change the name or description. update_folder renames a folder.
  • Folders must be empty before deletion. Move or delete the items first.
  • Role operations need user principal IDs. To use email addresses instead, add the Microsoft Graph MCP server, which resolves them for you (see section 12).

11. Workflows worth automating

The best uses of Core MCP are the repetitive housekeeping jobs people avoid because the portal makes them tedious. These four are low-risk to start and save real time.

1. Environment inventory

Useful before a migration, a clean-up, or a new team joining.

List every workspace I can access. For each one, list the items grouped by type and show the item count per type. Present the result as a table with workspace name, workspace ID, and counts for lakehouses, semantic models, notebooks and pipelines. Do not change anything.

2. Access review

Run it monthly for sensitive workspaces. It reads role assignments only.

For the workspaces named "Finance Dev" and "Finance Prod", list all role assignments. Flag anyone with the Admin role, and anyone who appears in one workspace but not the other. Present a table and do not change access.

Treat the output as a lead, not a verdict. A person in one workspace and not the other may be perfectly correct. The point is to get a list a human can check in a minute instead of clicking through two pages.

3. Naming and folder tidy-up, as a proposal

In the workspace "Sales Analytics Dev", list all items and all folders. Propose a folder structure by item purpose and a list of items to move into it. Do not move anything. I will approve the moves one folder at a time.

Approve moves in small batches, so a mistake affects a handful of items and not a whole workspace.

4. Bootstrap a development workspace

Microsoft’s own examples include creating a workspace with a lakehouse and adding your team as Contributors. Do it as a plan first, using the pattern in section 8, then approve each call. Add the Graph MCP server only if you want to give access by email address.

A good rule of thumb: automate inspection freely, automate small reversible changes carefully, and keep deletes and role changes as a human decision with the agent only preparing the proposal.

12. Rolling it out to a team

Connecting one laptop is easy. Making it safe for a team takes a little structure.

  1. Pilot with two or three people in a development workspace. Collect the prompts that worked and the tool calls that surprised them.
  2. Share the configuration, not the credentials. The .vscode/mcp.json file contains only the endpoint, so it is safe to keep in a repository. Every person signs in with their own account, so audit records show who did what.
  3. Separate identities by risk. Day-to-day agent use should run under an account with limited roles. Keep Admin-level accounts for the few people who manage workspaces and roles.
  4. Decide the approval policy. Reads can be quick. Anything that creates, changes, moves, or deletes needs a person to read the call. Write that down.
  5. Add the Graph MCP server only if you need it. It lets the agent turn email addresses into user IDs for role operations, following Microsoft’s setup guide for the Microsoft MCP Server for Enterprise. It is another integration with its own permissions, so review it before you enable it.
  6. Keep a change log. Record each write the agent made, who approved it, and the result. Compare it with the Fabric audit data when you review.
  7. Review the data path with security. Agree which MCP host and model provider are allowed, and what may appear in prompts. Remember that results returned by tools are sent to the model too.

13. Security: what matters before production

A natural-language interface makes an administrative action easy to request. It does not make the action harmless. Microsoft also notes that MCP is a developing standard, and asks you to review the security of every system you connect, including hosts, clients, agents, and models.

Minimum safe setup

  • Least privilege. Start with a limited identity or a development workspace. Don’t use an administrator account just because it makes testing easier.
  • Keep production and experiments apart. Learn the tools in a sandbox.
  • Review every write. Use the four-point check in section 8.
  • Protect credentials. Let the OAuth flow handle authentication. Never paste tokens into prompts, repositories, or screenshots.
  • Use approval gates. Check your client’s tool-confirmation settings. Not every client implements destructive-operation safeguards in the same way.
  • Audit. Use Fabric audit records and your host’s logs to see which identity did what. Microsoft says supported operations are recorded, so don’t assume every operation is.
  • Review data handling. Prompts and tool results may be processed by your chosen host or model provider. Confirm their terms satisfy your requirements.
  • Verify after execution. A confident summary from the assistant is not proof that a change happened.

What “uses your permissions” really means

The server calls Fabric APIs as the signed-in identity, and RBAC still applies. But if that identity is allowed to delete a workspace or grant access, an approved tool call can do exactly that. A prompt saying “read-only” is no substitute for reducing permissions and controlling tool execution.

Local does not mean private

The Core server is remote. Even when your client runs on your own machine, prompts and results may go to whichever AI service you chose. Read both Microsoft’s guidance and that provider’s terms. Organisations with strict compliance rules should run a formal data-flow review first.

14. Troubleshooting common problems

401 or 403 errors

Check that the browser sign-in finished, the right work or school account is active, and that account has access to the target workspace. For VS Code, Microsoft’s fix is to remove and re-add the server: run MCP: Remove Server and choose fabric, then MCP: Add Server, choose HTTP, enter the endpoint, and sign in again. For other hosts, restart the host and sign in again, then check that host’s OAuth troubleshooting.

A 401 usually points at authentication and a 403 at authorisation, but read the exact response before deciding.

“Invalid workspace ID”

The tool wants a UUID, not a display name. Run a listing prompt to get the real ID and use it for later steps. If several workspaces have similar names, make the agent show the choices instead of guessing.

The server connects but the action isn’t available

Core doesn’t expose every Fabric feature, and Microsoft says some advanced features may not have tools yet. Check the tools reference. For T-SQL use the Data Warehouse MCP server, for DAX use the Fabric IQ MCP server, and for KQL use the Eventhouse server.

A long-running operation seems stuck

Don’t repeat the create request, because that can produce duplicates. Note the operation ID the tool returned, ask for its state, and fetch the result once the state says it succeeded.

Role management asks for an ID and rejects an email

Without the Graph MCP server you must supply a user principal ID. Either add the Graph server, if your organisation allows it, or look up the ID through an approved route.

Workspace creation is refused

Your tenant may restrict who can create workspaces to specific roles. Ask your Fabric admin, and don’t look for a workaround.

The folder won’t delete

Folders must be empty. List what is inside, move or delete those items deliberately, then delete the folder.

The host only supports stdio servers

The remote endpoint uses Streamable HTTP, so a stdio-only client may not connect. Use a host that supports remote HTTP MCP, such as the documented VS Code route. Don’t install an unverified wrapper to bridge the two.

15. Frequently asked questions

Is Fabric Core MCP Server generally available?

Microsoft’s September 2026 Fabric feature summary lists Fabric Core MCP Server as generally available. The Learn pages don’t carry a status label, so recheck them for the latest tool list and requirements before you rely on it in production.

Do I need to install a local MCP server?

No, not for the remote Core endpoint. You point an MCP-compatible host at Microsoft’s hosted endpoint. A separate local Fabric MCP Server exists with a different toolset, aimed at development work such as API documentation and OneLake tools.

Can I connect it to GitHub Copilot?

Yes. Microsoft’s quickstart documents VS Code with GitHub Copilot using the MCP: Add Server command, the HTTP option, and the Core endpoint, plus a manual .vscode/mcp.json alternative.

Can I connect it to Claude or another MCP client?

Possibly, if the host supports remote Streamable HTTP and the Entra ID OAuth flow. Use that host’s current instructions and don’t assume every client sets up the same way.

Can it read rows from a Lakehouse table?

No. Core MCP manages Fabric resources and isn’t a general-purpose tool for querying or changing lakehouse table data. Use the server built for your workload, such as the Data Warehouse MCP server for T-SQL or the Fabric IQ MCP server for DAX.

Can it create workspaces, lakehouses, or notebooks?

It supports creating workspaces and items, subject to your permissions and tool support. Review each proposed call and verify the result in Fabric afterwards.

Can I add users by email address?

Not on its own. Role tools need user principal IDs. Adding the Microsoft Graph MCP server lets the agent resolve email addresses to IDs for you.

Can I use it safely with a production workspace?

Only after your organisation has reviewed the identity, roles, client approval settings, audit coverage, and data handling. Start with discovery prompts and least privilege, and learn the tools in a development workspace.

Does MCP give the agent extra Fabric permissions?

No. Operations run with the signed-in identity’s permissions. A misconfigured client can still perform destructive actions that identity is allowed to do, so restrict access and review tool calls.

16. Official documentation and further reading

Continue learning with Ultimate Info Guide

To query and analyse Power BI semantic models rather than manage Fabric resources, continue with our Power BI MCP Server guide. To explore custom applications on the same platform, see our Microsoft Fabric Apps and Rayfin developer guide.

This guide is educational. Check current Microsoft documentation, your organisation’s policy, and your MCP client’s data-handling terms before making changes to a live tenant. Prompts and commands are examples for your own authorised environment, not a record of an executed deployment.

Scroll to Top