From 044d628a47f063bcbbd9adba7860542156a0c66e Mon Sep 17 00:00:00 2001 From: Clawd Date: Sun, 1 Mar 2026 10:15:14 -0800 Subject: feat(mcp): add tool discovery and per-tool permissions - Add MCP protocol client for tool discovery (initialize + tools/list) - Show discovered tools in settings UI with enable/disable checkboxes - Build explicit allowedTools list from enabled MCP tools - Remove bypassPermissions hack - now uses proper tool allowlisting - Format: mcp__servername__toolname for SDK allowedTools --- renderer/src/styles/globals.css | 74 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) (limited to 'renderer/src/styles/globals.css') diff --git a/renderer/src/styles/globals.css b/renderer/src/styles/globals.css index 6cf3dc7..20275ae 100644 --- a/renderer/src/styles/globals.css +++ b/renderer/src/styles/globals.css @@ -1348,3 +1348,77 @@ html[data-theme="light"] .settings-textarea:focus { padding-top: 16px; border-top: 1px solid var(--border); } + +/* MCP Server Card with Tools */ +.mcp-server-card { + display: flex; + flex-direction: column; + padding: 12px; + background: var(--bg-secondary); + border: 1px solid var(--border); + border-radius: 4px; +} + +.mcp-server-header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; +} + +.mcp-tools-section { + margin-top: 12px; + padding-top: 12px; + border-top: 1px solid var(--border); +} + +.mcp-tools-header { + font-size: 11px; + font-weight: 500; + text-transform: uppercase; + letter-spacing: 0.05em; + color: var(--text-secondary); + margin-bottom: 8px; +} + +.mcp-tools-list { + display: flex; + flex-direction: column; + gap: 6px; +} + +.mcp-tool-item { + display: flex; + align-items: flex-start; + gap: 8px; + font-size: 12px; + cursor: pointer; +} + +.mcp-tool-item input[type="checkbox"] { + margin-top: 2px; + cursor: pointer; +} + +.mcp-tool-name { + font-family: var(--font-mono, monospace); + color: var(--text-primary); + font-weight: 500; +} + +.mcp-tool-desc { + color: var(--text-secondary); + font-size: 11px; + margin-left: 4px; +} + +.mcp-tools-empty { + font-size: 11px; + color: var(--text-secondary); + font-style: italic; + margin-top: 8px; + padding: 8px; + background: var(--bg-tertiary); + border-radius: 4px; + text-align: center; +} -- cgit v1.2.3