Skip to content

AL MCP (VS Code facade): al_publish only publishes the active project — no projectPath/scope to target a specific app or publish all workspace apps #8275

Description

@FBakkensen

1. Describe the bug

The in-VS-Code AL MCP facade al_publish can only publish the active project (resolved from VS Code''s active editor context). It exposes no parameter to choose which project to publish, and no way to publish more than one.

Its parameters are debug, skipbuild, fulldependencytree, type — there is no projectPath, no scope, no project/app selector. In a multi-root / multi-project workspace (e.g. a main app plus separate test apps), an agent cannot publish a chosen app or all apps via MCP. The only way to switch the target is to externally change which editor/project is "active" in the VS Code UI — not viable for autonomous, headless agent loops.

fulldependencytree=true publishes the active app along its dependency-symbol chain; it does not publish sibling apps in the workspace as separate extensions.

2. To Reproduce

  1. Open a workspace with two or more AL projects (e.g. an app, plus separate test-app projects each with their own app.json).
  2. From Copilot Chat, call al_publish.
  3. Only the currently active project is published. There is no argument to select a different project, and no way to request publishing all of them.

3. Expected behavior

al_publish should support non-interactive, explicit project targeting — e.g. one of:

  • a projectPath parameter (as the standalone almcp al_publish already accepts), to publish a specific project regardless of active editor, and/or
  • a scope parameter mirroring al_build (scope=current | scope=all) to publish the active project or every publishable app in the workspace in dependency order.

4. Context

5. Versions

  • AL Language: 18.0.x (pre-release)
  • VS Code: 1.124.0
  • OS: Windows

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedal-toolsMicrosoft.Dynamics.BusinessCentral.Development.Tools or related packages

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions