Protected ReadonlyeditProtected ReadonlymcpProtected ReadonlymessageProtected ReadonlypreferenceProtectedapplyMerge user overrides into the config blob (only fields the dialog collects).
ProtectedbuildBuild a registryMetadata block from an install entry's flat provenance fields,
or return undefined when the entry carries no registry link (e.g. a hand-crafted
install-mcp URL without an id).
Install an MCP server from a self-contained entry - used by registry install actions
and the install-mcp URL handler. Writes the config blob to mcpServers[localName]
along with registry-provenance metadata, applying any user-supplied overrides
collected by the install dialog.
Optionaloverrides: MCPInstallOverridesOpens the "Add MCP Server" dialog and persists the result.
Opens the "Edit MCP Server" dialog pre-filled from server and persists the result.
ProtectedreadPersist the form to the user preference. Preserves any extra fields on an existing entry
(e.g. registryMetadata) since the dialog only edits user-facing fields.
ProtectedtoProtectedtoProtectedto
Default MCPServerEditor implementation. The DOM-touching
MCPServerEditDialogis created through an injected MCPServerEditDialogFactory rather than imported directly, so this service stays loadable in Node-only unit tests.