[Examples][Tests] Make the MCP Apps example work over HTTP, and pin it (#439)
* [Examples][Tests] Make the MCP Apps example work over HTTP, and pin it It was the only example without a session store, so every request under `php -S` or php-fpm - each its own process - was answered "Session not found or has expired". It now uses a FileSessionStore like the others. Inspector snapshots pin what the extension actually puts on the wire: the ui:// resource's `text/html;profile=mcp-app` MIME type and `ui` marker, and the `_meta.ui` on the tool that links the two. * Apply suggestion from @chr-hertel * Apply suggestion from @chr-hertel
This commit is contained in:
parent
7407661260
commit
0751a83658
1 changed files with 130 additions and 0 deletions
|
|
@ -18,12 +18,14 @@ use Mcp\Schema\Extension\Apps\McpApps;
|
|||
use Mcp\Schema\Extension\Apps\ToolVisibility;
|
||||
use Mcp\Schema\Extension\Apps\UiToolMeta;
|
||||
use Mcp\Server;
|
||||
use Mcp\Server\Session\FileSessionStore;
|
||||
|
||||
logger()->info('Starting MCP Apps Example Server...');
|
||||
|
||||
$server = Server::builder()
|
||||
->setServerInfo('MCP Apps Weather Example', '1.0.0')
|
||||
->setLogger(logger())
|
||||
->setSession(new FileSessionStore(__DIR__.'/sessions'))
|
||||
->enableExtension(new McpApps())
|
||||
->addResource(
|
||||
[WeatherApp::class, 'getWeatherApp'],
|
||||
|
|
|
|||
Loading…
Reference in a new issue