php-sdk/phpstan-baseline.neon
Pavel Buchnev 99bf56eef8
Registry Architecture Refactoring - Enhanced Separation of Concerns (#46)
* refactor: Separate Registry concerns following SOLID principles [WIP]

- Extract ReferenceProvider and ReferenceRegistryInterface interfaces
- Create DefaultToolExecutor with ReferenceHandlerInterface
- Remove execution responsibility from Registry class
- Enable custom handler and executor implementations

* refactor: implement SOLID principles with separated execution concerns

* Create DefaultResourceReader, DefaultPromptGetter
* Refactor JsonRpc Handler and RequestHandlers to use dedicated executors
* Update ServerBuilder to support custom executors via dependency injection

* chore: remove extra comments

* feat: introduce DispatchableRegistry for enhanced tool and resource management

* refactor: use proper interfaces

* refactor: implement HandlerInterface for improved abstraction and flexibility

* test: add unit tests for DispatchableRegistry and Registry classes

* refactor: cover with unit tests Resource reader, Prompt getter and Tool executor

* cs fix

* phpstan fix

* test: add unit tests for CallToolHandler, GetPromptHandler, PingHandler, and ReadResourceHandler

* refactor: revert Handler

* chore: remove style guide for tests

* refactor: remove "Default" prefix from classes

* refactor: remove DispatchableRegistry

* refactor: use package specific exception classes

* refactor: remove DispatchableRegistry

* refactor: add logger support to PromptGetter and ResourceReader classes

* Update src/Capability/Prompt/PromptGetter.php

Co-authored-by: Christopher Hertel <mail@christopher-hertel.de>

* refactor: Use FQN for Resource class to avoid cs-fixer misinterpreting it as `resource`

* refactor: rename ToolExecutor to ToolCaller and related classes for clarity and consistency

* refactor: add missed docblock

* refactor: rename ToolExecutor references to ToolCaller

* refactor: rename ToolCallerTest property and variable references

* cs fix

* ignore some phpstan errors

---------

Co-authored-by: Christopher Hertel <mail@christopher-hertel.de>
2025-09-14 20:44:18 +02:00

595 lines
25 KiB
Text

parameters:
ignoreErrors:
-
message: '#^Call to static method invalidParams\(\) on an unknown class Mcp\\Example\\HttpUserProfileExample\\McpServerException\.$#'
identifier: class.notFound
count: 2
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Method Mcp\\Example\\HttpUserProfileExample\\McpElements\:\:generateBio\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Method Mcp\\Example\\HttpUserProfileExample\\McpElements\:\:getUserProfile\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Method Mcp\\Example\\HttpUserProfileExample\\McpElements\:\:listUserIds\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Method Mcp\\Example\\HttpUserProfileExample\\McpElements\:\:sendWelcomeMessage\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Method Mcp\\Example\\HttpUserProfileExample\\McpElements\:\:testToolWithoutParams\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^PHPDoc tag @throws with type Mcp\\Example\\HttpUserProfileExample\\McpServerException is not subtype of Throwable$#'
identifier: throws.notThrowable
count: 2
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Property Mcp\\Example\\HttpUserProfileExample\\McpElements\:\:\$users type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/02-discovery-http-userprofile/McpElements.php
-
message: '#^Expression on left side of \?\? is not nullable\.$#'
identifier: nullCoalesce.expr
count: 1
path: examples/02-discovery-http-userprofile/server.php
-
message: '#^Instantiated class StreamableHttpServerTransport not found\.$#'
identifier: class.notFound
count: 1
path: examples/02-discovery-http-userprofile/server.php
-
message: '#^Parameter \#1 \$transport of method Mcp\\Server\:\:connect\(\) expects Mcp\\Server\\TransportInterface, StreamableHttpServerTransport given\.$#'
identifier: argument.type
count: 1
path: examples/02-discovery-http-userprofile/server.php
-
message: '#^Method Mcp\\Example\\ManualStdioExample\\SimpleHandlers\:\:getItemDetails\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/03-manual-registration-stdio/SimpleHandlers.php
-
message: '#^Method Mcp\\Example\\ManualStdioExample\\SimpleHandlers\:\:greetingPrompt\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/03-manual-registration-stdio/SimpleHandlers.php
-
message: '#^Class Mcp\\CombinedHttpExample\\Manual\\ManualHandlers not found\.$#'
identifier: class.notFound
count: 2
path: examples/04-combined-registration-http/server.php
-
message: '#^Instantiated class Mcp\\Server\\Transports\\HttpServerTransport not found\.$#'
identifier: class.notFound
count: 1
path: examples/04-combined-registration-http/server.php
-
message: '#^Parameter \#1 \$transport of method Mcp\\Server\:\:connect\(\) expects Mcp\\Server\\TransportInterface, Mcp\\Server\\Transports\\HttpServerTransport given\.$#'
identifier: argument.type
count: 1
path: examples/04-combined-registration-http/server.php
-
message: '#^Method Mcp\\Example\\StdioEnvVariables\\EnvToolHandler\:\:processData\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/05-stdio-env-variables/EnvToolHandler.php
-
message: '#^Call to method addTask\(\) on an unknown class Mcp\\DependenciesStdioExample\\Services\\TaskRepositoryInterface\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Call to method completeTask\(\) on an unknown class Mcp\\DependenciesStdioExample\\Services\\TaskRepositoryInterface\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Call to method getSystemStats\(\) on an unknown class Mcp\\DependenciesStdioExample\\Services\\StatsServiceInterface\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Call to method getTasksForUser\(\) on an unknown class Mcp\\DependenciesStdioExample\\Services\\TaskRepositoryInterface\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:addTask\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:completeTask\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:getSystemStatistics\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:listUserTasks\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Parameter \$statsService of method Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:__construct\(\) has invalid type Mcp\\DependenciesStdioExample\\Services\\StatsServiceInterface\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Parameter \$taskRepo of method Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:__construct\(\) has invalid type Mcp\\DependenciesStdioExample\\Services\\TaskRepositoryInterface\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Property Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:\$statsService has unknown class Mcp\\DependenciesStdioExample\\Services\\StatsServiceInterface as its type\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Property Mcp\\Example\\DependenciesStdioExample\\McpTaskHandlers\:\:\$taskRepo has unknown class Mcp\\DependenciesStdioExample\\Services\\TaskRepositoryInterface as its type\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/McpTaskHandlers.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\InMemoryTaskRepository\:\:addTask\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/InMemoryTaskRepository.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\InMemoryTaskRepository\:\:getAllTasks\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/InMemoryTaskRepository.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\InMemoryTaskRepository\:\:getTasksForUser\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/InMemoryTaskRepository.php
-
message: '#^Property Mcp\\Example\\DependenciesStdioExample\\Service\\InMemoryTaskRepository\:\:\$tasks type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/InMemoryTaskRepository.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\StatsServiceInterface\:\:getSystemStats\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/StatsServiceInterface.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\SystemStatsService\:\:getSystemStats\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/SystemStatsService.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\TaskRepositoryInterface\:\:addTask\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/TaskRepositoryInterface.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\TaskRepositoryInterface\:\:getAllTasks\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/TaskRepositoryInterface.php
-
message: '#^Method Mcp\\Example\\DependenciesStdioExample\\Service\\TaskRepositoryInterface\:\:getTasksForUser\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/06-custom-dependencies-stdio/Service/TaskRepositoryInterface.php
-
message: '#^Class Mcp\\DependenciesStdioExample\\Services\\StatsServiceInterface not found\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/server.php
-
message: '#^Class Mcp\\DependenciesStdioExample\\Services\\TaskRepositoryInterface not found\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/server.php
-
message: '#^Instantiated class Mcp\\DependenciesStdioExample\\Services\\InMemoryTaskRepository not found\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/server.php
-
message: '#^Instantiated class Mcp\\DependenciesStdioExample\\Services\\SystemStatsService not found\.$#'
identifier: class.notFound
count: 1
path: examples/06-custom-dependencies-stdio/server.php
-
message: '#^Access to constant Normal on an unknown class Mcp\\ComplexSchemaHttpExample\\Model\\EventPriority\.$#'
identifier: class.notFound
count: 1
path: examples/07-complex-tool-schema-http/McpEventScheduler.php
-
message: '#^Access to property \$name on an unknown class Mcp\\ComplexSchemaHttpExample\\Model\\EventPriority\.$#'
identifier: class.notFound
count: 1
path: examples/07-complex-tool-schema-http/McpEventScheduler.php
-
message: '#^Access to property \$value on an unknown class Mcp\\ComplexSchemaHttpExample\\Model\\EventType\.$#'
identifier: class.notFound
count: 1
path: examples/07-complex-tool-schema-http/McpEventScheduler.php
-
message: '#^Method Mcp\\Example\\ComplexSchemaHttpExample\\McpEventScheduler\:\:scheduleEvent\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/07-complex-tool-schema-http/McpEventScheduler.php
-
message: '#^Parameter \$priority of method Mcp\\Example\\ComplexSchemaHttpExample\\McpEventScheduler\:\:scheduleEvent\(\) has invalid type Mcp\\ComplexSchemaHttpExample\\Model\\EventPriority\.$#'
identifier: class.notFound
count: 2
path: examples/07-complex-tool-schema-http/McpEventScheduler.php
-
message: '#^Parameter \$type of method Mcp\\Example\\ComplexSchemaHttpExample\\McpEventScheduler\:\:scheduleEvent\(\) has invalid type Mcp\\ComplexSchemaHttpExample\\Model\\EventType\.$#'
identifier: class.notFound
count: 2
path: examples/07-complex-tool-schema-http/McpEventScheduler.php
-
message: '#^Instantiated class Mcp\\Server\\Transports\\HttpServerTransport not found\.$#'
identifier: class.notFound
count: 1
path: examples/07-complex-tool-schema-http/server.php
-
message: '#^Parameter \#1 \$transport of method Mcp\\Server\:\:connect\(\) expects Mcp\\Server\\TransportInterface, Mcp\\Server\\Transports\\HttpServerTransport given\.$#'
identifier: argument.type
count: 1
path: examples/07-complex-tool-schema-http/server.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:calculateRange\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:formatText\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:generateConfig\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:manageList\(\) has parameter \$items with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:manageList\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:scheduleEvent\(\) has parameter \$attendees with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:scheduleEvent\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:validateProfile\(\) has parameter \$profile with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Method Mcp\\Example\\SchemaShowcaseExample\\SchemaShowcaseElements\:\:validateProfile\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: examples/08-schema-showcase-streamable/SchemaShowcaseElements.php
-
message: '#^Instantiated class Mcp\\Server\\Transports\\StreamableHttpServerTransport not found\.$#'
identifier: class.notFound
count: 1
path: examples/08-schema-showcase-streamable/server.php
-
message: '#^Parameter \#1 \$transport of method Mcp\\Server\:\:connect\(\) expects Mcp\\Server\\TransportInterface, Mcp\\Server\\Transports\\StreamableHttpServerTransport given\.$#'
identifier: argument.type
count: 1
path: examples/08-schema-showcase-streamable/server.php
-
message: '#^Parameter \#1 \$registry of class Mcp\\Server\\RequestHandler\\ListPromptsHandler constructor expects Mcp\\Capability\\Registry\\ReferenceProviderInterface, Mcp\\Capability\\PromptChain given\.$#'
identifier: argument.type
count: 1
path: examples/09-standalone-cli/src/Builder.php
-
message: '#^Parameter \#1 \$registry of class Mcp\\Server\\RequestHandler\\ListResourcesHandler constructor expects Mcp\\Capability\\Registry\\ReferenceProviderInterface, Mcp\\Capability\\ResourceChain given\.$#'
identifier: argument.type
count: 1
path: examples/09-standalone-cli/src/Builder.php
-
message: '#^Parameter \#1 \$registry of class Mcp\\Server\\RequestHandler\\ListToolsHandler constructor expects Mcp\\Capability\\Registry\\ReferenceProviderInterface, Mcp\\Capability\\ToolChain given\.$#'
identifier: argument.type
count: 1
path: examples/09-standalone-cli/src/Builder.php
-
message: '#^PHPDoc tag @return with type array is incompatible with native type object\.$#'
identifier: return.phpDocType
count: 1
path: src/Schema/Result/EmptyResult.php
-
message: '#^Method Mcp\\Schema\\Result\\ReadResourceResult\:\:jsonSerialize\(\) should return array\{contents\: array\<Mcp\\Schema\\Content\\BlobResourceContents\|Mcp\\Schema\\Content\\TextResourceContents\>\} but returns array\{contents\: array\<Mcp\\Schema\\Content\\ResourceContents\>\}\.$#'
identifier: return.type
count: 1
path: src/Schema/Result/ReadResourceResult.php
-
message: '#^Result of && is always false\.$#'
identifier: booleanAnd.alwaysFalse
count: 1
path: src/Server/RequestHandler/ListResourcesHandler.php
-
message: '#^Method Mcp\\Capability\\Registry\\ReferenceProviderInterface\:\:getPrompts\(\) invoked with 2 parameters, 0 required\.$#'
identifier: arguments.count
count: 1
path: src/Server/RequestHandler/ListPromptsHandler.php
-
message: '#^Call to an undefined method Mcp\\Capability\\Registry\\ResourceTemplateReference\:\:handle\(\)\.$#'
identifier: method.notFound
count: 1
path: src/Capability/Registry/ResourceTemplateReference.php
-
message: '#^Result of && is always false\.$#'
identifier: booleanAnd.alwaysFalse
count: 1
path: src/Server/RequestHandler/ListPromptsHandler.php
-
message: '#^Strict comparison using \!\=\= between null and null will always evaluate to false\.$#'
identifier: notIdentical.alwaysFalse
count: 1
path: src/Server/RequestHandler/ListPromptsHandler.php
-
message: '#^Method Mcp\\Capability\\Registry\\ReferenceProviderInterface\:\:getResources\(\) invoked with 2 parameters, 0 required\.$#'
identifier: arguments.count
count: 1
path: src/Server/RequestHandler/ListResourcesHandler.php
-
message: '#^Method Mcp\\Capability\\Registry\\ReferenceProviderInterface\:\:getTools\(\) invoked with 2 parameters, 0 required\.$#'
identifier: arguments.count
count: 1
path: src/Server/RequestHandler/ListToolsHandler.php
-
message: '#^Strict comparison using \!\=\= between null and null will always evaluate to false\.$#'
identifier: notIdentical.alwaysFalse
count: 1
path: src/Server/RequestHandler/ListResourcesHandler.php
-
message: '#^Result of && is always false\.$#'
identifier: booleanAnd.alwaysFalse
count: 1
path: src/Server/RequestHandler/ListToolsHandler.php
-
message: '#^Strict comparison using \!\=\= between null and null will always evaluate to false\.$#'
identifier: notIdentical.alwaysFalse
count: 1
path: src/Server/RequestHandler/ListToolsHandler.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:getCompletionProviders\(\) return type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withDiscovery\(\) has parameter \$excludeDirs with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withDiscovery\(\) has parameter \$scanDirs with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withPrompt\(\) has parameter \$handler with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withResource\(\) has parameter \$handler with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withResourceTemplate\(\) has parameter \$handler with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withTool\(\) has parameter \$handler with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Method Mcp\\Server\\ServerBuilder\:\:withTool\(\) has parameter \$inputSchema with no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$cache \(Psr\\SimpleCache\\CacheInterface\|null\) is never assigned Psr\\SimpleCache\\CacheInterface so it can be removed from the property type\.$#'
identifier: property.unusedType
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$cache has unknown class Psr\\SimpleCache\\CacheInterface as its type\.$#'
identifier: class.notFound
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$cache is never read, only written\.$#'
identifier: property.onlyWritten
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$discoveryExcludeDirs type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$instructions is never read, only written\.$#'
identifier: property.onlyWritten
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualPrompts has unknown class Mcp\\Server\\Closure as its type\.$#'
identifier: class.notFound
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualPrompts type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualResourceTemplates has unknown class Mcp\\Server\\Closure as its type\.$#'
identifier: class.notFound
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualResourceTemplates type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualResources has unknown class Mcp\\Server\\Closure as its type\.$#'
identifier: class.notFound
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualResources type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualTools has unknown class Mcp\\Server\\Closure as its type\.$#'
identifier: class.notFound
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$manualTools type has no value type specified in iterable type array\.$#'
identifier: missingType.iterableValue
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$paginationLimit \(int\|null\) is never assigned null so it can be removed from the property type\.$#'
identifier: property.unusedType
count: 1
path: src/Server/ServerBuilder.php
-
message: '#^Property Mcp\\Server\\ServerBuilder\:\:\$paginationLimit is never read, only written\.$#'
identifier: property.onlyWritten
count: 1
path: src/Server/ServerBuilder.php