Skip to content

🤖 feat: Global MCP configuration for sharing servers across projects #1643

@stirby

Description

@stirby

Problem

Currently, MCP servers are configured per-project in <project>/.mux/mcp.jsonc. When a user wants to use the same MCP server (e.g., Svelte, GitHub, database tools) across multiple projects, they must duplicate the entire configuration in each project's config file.

This is tedious and repetitive, especially for:

  • Common utility MCPs used across many projects
  • Framework-specific MCPs (Svelte, React, Vue) that apply to multiple repos
  • Personal tooling MCPs that a developer always wants available

Proposed Solution

Introduce a global MCP configuration stored in ~/.mux/mcp.jsonc (or similar location) that defines MCP servers available across all projects.

Key Requirements

  1. Global config location: ~/.mux/mcp.jsonc for user-wide MCP definitions
  2. Per-project toggle: Projects should be able to enable/disable specific global MCPs
    • Some projects may not need certain global MCPs
    • Prevents tool pollution in contexts where they're not relevant
  3. Override capability: Project-level config should be able to override global config for the same server name
  4. UI integration: The MCP panel should show both global and project-level MCPs, with clear distinction

Config Hierarchy (proposed)

1. ~/.mux/mcp.jsonc          (global - user's personal MCPs)
2. <project>/.mux/mcp.jsonc  (project - team-shared MCPs)  
3. <workspace>/.mux/mcp.local.jsonc (workspace - local overrides, gitignored)

Example UX

In the MCP panel or via /mcp commands:

  • "Add from library" button showing previously configured MCPs from other projects or global config
  • Quick toggle to enable/disable global MCPs per-project
  • Visual indicator showing whether an MCP is global vs project-specific

Alternatives Considered

  • Copy config between projects: Works but doesn't solve the maintenance problem—updates must be applied everywhere
  • Symlinks: Fragile and platform-dependent

Generated with mux • Model: anthropic:claude-opus-4-5 • Thinking: high • Cost: $0.58

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or functionality

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions