Skip to content

Commit 24704e5

Browse files
committed
docs(server): update documentation to include PSR-16 session store
1 parent 84daa9f commit 24704e5

File tree

2 files changed

+22
-5
lines changed

2 files changed

+22
-5
lines changed

README.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -190,23 +190,40 @@ $response = $server->run($transport);
190190
By default, the SDK uses in-memory sessions. You can configure different session stores:
191191

192192
```php
193-
use Mcp\Server\Session\InMemorySessionStore;
194193
use Mcp\Server\Session\FileSessionStore;
194+
use Mcp\Server\Session\InMemorySessionStore;
195+
use Mcp\Server\Session\Psr16StoreSession;
196+
use Symfony\Component\Cache\Psr16Cache;
197+
use Symfony\Component\Cache\Adapter\RedisAdapter;
195198

196-
// Use default in-memory sessions (TTL only)
199+
// Use default in-memory sessions with custom TTL
197200
$server = Server::builder()
198201
->setSession(ttl: 7200) // 2 hours
199202
->build();
200203

201-
// Use file-based sessions
204+
// Override with file-based storage
202205
$server = Server::builder()
203206
->setSession(new FileSessionStore(__DIR__ . '/sessions'))
204207
->build();
205208

206-
// Use in-memory with custom TTL
209+
// Override with in-memory storage and custom TTL
207210
$server = Server::builder()
208211
->setSession(new InMemorySessionStore(3600))
209212
->build();
213+
214+
// Override with PSR-16 cache-based storage
215+
$redisAdapter = new RedisAdapter(
216+
RedisAdapter::createConnection('redis://localhost:6379'),
217+
'mcp_sessions'
218+
);
219+
220+
$server = Server::builder()
221+
->setSession(new Psr16StoreSession(
222+
cache: new Psr16Cache($redisAdapter),
223+
prefix: 'mcp-',
224+
ttl: 3600
225+
))
226+
->build();
210227
```
211228

212229
### Discovery Caching

docs/server-builder.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ $server = Server::builder()
150150

151151
// Override with file-based storage
152152
$server = Server::builder()
153-
->setSession(new FileSessionStore('/tmp/mcp-sessions'))
153+
->setSession(new FileSessionStore(__DIR__ . '/sessions'))
154154
->build();
155155

156156
// Override with in-memory storage and custom TTL

0 commit comments

Comments
 (0)