*/ class ListToolsRequestHandler implements RequestHandlerInterface { /** * @param array $toolDefinitions */ public function __construct(private array $toolDefinitions) { } public function supports(Request $request): bool { return $request instanceof ListToolsRequest; } /** * @return Response */ public function handle(Request $request, SessionInterface $session): Response { \assert($request instanceof ListToolsRequest); return new Response($request->getId(), new ListToolsResult(array_values($this->toolDefinitions), null)); } }