#!/usr/bin/env php info('Starting MCP Manual Registration Server...'); $server = Server::builder() ->setServerInfo('Explicit Registration Server', '1.0.0') ->setLogger(logger()) ->setContainer(container()) ->addTool([SimpleHandlers::class, 'echoText'], 'echo_text') ->addResource([SimpleHandlers::class, 'getAppVersion'], 'app://version', 'application_version', mimeType: 'text/plain') ->addPrompt([SimpleHandlers::class, 'greetingPrompt'], 'personalized_greeting') ->addResourceTemplate([SimpleHandlers::class, 'getItemDetails'], 'item://{itemId}/details', 'get_item_details', mimeType: 'application/json') ->setCapabilities(new ServerCapabilities( tools: true, toolsListChanged: false, resources: true, resourcesSubscribe: false, resourcesListChanged: false, prompts: true, promptsListChanged: false, logging: false, completions: false, )) ->build(); $result = $server->run(transport()); logger()->info('Server listener stopped gracefully.', ['result' => $result]); shutdown($result);