Skip to content

mcp: plugin-provided MCP servers cannot participate in config lookup/merge (McpPluginWrapper lacks server_config) #286

Description

@ericleepi314

File: src/services/mcp/config.py:577-581

TODO(Phase 7 follow-up): extend ``McpPluginWrapper`` with a
``server_config: McpServerConfig`` field, set at registration time,
and surface it here. Until that lands, plugin-provided MCP servers
cannot participate in the per-name lookup or the merge.

The plugin-scope loader currently returns {} unconditionally, so get_all_mcp_configs() and get_mcp_config_by_name() never see plugin-provided servers.

Impact: Any MCP server shipped by a plugin is invisible to the config aggregation layer — it cannot be looked up by name, does not appear in /mcp listings driven by the merge, and cannot be overridden/filtered by scope policy the way user/project/enterprise servers are.

Fix sketch: Add server_config: McpServerConfig to McpPluginWrapper, populate it at plugin registration, and have the plugin-scope loader return {name: ScopedMcpServerConfig(config=wrapper.server_config, scope="plugin")} so it flows through filter_mcp_servers_by_policy like every other scope.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions