From c0b3ec7d9b5dfa2dbbe030f1c18b11b9c66513f6 Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Tue, 9 Jun 2026 23:52:15 -0400 Subject: [PATCH] feat(settings): lead MCP Access with plugin install, demote raw MCP Per operator: the plugin install should supersede the bare MCP connection in Settings, since the plugin incorporates the MCP and adds the session-start hook + skills. The Claude Code tab now leads with /plugin marketplace add + install (with a persisted marketplace-URL field and the base-URL/key/project-id prompts spelled out), and the old 'claude mcp add' command moves into a collapsed 'Advanced: connect the MCP only' disclosure. Co-Authored-By: Claude Opus 4.8 (1M context) --- frontend/src/views/SettingsView.vue | 97 ++++++++++++++++++++++++----- 1 file changed, 83 insertions(+), 14 deletions(-) diff --git a/frontend/src/views/SettingsView.vue b/frontend/src/views/SettingsView.vue index 3d5e762..63c107a 100644 --- a/frontend/src/views/SettingsView.vue +++ b/frontend/src/views/SettingsView.vue @@ -137,6 +137,18 @@ const claudeCodeCommand = computed(() => { --header "Authorization: Bearer ${effectiveApiKey.value}"`; }); +// Plugin install — the recommended path. The Scribe plugin bundles the MCP +// connection, a session-start hook that surfaces your rules, and the Scribe +// process-skills. The marketplace is the Scribe app's own git repo; persisted +// per-browser like the MCP fields above. +const _MKT_KEY = 'plugin_marketplace_url'; +const pluginMarketplaceUrl = ref(localStorage.getItem(_MKT_KEY) || ''); +watch(pluginMarketplaceUrl, (v) => localStorage.setItem(_MKT_KEY, (v || '').trim())); +const pluginInstallCommands = computed(() => { + const mkt = (pluginMarketplaceUrl.value || '').trim() || '.git'; + return `/plugin marketplace add ${mkt}\n/plugin install scribe@scribe-plugin`; +}); + const mcpConfigSnippet = computed(() => JSON.stringify({ mcpServers: { [effectiveMcpName.value]: { @@ -1546,20 +1558,64 @@ function formatUserDate(iso: string): string { -
    -
  1. - Register the server with Claude Code: -
    -
    {{ claudeCodeCommand }}
    - -
    -
  2. -
  3. - Verify the connection by running /mcp inside Claude Code — {{ effectiveMcpName }} should appear as connected. -
  4. -
+
+

+ Recommended — install the Scribe plugin. One install wires up the MCP + connection, a session-start hook that surfaces your rules, and the Scribe process-skills. +

+ +
    +
  1. + Add the marketplace and install the plugin: +
    +
    {{ pluginInstallCommands }}
    + +
    +
  2. +
  3. + When prompted, enter your Scribe base URL ({{ origin }}), + an API key (generate one above), and optionally a + project id to scope the session-start context. +
  4. +
  5. + Restart Claude Code — /mcp shows scribe connected and your + standing rules load at session start. +
  6. +
+ +
+ Advanced: connect the MCP only (no plugin) +
    +
  1. + Register just the MCP server: +
    +
    {{ claudeCodeCommand }}
    + +
    +
  2. +
  3. + Verify with /mcp{{ effectiveMcpName }} should appear as connected. + You won't get the session-start rule push or the Scribe skills this way. +
  4. +
+
+
    @@ -3162,6 +3218,19 @@ function formatUserDate(iso: string): string { } .mcp-code-row .mcp-code { margin-top: 0; } .mcp-code-row .btn-sm { white-space: nowrap; } +.mcp-advanced { + margin-top: 1.25rem; + border-top: 1px solid var(--color-border, rgba(255, 255, 255, 0.1)); + padding-top: 0.75rem; +} +.mcp-advanced summary { + cursor: pointer; + font-size: 0.85rem; + opacity: 0.75; + user-select: none; +} +.mcp-advanced summary:hover { opacity: 1; } +.mcp-advanced[open] summary { margin-bottom: 0.5rem; } .mcp-hint { margin-top: 0.5rem; font-size: 0.8rem;