*/ final class InitializeHandler implements MethodHandlerInterface { public function __construct( public readonly ?ServerCapabilities $capabilities = new ServerCapabilities(), public readonly ?Implementation $serverInfo = new Implementation(), ) { } public function supports(HasMethodInterface $message): bool { return $message instanceof InitializeRequest; } public function handle(InitializeRequest|HasMethodInterface $message): Response { \assert($message instanceof InitializeRequest); return new Response($message->getId(), new InitializeResult($this->capabilities, $this->serverInfo), ); } }