Builder
FinalYes
Fluent builder for creating Client instances.
Tags
Table of Contents
Properties
- $capabilities : ClientCapabilities|null
- $description : string|null
- $initTimeout : int
- $logger : LoggerInterface|null
- $maxRetries : int
- $name : string
- $notificationHandlers : array<string|int, NotificationHandlerInterface>
- $protocolVersion : ProtocolVersion|null
- $requestHandlers : array<string|int, RequestHandlerInterface<string|int, mixed>>
- $requestTimeout : int
- $version : string
Methods
- addNotificationHandler() : self
- Add a notification handler for server notifications.
- addRequestHandler() : self
- Add a request handler for server requests (e.g., sampling).
- build() : Client
- Build the client instance.
- setCapabilities() : self
- Set client capabilities.
- setClientInfo() : self
- Set the client name and version.
- setInitTimeout() : self
- Set initialization timeout in seconds.
- setLogger() : self
- Set the logger.
- setMaxRetries() : self
- Set maximum retry attempts for failed connections.
- setProtocolVersion() : self
- Set the protocol version to use.
- setRequestTimeout() : self
- Set request timeout in seconds.
Properties
$capabilities
private
ClientCapabilities|null
$capabilities
= null
$description
private
string|null
$description
= null
$initTimeout
private
int
$initTimeout
= 30
$logger
private
LoggerInterface|null
$logger
= null
$maxRetries
private
int
$maxRetries
= 3
$name
private
string
$name
= 'mcp-php-client'
$notificationHandlers
private
array<string|int, NotificationHandlerInterface>
$notificationHandlers
= []
$protocolVersion
private
ProtocolVersion|null
$protocolVersion
= null
$requestHandlers
private
array<string|int, RequestHandlerInterface<string|int, mixed>>
$requestHandlers
= []
$requestTimeout
private
int
$requestTimeout
= 120
$version
private
string
$version
= '1.0.0'
Methods
addNotificationHandler()
Add a notification handler for server notifications.
public
addNotificationHandler(NotificationHandlerInterface $handler) : self
Parameters
- $handler : NotificationHandlerInterface
Return values
selfaddRequestHandler()
Add a request handler for server requests (e.g., sampling).
public
addRequestHandler(RequestHandlerInterface<string|int, mixed> $handler) : self
Parameters
- $handler : RequestHandlerInterface<string|int, mixed>
Return values
selfbuild()
Build the client instance.
public
build() : Client
Return values
ClientsetCapabilities()
Set client capabilities.
public
setCapabilities(ClientCapabilities $capabilities) : self
Parameters
- $capabilities : ClientCapabilities
Return values
selfsetClientInfo()
Set the client name and version.
public
setClientInfo(string $name, string $version[, string|null $description = null ]) : self
Parameters
- $name : string
- $version : string
- $description : string|null = null
Return values
selfsetInitTimeout()
Set initialization timeout in seconds.
public
setInitTimeout(int $seconds) : self
Parameters
- $seconds : int
Return values
selfsetLogger()
Set the logger.
public
setLogger(LoggerInterface $logger) : self
Parameters
- $logger : LoggerInterface
Return values
selfsetMaxRetries()
Set maximum retry attempts for failed connections.
public
setMaxRetries(int $retries) : self
Parameters
- $retries : int
Return values
selfsetProtocolVersion()
Set the protocol version to use.
public
setProtocolVersion(ProtocolVersion $protocolVersion) : self
Parameters
- $protocolVersion : ProtocolVersion
Return values
selfsetRequestTimeout()
Set request timeout in seconds.
public
setRequestTimeout(int $seconds) : self
Parameters
- $seconds : int