[Capability] Remove CompletionProvider's dead providerClass argument (#499)

* [Capability] Remove CompletionProvider's dead providerClass argument

It always threw on construction, so it never worked in any release. `provider:`
takes the same class-string and is now the first positional argument.

* Reword Changelog
This commit is contained in:
Christopher Hertel 2026-09-07 23:27:53 +02:00 • committed by GitHub
commit f39625b257
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -14,13 +14,14 @@ namespace Mcp\Tests\Unit\Capability\Discovery\Fixtures;
use Mcp\Capability\Attribute\CompletionProvider;
use Mcp\Capability\Attribute\McpPrompt;
use Mcp\Capability\Attribute\McpResourceTemplate;
use Mcp\Tests\Unit\Capability\Attribute\CompletionProviderFixture;
use Mcp\Tests\Unit\Fixtures\Enum\PriorityEnum;
use Mcp\Tests\Unit\Fixtures\Enum\StatusEnum;
class EnhancedCompletionHandler
{
/**
* Create content with list and enum completion providers.
* Create content with list, enum and positional provider completion providers.
*/
#[McpPrompt(name: 'content_creator')]
public function createContent(
@ -30,9 +31,11 @@ class EnhancedCompletionHandler
string $status,
#[CompletionProvider(enum: PriorityEnum::class)]
string $priority,
#[CompletionProvider(CompletionProviderFixture::class)]
string $author,
): array {
return [
['role' => 'user', 'content' => "Create a {$type} with status {$status} and priority {$priority}"],
['role' => 'user', 'content' => "Create a {$type} with status {$status} and priority {$priority} for {$author}"],
];
}