[Feature] No tool to add/update Data Pipeline activities (only empty-pipeline creation)
@AmosHersch is already working on this.
Since Aug 18, 2026.
- 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, not a bug: `datafactory_create-pipeline` only creates an empty pipeline shell. There is no `datafactory_update-pipeline` / `datafactory_add-activity` tool to add, modify, or wire up activities, dependencies, or parameters on an existing Data Pipeline.
**Expected behavior**
A tool (or set of tools) to add/update pipeline activities programmatically -- e.g. `datafactory_add-activity(workspace-id, pipeline-id, activity-json)` or similar -- so pipeline authoring doesn't require hand-rolling raw `updateDefinition` REST calls with base64-encoded JSON payloads.
**Actual behavior**
The only way to add activities to a pipeline today is:
1. Call `core_create-item` or `datafactory_create-pipeline` to get an empty pipeline
2. Manually construct the full `pipeline-content.json` body
3. Base64-encode it
4. Call the raw `items/{id}/updateDefinition` endpoint directly (with all the pitfalls described in related issues: undocumented `payloadType` enum, `TridentNotebook` vs `RunNotebook`, required `externalReferences.connection`, etc.)
This is a much heavier lift than the equivalent for other item types (e.g. `core_create-item` supports many item types directly) and pushes users toward hand-crafting raw API calls where a schema-aware helper tool could catch mistakes.
**Reproduction Steps**
1. Call `datafactory_create-pipeline`
2. Look for a tool to add a Notebook, Copy, or Web activity to it
3. Observe none exists -- `datafactory_get-pipeline`, `datafactory_list-pipelines`, and `datafactory_run-pipeline` are the only other pipeline tools
**Environment**
- Fabric MCP Server
- Windows 11
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.