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.
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.
Converts a server description into the editable form representation, or undefined if unsupported.
ProtectedtoProtectedto
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.