From 7196aab31fc5d49de4188933a23b52807cec489c Mon Sep 17 00:00:00 2001 From: mika kuns Date: Sat, 30 May 2026 14:05:30 +0200 Subject: [PATCH] feat(worker): add external MCP agent-listing tool Co-Authored-By: Claude Opus 4.7 --- src/ClaudeDo.Worker/External/AgentMcpTools.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 src/ClaudeDo.Worker/External/AgentMcpTools.cs diff --git a/src/ClaudeDo.Worker/External/AgentMcpTools.cs b/src/ClaudeDo.Worker/External/AgentMcpTools.cs new file mode 100644 index 0000000..8050960 --- /dev/null +++ b/src/ClaudeDo.Worker/External/AgentMcpTools.cs @@ -0,0 +1,18 @@ +using System.ComponentModel; +using ClaudeDo.Data.Models; +using ClaudeDo.Worker.Agents; +using ModelContextProtocol.Server; + +namespace ClaudeDo.Worker.External; + +[McpServerToolType] +public sealed class AgentMcpTools +{ + private readonly AgentFileService _agents; + + public AgentMcpTools(AgentFileService agents) => _agents = agents; + + [McpServerTool, Description("List available agent definition files (name, description, path) for use as a task's agent path.")] + public async Task> ListAgents(CancellationToken cancellationToken) + => await _agents.ScanAsync(cancellationToken); +}