ClawdDotNet als MCP-Server: durch dieselben Pruefstellen (#713)
Eine fremde Laufzeit oder der eigene Claude Code des Menschen spricht per MCP mit der Instanz. Der Server bietet genau die Werkzeuge des Agenten hinter dem Token an; jeder Aufruf laeuft durch die Engine wie ein Aufruf des eigenen Modells (Rechtetor, Vorpruefung, Werkzeugrechte, Staging, Audit mit Quelle mcp, Rahmung), und der Aufrufer gilt als Leser fremder Inhalte (#715). Eigener Socket mcp.sock statt manager.sock: ueber den Instanz-Socket antwortet die Verwaltung ohne Token, ueber mcp.sock gibt es nur /mcp und nur mit MCP-Token. Lauf-Tokens nur im Speicher, enden mit dem Lauf; persoenliche Tokens (hoechstens 90 Tage, widerrufbar, nur als SHA-256) in der Agentenansicht. Transporte: HTTP auf mcp.sock, Weboberflaeche und Manager (/mcp/{instanz}), stdio ueber ClawdDotNet --mcp-bridge (Token nur aus Umgebung oder 0600-Datei). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
b5f65b8cf7
commit
cb46289bb6
@@ -135,6 +135,16 @@ public sealed record TaskDto(
|
||||
decimal? EstimateUsd = null,
|
||||
DateTime? FillAlertedAt = null);
|
||||
|
||||
/// <summary>#713: A personal MCP token as listed — never the token itself.</summary>
|
||||
public sealed record McpTokenDto(
|
||||
string Id, string AgentId, string Label, DateTime CreatedAt, DateTime ExpiresAt, DateTime? RevokedAt, bool Active);
|
||||
|
||||
/// <summary>#713: A new personal token — the only answer that carries it in clear.</summary>
|
||||
public sealed record McpTokenIssuedDto(McpTokenDto Info, string Token);
|
||||
|
||||
/// <summary>#713: What the WebUI sends to issue a personal token.</summary>
|
||||
public sealed record McpTokenInputDto(string AgentId, string? Label = null, int? Days = null);
|
||||
|
||||
/// <summary>#717: A special budget — the amount a human approved for a task tree, and what it used.</summary>
|
||||
public sealed record SpecialBudgetDto(string TaskId, decimal AmountUsd, decimal SpentUsd, string Reason, string RequestedBy, DateTime ApprovedAt);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user