[Server] Fix wrong parameter order when creating the tool from array (#147)

Previously, the meta parameter was incorrectly passed to the icons position
due to missing icons argument. Also adds icons support to Builder::addTool()
for consistency with the Tool schema.
This commit is contained in:
Bujar Begisholli - C24 2025-11-12 11:34:17 +01:00 • committed by GitHub
commit 63ffeed0cc
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -83,6 +83,7 @@ final class Builder
* name: ?string,
* description: ?string,
* annotations: ?ToolAnnotations,
* icons: ?array<int, Icon>,
* meta: ?array<string, mixed>
* }[]
*/
@ -315,6 +316,7 @@ final class Builder
*
* @param Handler $handler
* @param array<string, mixed>|null $inputSchema
* @param Icon[]|null $icons
* @param array<string, mixed>|null $meta
*/
public function addTool(
@ -323,9 +325,10 @@ final class Builder
?string $description = null,
?ToolAnnotations $annotations = null,
?array $inputSchema = null,
?array $icons = null,
?array $meta = null,
): self {
$this->tools[] = compact('handler', 'name', 'description', 'annotations', 'inputSchema', 'meta');
$this->tools[] = compact('handler', 'name', 'description', 'annotations', 'inputSchema', 'icons', 'meta');
return $this;
}