Clarify spec and SDK: accept UIResourceMeta in both resources/list and resources/read (#410)
* Clarify spec and SDK: accept UIResourceMeta in both resources/list and resources/read The spec defines UIResource with _meta.ui, implicitly as an extension of the Resource type (resources/list), but examples and practice place _meta.ui on TextResourceContents (resources/read). The registerAppResource helper accepts _meta.ui in its config (which ends up in resources/list), but examples only return said _meta.ui from resources/read — and current hosts might be just ignoring it. This change: - Adds a 'Metadata Location' subsection to the draft spec explicitly stating that _meta.ui is valid on both the resource listing entry AND the content item, with content-item taking precedence. - Updates the spec example to show _meta on the resource declaration (resources/list). - Updates the CSP construction example to reference both locations. - Clarifies McpUiAppResourceConfig JSDoc: _meta here appears in resources/list and serves as a listing-level fallback for when content items omit _meta.ui. - Fixes the map-server example comment that incorrectly stated _meta must only be on the content item. * Add McpUiReadResourceResult type for UI metadata in resources/read * basic-host: support UIResourceMeta fallback from resources/list --------- Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
parent
2dd56c3dce
commit
bcfffb6585
1 changed files with 73 additions and 16 deletions
|
|
@ -128,7 +128,7 @@ export function createServer(): McpServer {
|
|||
);
|
||||
return {
|
||||
contents: [
|
||||
// _meta must be on the content item, not the resource metadata
|
||||
// CSP metadata on the content item takes precedence over listing-level _meta
|
||||
{
|
||||
uri: RESOURCE_URI,
|
||||
mimeType: RESOURCE_MIME_TYPE,
|
||||
|
|
|
|||
Loading…
Reference in a new issue