Skip to content

Commit 663522a

Browse files
committed
Fix manual registration of capabilities via ServerBuilder
1 parent 91323d3 commit 663522a

File tree

2 files changed

+4
-7
lines changed

2 files changed

+4
-7
lines changed

phpstan-baseline.neon

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -570,12 +570,6 @@ parameters:
570570
count: 1
571571
path: src/Server/ServerBuilder.php
572572

573-
-
574-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:registerManualElements\(\) is unused\.$#'
575-
identifier: method.unused
576-
count: 1
577-
path: src/Server/ServerBuilder.php
578-
579573
-
580574
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withDiscovery\(\) has parameter \$excludeDirs with no value type specified in iterable type array\.$#'
581575
identifier: missingType.iterableValue

src/Server/ServerBuilder.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
use Psr\Container\ContainerInterface;
3535
use Psr\EventDispatcher\EventDispatcherInterface;
3636
use Psr\Log\LoggerInterface;
37+
use Psr\Log\NullLogger;
3738
use Psr\SimpleCache\CacheInterface;
3839

3940
/**
@@ -218,6 +219,8 @@ public function build(): Server
218219
$container = $this->container ?? new Container();
219220
$registry = new Registry(new ReferenceHandler($container), $this->eventDispatcher, $this->logger);
220221

222+
$this->registerManualElements($registry, $this->logger);
223+
221224
if (null !== $this->discoveryBasePath) {
222225
$discovery = new Discoverer($registry, $this->logger);
223226
$discovery->discover($this->discoveryBasePath, $this->discoveryScanDirs, $this->discoveryExcludeDirs);
@@ -233,7 +236,7 @@ public function build(): Server
233236
* Helper to perform the actual registration based on stored data.
234237
* Moved into the builder.
235238
*/
236-
private function registerManualElements(Registry $registry, LoggerInterface $logger): void
239+
private function registerManualElements(Registry $registry, LoggerInterface $logger = new NullLogger()): void
237240
{
238241
if (empty($this->manualTools) && empty($this->manualResources) && empty($this->manualResourceTemplates) && empty($this->manualPrompts)) {
239242
return;

0 commit comments

Comments
 (0)