AL MCP (VS Code facade): al_publish / al_debug block on interactive launch-configuration picker — no non-interactive target, breaks autonomous agent loops
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- vscode
- Domain
- developer-experience, tooling
Research direction
Start with the facade al_publish and al_debug entry points and compare their accepted parameters with standalone almcp, then trace how launch.json selection reaches the AL launch path. Done means both facade tools can select a target or use a documented deterministic default without waiting for a VS Code picker.
Written by the indexing model from the issue text.
Description
1. Describe the bug
When driving the in-VS-Code AL MCP facade tools from an agent (GitHub Copilot Chat), al_publish cannot run unattended. When the active project has more than one configuration in launch.json, the tool triggers VS Code''s interactive "select configuration" QuickPick and then blocks waiting for a human click. An autonomous agent cannot answer a GUI picker, so the call stalls indefinitely.
The facade al_publish exposes no target parameters ΓÇö there is no configuration / launchConfigName, no environmentName / environmentType / server / serverInstance / tenant / authentication. Target resolution is fully delegated to the AL extension''s launch path, which prompts. There is no way to specify the target in the tool call itself.
This differs from the standalone almcp process, whose al_publish does accept projectPath / environmentName / environmentType / tenant / schemaUpdateMode. The facade variant accepts none of these.
al_debug (zero parameters) is affected the same way ΓÇö same launch-config dependency, same picker.
2. To Reproduce
- Open a workspace whose active project has two or more entries in
launch.json. - From Copilot Chat, invoke
al_publishwithdebug=false. - A "select configuration" QuickPick appears in the VS Code UI.
- The tool returns
{"error":"No configuration selected"}(code: PUBLISH_FAILED) if the picker is dismissed, or hangs until a human selects an entry.
Tool input used:
{ "debug": false, "skipbuild": false, "type": "full" }
(No other parameters are accepted by the facade tool.)
3. Expected behavior
al_publish (and al_debug) should be drivable without UI interaction ΓÇö e.g. one of:
- a
configuration/launchConfigNameparameter to select alaunch.jsonentry by name, or - explicit connection parameters (
server,serverInstance,tenant,authentication,environmentName,environmentType) like the standalonealmcp, or - a documented deterministic default (e.g. the active Run/Debug selection or first config) with no interactive fallback when invoked via MCP.
4. Context
al_buildis unaffected ΓÇö it takes a cleanscopeparameter and runs fully unattended.- The blocker is purely the missing non-interactive target; it is independent of the publish destination (reproduces regardless of whether the target is reachable).
5. Versions
- AL Language:
18.0.x(pre-release) - VS Code:
1.124.0 - OS: Windows
Internal work item: AB#648588
- Dominant language
- PowerShell
- Stars
- 881
- Forks
- 285
- Avg merge
- 3d 36m
- Merged PRs (30d)
- 1
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.
More from microsoft/AL
-
accepted al-tools bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
AL 18.0.2732683 regression: System.Drawing types cannot be resolved from assembly probing paths Open
Difficulty 4/5 3-5 days Newbie friendliness 48/100
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
-
Difficulty 3/5 1-2 days Newbie friendliness 68/100
-
accepted packaging
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
hemilabs/ui-monorepo#2332 ·
-
Help-Wanted Needs-Triage Package-Update
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
microsoft/winget-pkgs#438662 ·
-
priority: p3
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
googleapis/librarian#7636 ·
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
olcf/olcf-test-harness#278 · 1 comment ·