| 1 | ## Примеры аргументов (JSON) |
| 2 | |
| 3 | Фрагмент подключается к `MCP-TOOLS.md` при `dotnet run --project tools/ExportMcpManifest -- --write`. Редактируй этот файл, а не сгенерированный блок выше. |
| 4 | |
| 5 | ### `build_structured` — Release, без restore, доп. аргументы MSBuild |
| 6 | |
| 7 | ```json |
| 8 | { |
| 9 | "solution_path": "D:/repo/App.sln", |
| 10 | "configuration": "Release", |
| 11 | "no_restore": true, |
| 12 | "additional_arguments": ["-v", "m"] |
| 13 | } |
| 14 | ``` |
| 15 | |
| 16 | ### `build_structured` — решение `.slnx` по пути к файлу |
| 17 | |
| 18 | ```json |
| 19 | { |
| 20 | "solution_path": "D:/repo/CascadeIDE.slnx", |
| 21 | "configuration": "Debug" |
| 22 | } |
| 23 | ``` |
| 24 | |
| 25 | ### `run_tests` — фильтр по полному имени, без повторной сборки |
| 26 | |
| 27 | ```json |
| 28 | { |
| 29 | "solution_path": "D:/repo/Tests/Tests.csproj", |
| 30 | "filter": "FullyQualifiedName~MyNamespace.MyClass", |
| 31 | "no_build": true, |
| 32 | "configuration": "Debug" |
| 33 | } |
| 34 | ``` |
| 35 | |
| 36 | ### `run_tests` — целевой TFM и `--no-restore` |
| 37 | |
| 38 | ```json |
| 39 | { |
| 40 | "solution_path": "D:/repo/App.sln", |
| 41 | "framework": "net10.0", |
| 42 | "no_restore": true |
| 43 | } |
| 44 | ``` |
| 45 | |
| 46 | ### `publish_structured` — вывод в каталог |
| 47 | |
| 48 | ```json |
| 49 | { |
| 50 | "solution_path": "D:/repo/App/App.csproj", |
| 51 | "configuration": "Release", |
| 52 | "output": "D:/artifacts/publish", |
| 53 | "no_restore": false |
| 54 | } |
| 55 | ``` |
| 56 | |
| 57 | ### `get_job_status` / `get_job_log` / `cancel_job` |
| 58 | |
| 59 | ```json |
| 60 | { "job_id": "<id из ответа build_structured, run_tests или publish_structured>" } |
| 61 | ``` |
| 62 | |
| 63 | ```json |
| 64 | { "job_id": "<id>", "offset_lines": 0, "limit_lines": 200 } |
| 65 | ``` |
| 66 | |
| 67 | Очередь single-flight: при `status: busy` и `retry_after_seconds` повтори вызов позже. |
| 68 | |