镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Support stdio transport server on the session/new request in the acp mode. #3889

Description

@Angeart

Describe the bug

Agent Client Protocol says All agents MUST support this transport but Copilot CLI has Rejected these stdio servers.

Affected version

GitHub Copilot CLI 1.0.63

Steps to reproduce the behavior

  1. Create ACP Client and it connect to Copilot CLI
  2. request a session/new request with mcpServers config include the stdio transport servers.
  3. Copilot CLI will rejected these stdio servers. (I discovered Copilot CLI says reject in the process log)

Expected behavior

These will launch correctly stdio transport MCP Servers via session/new request

Additional context

Currently workaround:
mcpServers config pass to copilot cli via --additional-mcp-config=JSON args, these works fine.

Is that the behavior correct?

thanks.

Activity

  1. added theissue type on Jun 23, 2026
  2. added
    area:non-interactiveNon-interactive mode (-p), CI/CD, ACP protocol, and headless automation
    area:mcpMCP server configuration, discovery, connectivity, OAuth, policy, and registry
    on Jun 24, 2026
  3. Varun-Patkar commented on Aug 26, 2026

    @Varun-Patkar

    Confirmed this is still reproducible on Windows 11 with both currently available builds tested on 2026-08-26:

    • Official WinGet stable: GitHub Copilot CLI 1.0.80
    • VS Code-managed build: 1.0.81-11

    The ACP handshake and session creation succeed. A minimal session/new request containing a client-supplied stdio MCP server receives a normal successful response with a session ID:

    {
      "jsonrpc": "2.0",
      "id": 2,
      "method": "session/new",
      "params": {
        "cwd": "<absolute workspace path>",
        "mcpServers": [
          {
            "name": "echo-test",
            "command": "<absolute path to node executable>",
            "args": ["<absolute path to a minimal stdio MCP echo server>"],
            "env": []
          }
        ]
      }
    }

    However, the supplied server is not connected and is not exposed to the model. Sending /mcp list in that session shows only the built-in/plugin servers; echo-test is absent. No JSON-RPC error is returned for the MCP configuration.

    I also tested an explicit "type": "stdio" discriminator as a compatibility probe, with the same result. The standard ACP stdio shape without type matches the current ACP session setup documentation.

    Expected behavior: the stdio server supplied in session/new.params.mcpServers should be started, listed by /mcp list, and its tools should be available in that session.

    This blocks ACP clients that inject per-session tools such as isolated desktop/computer control or connected-app bridges. The command-line --additional-mcp-config workaround is not equivalent for these clients because server configuration and credentials are scoped to an individual session.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:mcpMCP server configuration, discovery, connectivity, OAuth, policy, and registryarea:non-interactiveNon-interactive mode (-p), CI/CD, ACP protocol, and headless automation

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions