Fix MCP-Allowlist: exakte Server-Form mcp__<name>__* statt nie-matchendem Glob

Die Claude-CLI-Permission-Engine parst eine Allowlist-Regel via split("__")
zu {serverName, toolName} und vergleicht den Servernamen per strenger
Gleichheit (===); ein '*' wirkt ausschliesslich im Tool-Teil, nie im
Server-Teil. Die generalisierte Form "mcp__*<name>*" parste damit zu einem
Server namens "*<name>*" und matchte NIE -> jeder ueber die MCP-Liste
eingetragene Server wurde headless still abgelehnt (Regression aus 5f7dec6).

- ClaudeCliService.cs: Allowlist-Glob mcp__*<name>* -> mcp__<name>__*
  (exakter Server + Tool-Wildcard, dieselbe Form wie mcp__web-search-prime__*);
  Kommentar erklaert die strenge Server-Gleichheit.
- index.html: UI-Hinweis korrigiert - Name muss exakt dem Tool-Praefix
  entsprechen (z.B. UnityMCP, nicht Unity); Freigabe als mcp__<name>__*.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
MelekiandClaude Opus 4.8 committed 2026-07-03 10:33:17 +02:00
1 parent 3ae94fb697
commit 9d21138e62
2 files changed
+9 -4

No files matched your search

+1 -1
View File
@@ -175,7 +175,7 @@
<label>MCP-Server <small>(optional, URL-basiert)</small></label>
<div class="mcp-servers" id="mcpServersList"></div>
<button type="button" id="addMcpServerBtn" class="add-cmd-btn">+ MCP-Server hinzufügen</button>
<small class="form-hint">Pro Eintrag: Name, URL (http/sse) und optionaler Token. Tools werden headless als <code>mcp__*&lt;name&gt;*</code> freigegeben.</small>
<small class="form-hint">Pro Eintrag: Name, URL (http/sse) und optionaler Token. Der Name muss <b>exakt</b> dem Tool-Präfix entsprechen (z.B. <code>UnityMCP</code>, nicht <code>Unity</code>). Tools werden headless als <code>mcp__&lt;name&gt;__*</code> freigegeben.</small>
<label>Telegram Bot</label>
<div id="telegramBotSelectCard" class="agent-select-card">
<div class="agent-select-empty"><i class="fa fa-paper-plane"></i> Kein Bot zugewiesen</div>