Skip to content

Test: MCP autostart behavior and trust #258363

@connor4312

Description

@connor4312

Complexity: 4

Create Issue


This iteration we added a currently on-by-default setting to autostart MCP servers, chat.mcp.autostart. We generally require each MCP server to be started once so we know what tools it provides, and these tool caches can be cleared with the command MCP: Reset Tool Caches. So, install some more MCP servers in your user settings and workspace settings to test that:

  • With the setting turned on, you don't see the blue refresh icon. Instead, the servers are started automatically when you submit a chat request. (Verify its state in MCP: List Servers)
  • Chat should have access to the tools provided by new MCP servers in that first chat request. You can verify this either by asking a question that leads the model to use a tool, or checking that it's preset in the conversation log.
  • Servers installed in the workspace should get a trust prompt initially when started and whenever their configuration is changed. Specifically we should try to auto-start them if their config gets updated and trigger that trust prompt. Check that the various dialog options make sense. It should handle multiple servers prompting for trust in the same dialog. Cancelling out of the trust flow will allow the chat request to proceed without those servers.
  • If trust is denied to one or more servers, they should not get prompted again, but a user should be able to start them manually either in MCP: List Servers or via the code lens in the mcp.json. Note that we don't trigger a trust prompt for the code lens as the user is already looking right at their config when actioning on those. Trust state is remembered based on the server name.
  • If chat.mcp.autostart is set to never, servers should not autostart and the user should get the old behavior.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions