From 48cc8513bd8525cf3ffe6b246f901ea5defa83cc Mon Sep 17 00:00:00 2001 From: Greg Spencer Date: Mon, 22 Sep 2025 15:59:29 -0700 Subject: [PATCH 1/2] Mark "root" as required. --- pkgs/dart_mcp/CHANGELOG.md | 1 + pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/dart_mcp/CHANGELOG.md b/pkgs/dart_mcp/CHANGELOG.md index 295e3cce..914b6c9f 100644 --- a/pkgs/dart_mcp/CHANGELOG.md +++ b/pkgs/dart_mcp/CHANGELOG.md @@ -3,6 +3,7 @@ - Update the tool calling example to include progress notifications. - Remove a reference to "screenshot" for a generic error that occurs for more than just screenshots. +- Mark the "root" parameter for create_project required. ## 0.3.3 diff --git a/pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart b/pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart index 64a5bf7c..60fb31a0 100644 --- a/pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart +++ b/pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart @@ -253,7 +253,11 @@ base mixin DashCliSupport on ToolsSupport, LoggingSupport, RootsTrackingSupport 'boilerplate and example code. Defaults to true.', ), }, - required: [ParameterNames.directory, ParameterNames.projectType], + required: [ + ParameterNames.directory, + ParameterNames.projectType, + ParameterNames.root, + ], ), ); From 4208f851c3e5ede9781c6c2d65206a9513ff7dce Mon Sep 17 00:00:00 2001 From: Greg Spencer Date: Mon, 22 Sep 2025 17:00:12 -0700 Subject: [PATCH 2/2] Fix test --- pkgs/dart_mcp_server/test/tools/dart_cli_test.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/dart_mcp_server/test/tools/dart_cli_test.dart b/pkgs/dart_mcp_server/test/tools/dart_cli_test.dart index f7e30d1d..fdfa84b6 100644 --- a/pkgs/dart_mcp_server/test/tools/dart_cli_test.dart +++ b/pkgs/dart_mcp_server/test/tools/dart_cli_test.dart @@ -434,7 +434,7 @@ dependencies: expect(result.isError, true); expect( (result.content.first as TextContent).text, - contains('missing `root` key'), + contains('Required property "root" is missing'), ); expect(testProcessManager.commandsRan, isEmpty); });