execute method

  1. @override
Future<McpResponse> execute(
  1. McpRequest request
)
override

Execute the tool with given request

request contains the method call with parameters Returns a response with the result or error

Implementation

@override
Future<McpResponse> execute(McpRequest request) async {
  try {
    // Validate parameters
    final validationError = validateParams(request.params);
    if (validationError != null) {
      return McpResponse.invalidParams(
        request.id,
        validationError,
      );
    }

    // Execute the tool logic
    final result = await executeImpl(request.params ?? {});

    return McpResponse.result(request.id, result);
  } catch (e) {
    return McpResponse.internalError(
      request.id,
      e.toString(),
    );
  }
}