Forge
csharpc0b81713
1using System.Text;
2
3namespace ExportMcpManifest;
4
5/// <summary>Markdown для агента/доков из того же источника, что и <c>mcp-tools.manifest.json</c>.</summary>
6internal static class McpToolsDocMarkdown
7{
8 public static string Build(IEnumerable<(string Name, string Description)> tools)
9 {
10 var sb = new StringBuilder();
11 sb.AppendLine("# Agent Notes MCP — каталог тулов");
12 sb.AppendLine();
13 sb.AppendLine("<!-- GENERATED:ToolCatalog START -->");
14 sb.AppendLine();
15 sb.AppendLine("> Автогенерация из `ToolCatalog.Build()` в репозитории. Не править этот блок вручную.");
16 sb.AppendLine(">");
17 sb.AppendLine("> Обновление: из каталога `agent-notes-mcp` выполнить `dotnet run --project tools/ExportMcpManifest -- --write`.");
18 sb.AppendLine(">");
19 sb.AppendLine("> Тексты совпадают с полем `description` у инструментов MCP; полная схема аргументов — в `inputSchema` (например через `list_tools`).");
20 sb.AppendLine();
21
22 foreach (var (name, description) in tools)
23 {
24 sb.AppendLine($"### `{name}`");
25 sb.AppendLine();
26 sb.AppendLine(description.TrimEnd());
27 sb.AppendLine();
28 }
29
30 sb.AppendLine("<!-- GENERATED:ToolCatalog END -->");
31 sb.AppendLine();
32 return sb.ToString();
33 }
34}
35
View only · write via MCP/CIDE