Skip to content

Feature request: hook/notification event when MCP server startup completes (all connected or failed) #5458

Open

Description

@kokjinWoo

Summary

Add a way to be notified when startup MCP initialization has settled, i.e. every configured MCP server is either connected or failed.

Motivation

With several MCP servers configured (filesystem, docling, figma, browserbase, playwright, atlassian), startup takes a while and some servers fail (e.g. OAuth challenge, timeouts). Today there is no signal for "startup done":

  • hooks.sessionStart is documented only as running "when a session starts or resumes", not after MCP initialization settles.
  • notifications / beep only fire on idle turns and attention requests.
  • Live status is only visible in-session via /mcp list; copilot mcp list shows configuration only.
  • Logs in ~/.copilot/logs contain warnings/errors but no clear "all servers settled" line.

So users cannot tell when it is safe to start prompting that relies on MCP tools.

Proposal

Any of:

  1. A new hook event (e.g. mcpStartupComplete) with a payload listing each server and its status (connected / failed: <reason>).
  2. Extend notifications / beep to fire once when MCP startup settles.
  3. Document whether sessionStart waits for MCP initialization, and expose per-server status to hooks.

Environment

Copilot CLI 1.0.109, macOS

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions