aws / aws/amazon-q-developer-cli

V2 TUI sends empty mcpServers[] to ACP — MCP servers never load in new TUI mode

Open
#3,814 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
2k
Forks
439
PR merge metrics
No merged PRs in 30d

Description

## Summary

MCP servers defined in ~/.kiro/settings/mcp.json never load when using the V2 TUI (default mode). They work correctly with --classic and
--no-interactive.

## Version

kiro-cli 2.4.1, Linux x86_64

## Root Cause

The TUI (bun/tui.js) sends mcpServers: [] in the session/new ACP request, even when:
- ~/.kiro/settings/mcp.json defines servers
- The agent config has includeMcpJson: true
- --require-mcp-startup is passed on the command line

## Evidence (ACP wire trace via KIRO_ACP_RECORD_PATH)

The session/new request sent by TUI to ACP:
{\"method\":\"session/new\",\"params\":{\"cwd\":\"/path\",\"mcpServers\":[]}}

The mcpServers array is empty. The ACP never receives the server definitions.

## Reproduction

1. Define MCP servers in ~/.kiro/settings/mcp.json (stdio/docker type)
2. Create agent with includeMcpJson: true
3. Run: kiro-cli chat --agent my-agent --require-mcp-startup
4. Ask the agent: do you have MCP tools?
5. Agent says NO — no MCP tools available
6. No docker containers spawned for MCP servers

## Workaround

Use --classic flag:
kiro-cli chat --agent my-agent --require-mcp-startup --classic

Classic mode loads MCPs correctly (shows 4 of 4 mcp servers initialized).

## Process tree comparison

Default TUI (broken):
kiro-cli-chat chat --require-mcp-startup
-> bun tui.js
-> kiro-cli-chat acp (NO docker children, NO MCP)

Classic mode (works):
kiro-cli-chat chat --require-mcp-startup --classic
-> docker (mcp-server-1)
-> docker (mcp-server-2)
-> docker (mcp-server-3)
-> docker (mcp-server-4)

## Related

- #3640 (closed) — similar but for external ACP clients, not internal TUI
- #3782 (open) — same pattern: per-agent knowledgebases not initialized in new TUI" --force

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.