microsoft / microsoft/mcp

[Feature] No local/offline validator for item definitions before updateDefinition

Open
#3,256 1 comment 0 reactions 2 assignees View on GitHub

@AmosHersch is already working on this.

Since Aug 18, 2026.

customer-reported enhancement needs-triage server-Fabric.Mcp
Dominant language
C#
Stars
3.7k
Forks
624
Avg merge
2d 20h
Merged PRs (30d)
220

Description

**Describe the bug**
This is a feature request. There is no `datafactory_validate-pipeline` / `core_validate-item-definition` style tool to check an item definition payload against the Fabric schema before calling `updateDefinition`. Every schema mistake (wrong activity type, missing required field, wrong enum value, etc. -- see linked issues) required a live round trip to the service (and in one case, only surfaced in the portal UI, since the API itself reported success) to discover the problem.

**Expected behavior**
A tool that validates a definition payload (e.g. a `dataPipeline` item's `pipeline-content.json`) against the documented schema locally/offline, returning specific field-level errors, before it's ever sent to `updateDefinition`.

**Actual behavior**
Multiple mistakes that a schema validator would have caught immediately instead required live API round trips (and once, opening the portal UI) to discover:
- An activity type (`RunNotebook`) that isn't valid for the item type, but is accepted and stored anyway, only failing silently in the UI renderer
- A required-but-undocumented field (`externalReferences.connection` for `TridentNotebook` activities)
- An undocumented enum value (`payloadType: "InlineBase64"`) for definition parts

**Reproduction Steps**
1. Author any Fabric item definition (pipeline, notebook, etc.) with a subtle schema mistake
2. Call `updateDefinition` -- it may succeed even though the item is unusable at runtime
3. Note there is no tool to catch this before the round trip

**Environment**
- Fabric MCP Server
- Windows 11

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.