Tool constructor
Tool({})
Implementation
Tool({
String? description,
required Map<String, Object?> inputSchema,
required String name,
ToolAnnotations? annotations,
Map<String, Object?>? meta,
Map<String, Object?>? outputSchema,
String? title,
ToolExecution? execution,
List<McpIcon>? icons,
Map<String, Object?>? extra,
}) : super.build({
...?extra,
if (description != null) 'description': $encode(description),
'inputSchema': $encode(inputSchema),
'name': $encode(name),
if (annotations != null) 'annotations': $encode(annotations),
if (meta != null) '_meta': $encode(meta),
if (outputSchema != null) 'outputSchema': $encode(outputSchema),
if (title != null) 'title': $encode(title),
if (execution != null) 'execution': $encode(execution),
if (icons != null) 'icons': $encode(icons),
});