Skip to content

🤖 feat: improve MCP servers (global config, status, startup)#2100

Open
ibetitsmike wants to merge 1 commit intomainfrom
mike/mcp-issue-2060
Open

🤖 feat: improve MCP servers (global config, status, startup)#2100
ibetitsmike wants to merge 1 commit intomainfrom
mike/mcp-issue-2060

Conversation

@ibetitsmike
Copy link
Contributor

Summary

Implements MCP improvements from issue #2060:

  • Adds a global/shared MCP config file (~/.mux/mcp.jsonc) and merges global + project servers.
  • Makes MCP server startup resilient (parallel startup + per-server timeouts) so one hung server can’t block a send.
  • Exposes per-server runtime status + restart controls in the Workspace MCP modal.
  • Emits a non-spam chat warning when MCP tools are unavailable due to startup failures.

Background

Issue: #2060

Implementation

  • Config scopes
    • Global config: ~/.mux/mcp.jsonc
    • Project config: <project>/.mux/mcp.jsonc
    • Precedence: global < project < inline
  • Startup reliability
    • Adds timeouts around spawn/connect/list-tools and starts servers in parallel.
  • Workspace UX
    • Workspace MCP modal now shows merged servers, origin (global/project), runtime status, and restart buttons.
    • Restart is disabled while a stream is active or when there are unsaved overrides.
  • Chat warnings
    • Injects a synthetic assistant warning message on send when MCP servers fail, with dedupe/cooldown.

Validation

  • make static-check

Risks

  • Servers that take >10s to spawn/connect/list tools will be treated as failed and retried later; this is intentional to avoid hangs.

Generated with mux • Model: openai:gpt-5.2 • Thinking: xhigh • Cost: $5.22

- Add global MCP config (~/.mux/mcp.jsonc) + diagnostics + UI\n- Add startup timeouts/parallel start + non-spam chat warnings\n- Add per-workspace runtime status + restart controls\n- Update docs/system prompt copy\n\n---\n\n_Generated with `mux` • Model: `openai:gpt-5.2` • Thinking: `xhigh` • Cost: `.22`_\n\n<!-- mux-attribution: model=openai:gpt-5.2 thinking=xhigh costs=5.22 -->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant