Rename schema to resource in Capability and related classes (#217)

This commit is contained in:
落月 2026-01-12 04:52:04 +08:00 • committed by GitHub
commit 1de4ea933f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 9 additions and 8 deletions

View file

@ -7,6 +7,7 @@ All notable changes to `mcp/sdk` will be documented in this file.
* Add output schema support to MCP tools
* Add validation of the input parameters given to a Tool.
* Rename `Mcp\Capability\Registry\ResourceReference::$schema` to `Mcp\Capability\Registry\ResourceReference::$resource`.
0.2.2
-----

View file

@ -234,7 +234,7 @@ final class Registry implements RegistryInterface
{
$resources = [];
foreach ($this->resources as $resourceReference) {
$resources[$resourceReference->schema->uri] = $resourceReference->schema;
$resources[$resourceReference->resource->uri] = $resourceReference->resource;
}
if (null === $limit) {

View file

@ -29,7 +29,7 @@ class ResourceReference extends ElementReference
* @param Handler $handler
*/
public function __construct(
public readonly Resource $schema,
public readonly Resource $resource,
callable|array|string $handler,
bool $isManual = false,
) {
@ -68,7 +68,7 @@ class ResourceReference extends ElementReference
return [$readResult->resource];
}
$meta = $this->schema->meta;
$meta = $this->resource->meta;
if (\is_array($readResult)) {
if (empty($readResult)) {

View file

@ -72,7 +72,7 @@ final class ReadResourceHandler implements RequestHandlerInterface
$formatted = $reference->formatResult($result, $uri, $reference->resourceTemplate->mimeType);
} else {
$result = $this->referenceHandler->handle($reference, $arguments);
$formatted = $reference->formatResult($result, $uri, $reference->schema->mimeType);
$formatted = $reference->formatResult($result, $uri, $reference->resource->mimeType);
}
return new Response($request->getId(), new ReadResourceResult($formatted));

View file

@ -65,8 +65,8 @@ class DiscoveryTest extends TestCase
$this->assertArrayHasKey('app://info/version', $resources);
$this->assertFalse($resources['app://info/version']->isManual);
$this->assertEquals('app_version', $resources['app://info/version']->schema->name);
$this->assertEquals('text/plain', $resources['app://info/version']->schema->mimeType);
$this->assertEquals('app_version', $resources['app://info/version']->resource->name);
$this->assertEquals('text/plain', $resources['app://info/version']->resource->mimeType);
$this->assertArrayHasKey('invokable://config/status', $resources);
$this->assertFalse($resources['invokable://config/status']->isManual);

View file

@ -167,7 +167,7 @@ class RegistryTest extends TestCase
$resourceRef = $this->registry->getResource('test://resource');
$this->assertInstanceOf(ResourceReference::class, $resourceRef);
$this->assertEquals($resource->uri, $resourceRef->schema->uri);
$this->assertEquals($resource->uri, $resourceRef->resource->uri);
$this->assertEquals($handler, $resourceRef->handler);
$this->assertFalse($resourceRef->isManual);
}
@ -260,7 +260,7 @@ class RegistryTest extends TestCase
$resourceRef = $this->registry->getResource('test://123');
$this->assertInstanceOf(ResourceReference::class, $resourceRef);
$this->assertEquals($resource->uri, $resourceRef->schema->uri);
$this->assertEquals($resource->uri, $resourceRef->resource->uri);
}
public function testGetResourceMatchesResourceTemplate(): void