# skills-for-fabric: packaging Fabric knowledge as agent instructions and MCP servers

> Microsoft's skills-for-fabric repository publishes reusable AI assistant instructions and MCP servers so GitHub Copilot CLI, Claude Code, Cursor and similar tools understand Fabric workloads, APIs and query patterns. It ships as plugin bundles through a marketplace, and its most instructive documentation is the list of ways a single skill install can still be wrong.

**microsoft/skills-for-fabric** — A collection of skills and MCP systems to enable users of CLI, VSCode, Claude to operate over Microsoft Fabric

- Repository: https://github.com/microsoft/skills-for-fabric
- Stars: 1,279 · Forks: 367
- Language: Python
- License: MIT
- Published: 2026-10-19 · Updated: 2026-10-19 · Language: en
- Canonical page: https://hysenlabs.com/projects/microsoft-skills-for-fabric

## What the repository is: instructions and MCP servers, not code

Microsoft Fabric Skills are described as reusable AI assistant instructions for working with Microsoft Fabric, and the point of them is that they help GitHub Copilot CLI and compatible AI coding tools understand Fabric workloads, APIs, query patterns and operational best practices. The package manifest says the same thing in one line, AI coding assistant skills for Microsoft Fabric developers and consumers, and the published files list is only three directories, agents/, skills/ and mcp-setup/. There is no library to import and no service to deploy. The contents are prompt material and MCP server definitions, and the primary language is Python, which refers to the MCP servers rather than to the skills themselves. The licence is MIT and the package version in the manifest is 0.3.19.

## Installing through the Copilot CLI marketplace, and the bundles

The install path starts by adding the public marketplace with /plugin marketplace add microsoft/skills-for-fabric, and then you install a bundle with /plugin install fabric-skills@fabric-collection. Power BI report authoring is packaged separately, so there is a second bundle, powerbi-authoring@fabric-collection, described as covering semantic models, Power BI report skills and PBIP workflows. The README explains the constraint that produces this shape, that Copilot CLI installs plugins as complete bundles, so to limit installed skills you choose a focused bundle instead of filtering the full bundle. There is also a retirement note worth reading before you script against it, since the persona bundles fabric-authoring, fabric-consumption and fabric-operations are retired and every skill they carried ships in fabric-skills, with the three old ids still resolving as deprecated aliases so an existing install keeps working through /plugin update, while new installs should use fabric-skills.

```bash
/plugin marketplace add microsoft/skills-for-fabric
/plugin install fabric-skills@fabric-collection
/plugin install powerbi-authoring@fabric-collection
```

## Updating, and the three different update mechanisms per host

Updates are handled by the agent host, not by a skill in the repository, and that sentence explains why there are three different procedures. For GitHub Copilot CLI, updating one installed bundle is /plugin update with the bundle name, and updating every installed plugin from a terminal is copilot plugin update --all. For Claude Code, fabric-collection is a third-party marketplace, so you enable auto-update once by running /plugin, opening Marketplaces, selecting fabric-collection and choosing Enable auto-update, and administrators can instead set autoUpdate to true on its extraKnownMarketplaces entry in managed settings. For Cursor, Windsurf and other hosts, you re-run the host's plugin or marketplace update command, or git pull a manual clone. Underneath all three is one mechanism, that every release bumps the version field in each plugin manifest, which is what lets Copilot CLI and Claude Code detect a new release after auto-update is enabled.

## Auto-update is opt-in, and only honoured from personal settings

The GitHub Copilot CLI auto-update behaviour is the most precisely specified part of the README and worth reading in full. You opt in once by adding autoUpdate to the fabric-collection entry in your own user settings, in ~/.copilot/settings.json or %USERPROFILE%\.copilot\settings.json on Windows. The settings block is a JSON object with extraKnownMarketplaces containing fabric-collection, whose source is a github source pointing at microsoft/skills-for-fabric, plus autoUpdate set to true. Copilot CLI then refreshes the bundle at the start of every session in a trusted working directory. Two limits are stated. The opt-in is honored only from your personal user settings, since a repository or managed setting cannot enable or redirect auto-update for a marketplace. And auto-update is skipped by default in CI, which is the right default for a pipeline.

```json
{
  "extraKnownMarketplaces": {
    "fabric-collection": {
      "source": { "source": "github", "repo": "microsoft/skills-for-fabric" },
      "autoUpdate": true
    }
  }
}
```

## APM for a single skill, and the install flags that matter

Copilot plugin bundles install as a whole, so to activate one skill instead of the whole collection you use APM, the Agent Package Manager. The APM CLI installs on Windows with a PowerShell one-liner, on macOS and Linux with a curl and sh, or with pip install apm-cli. A single skill installs with apm install microsoft/skills-for-fabric, a --skill flag naming it, and a --target for the tool. The flags are documented in a table. --skill NAME installs only the named skill and is repeatable. --target and -t take a comma-separated list such as claude,cursor. --global and -g install to user scope instead of the current project. --only apm or --only mcp installs only packages or only MCP servers, and both are installed by default. --update re-resolves dependencies and rewrites apm.lock.yaml, --dry-run prints the plan without writing anything, and --verbose shows per-file paths and full error context.

```bash
apm install microsoft/skills-for-fabric --skill sqldw-cli --target <tool>
```

## The notes section, which is where the real documentation is

The Notes list under the APM section documents five behaviours that would otherwise be discovered the hard way. Scope matters for Copilot, because the copilot target writes MCP state to VS Code's .vscode/mcp.json at project scope and to Copilot CLI's ~/.copilot/mcp-config.json at global scope, so if you use Copilot CLI and omit -g, the skill installs but its MCP servers never reach the CLI. Project and global are separate installs. Installing the repository and then narrowing with --skill is not the same as installing a skill path directly, because APM only rewrites links that resolve inside the installed package root, so a direct path install leaves the shared reference links dangling. Valid --skill values are the folder names under skills/ in the repository. APM adds apm_modules/ to your .gitignore, and it holds the shared material the installed skills link to, so you keep it or re-run apm install after cloning. And to drop one skill you edit the skills list on that dependency in your apm.yml and re-run apm install, since apm uninstall removes the whole package.

## MCP servers are registered regardless, and the agents always come along

Two more notes explain why a narrow install is not as narrow as it looks. All Fabric MCP servers are registered on install, regardless of which skill you select, because APM reads MCP dependencies only from the repository root manifest, and that includes powerbi-modeling-mcp, a stdio server launched through npx, so you need --only apm to deploy the skill without registering any MCP server. And the Fabric agents are deployed alongside any --skill selection, since APM always integrates the agents it discovers in the package, so a single skill install still gets all five of them. They may reference skills you did not install, and those references are inert until you add the skill. The skill lands in .agents/skills/<name>/, its MCP servers are registered for your target tool, and links into the shared reference material are rewritten to the materialized copy under apm_modules/.

## The repository layout, the bundles and where the project stands

The top level of the repository is a manifest for several hosts at once. There are plugins/ for the plugin bundles, skills/ for the skills themselves, agents/ for the agent definitions, common/ for shared material, mcp-setup/ for the MCP server setup, prompt_examples/, and a package.json, an apm.yml, and a .mcp.json at the root. There are also per-host rule files, a .claude-plugin/ directory, a .cursorrules and a .windsurfrules, plus AGENTS.md, CLAUDE.md and GEMINI.md, which tells you the same content is meant to be read by several different assistants. The What is included table lists the bundles, with fabric-skills described as the complete bundle including authoring, consumption, operations, migration and end-to-end architecture skills, and powerbi-authoring for semantic models, reports and PBIP workflows. The last push to the repository was on 2026-10-05, the recent releases are v0.3.16, v0.3.17 and v0.3.18, the repository is not archived, and the licence is MIT.

## Conclusion

skills-for-fabric suits a team building on Microsoft Fabric that wants its AI assistant to know the platform's workloads, APIs and query patterns without hand writing the guidance, and that is willing to deal with the multi-host installation model the project documents. It is the wrong choice for a single developer who wants one skill in one tool, because the documented path runs through a marketplace and an agent package manager, and a poor fit if you cannot accept the MCP servers being registered on install, since all Fabric MCP servers are registered regardless of which skill you select unless you pass --only apm. Before adopting it, read the notes on scope and single skill installs, because installing the repository and narrowing with --skill is not the same as installing a skill path directly, and the difference leaves shared reference links dangling.

## FAQ

### What are the Microsoft Fabric Skills?

They are reusable AI assistant instructions for working with Microsoft Fabric, packaged so that GitHub Copilot CLI and compatible AI coding tools understand Fabric workloads, APIs, query patterns and operational best practices. The repository ships agents, skills and MCP server setup, and the licence is MIT.

### How do I install the Fabric skills in GitHub Copilot CLI?

Add the public marketplace with /plugin marketplace add microsoft/skills-for-fabric, then install a bundle with /plugin install fabric-skills@fabric-collection, or the separate powerbi-authoring@fabric-collection bundle. Copilot CLI installs plugins as complete bundles, so to limit the skills you pick a focused bundle rather than filtering the full one.

### How do I install just one skill from the collection?

Use APM, the Agent Package Manager, with apm install microsoft/skills-for-fabric --skill sqldw-cli --target <tool>. Install the repository and then narrow with --skill rather than installing a skill path directly, because APM only rewrites links that resolve inside the installed package root.

### What happens to the MCP servers when I install a single skill?

All Fabric MCP servers are registered on install regardless of which skill you select, because APM reads MCP dependencies only from the repository root manifest, and that includes powerbi-modeling-mcp. Use --only apm to deploy the skill without registering any MCP server.

### How do I enable auto-update for the Fabric skill bundles?

In GitHub Copilot CLI you opt in by adding autoUpdate to the fabric-collection entry in extraKnownMarketplaces in your personal user settings, either ~/.copilot/settings.json or the Windows equivalent, and the opt-in is honored only from personal settings, not from a repository or managed setting. In Claude Code you enable it from /plugin, Marketplaces, then select fabric-collection and choose Enable auto-update.

## Sources

- [Issues](https://github.com/microsoft/skills-for-fabric/issues)
- [License: MIT](https://github.com/microsoft/skills-for-fabric/blob/main/LICENSE)
- [microsoft/skills-for-fabric on GitHub](https://github.com/microsoft/skills-for-fabric)
- [README](https://github.com/microsoft/skills-for-fabric/blob/main/README.md)
- [Releases](https://github.com/microsoft/skills-for-fabric/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/microsoft-skills-for-fabric
