fix: make listServerResources() params optional (#528)
Follow-up to #470. Matches MCP SDK Client.listResources(params?) signature so callers can omit the empty {} for the common case. Also reflows a line in app-bridge.test.ts that prettier flagged.
This commit is contained in:
parent
4f9a7ebc74
commit
ef8fc6e2f0
4 changed files with 11 additions and 7 deletions
|
|
@ -123,7 +123,7 @@ async function discoverVideos() {
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const resourceList = await app.listServerResources({});
|
const resourceList = await app.listServerResources();
|
||||||
|
|
||||||
const videoResources = resourceList.resources.filter((r) =>
|
const videoResources = resourceList.resources.filter((r) =>
|
||||||
r.uri.startsWith("videos://"),
|
r.uri.startsWith("videos://"),
|
||||||
|
|
|
||||||
|
|
@ -794,7 +794,7 @@ describe("App <-> AppBridge integration", () => {
|
||||||
await bridge.connect(bridgeTransport);
|
await bridge.connect(bridgeTransport);
|
||||||
await app.connect(appTransport);
|
await app.connect(appTransport);
|
||||||
|
|
||||||
const result = await app.listServerResources({});
|
const result = await app.listServerResources();
|
||||||
|
|
||||||
expect(receivedRequests).toHaveLength(1);
|
expect(receivedRequests).toHaveLength(1);
|
||||||
expect(result.resources).toEqual(resources);
|
expect(result.resources).toEqual(resources);
|
||||||
|
|
@ -826,7 +826,11 @@ describe("App <-> AppBridge integration", () => {
|
||||||
it("onreadresource handles readServerResource() calls from App", async () => {
|
it("onreadresource handles readServerResource() calls from App", async () => {
|
||||||
const requestParams = { uri: "videos://bunny-1mb" };
|
const requestParams = { uri: "videos://bunny-1mb" };
|
||||||
const contents = [
|
const contents = [
|
||||||
{ uri: "videos://bunny-1mb", blob: "dmlkZW9kYXRh", mimeType: "video/mp4" },
|
{
|
||||||
|
uri: "videos://bunny-1mb",
|
||||||
|
blob: "dmlkZW9kYXRh",
|
||||||
|
mimeType: "video/mp4",
|
||||||
|
},
|
||||||
];
|
];
|
||||||
const receivedRequests: unknown[] = [];
|
const receivedRequests: unknown[] = [];
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -335,7 +335,7 @@ async function App_listServerResources_buildPicker(
|
||||||
) {
|
) {
|
||||||
//#region App_listServerResources_buildPicker
|
//#region App_listServerResources_buildPicker
|
||||||
try {
|
try {
|
||||||
const result = await app.listServerResources({});
|
const result = await app.listServerResources();
|
||||||
const videoResources = result.resources.filter((r) =>
|
const videoResources = result.resources.filter((r) =>
|
||||||
r.mimeType?.startsWith("video/"),
|
r.mimeType?.startsWith("video/"),
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -805,7 +805,7 @@ export class App extends Protocol<AppRequest, AppNotification, AppResult> {
|
||||||
*
|
*
|
||||||
* Results may be paginated using the `cursor` parameter for servers with many resources.
|
* Results may be paginated using the `cursor` parameter for servers with many resources.
|
||||||
*
|
*
|
||||||
* @param params - Optional parameters (empty object `{}` for all resources, or `{ cursor }` for pagination)
|
* @param params - Optional parameters (omit for all resources, or `{ cursor }` for pagination)
|
||||||
* @param options - Request options (timeout, etc.)
|
* @param options - Request options (timeout, etc.)
|
||||||
* @returns List of resources with their URIs, names, descriptions, mimeTypes, and optional pagination cursor
|
* @returns List of resources with their URIs, names, descriptions, mimeTypes, and optional pagination cursor
|
||||||
*
|
*
|
||||||
|
|
@ -815,7 +815,7 @@ export class App extends Protocol<AppRequest, AppNotification, AppResult> {
|
||||||
* @example Discover available videos and build a picker UI
|
* @example Discover available videos and build a picker UI
|
||||||
* ```ts source="./app.examples.ts#App_listServerResources_buildPicker"
|
* ```ts source="./app.examples.ts#App_listServerResources_buildPicker"
|
||||||
* try {
|
* try {
|
||||||
* const result = await app.listServerResources({});
|
* const result = await app.listServerResources();
|
||||||
* const videoResources = result.resources.filter((r) =>
|
* const videoResources = result.resources.filter((r) =>
|
||||||
* r.mimeType?.startsWith("video/"),
|
* r.mimeType?.startsWith("video/"),
|
||||||
* );
|
* );
|
||||||
|
|
@ -833,7 +833,7 @@ export class App extends Protocol<AppRequest, AppNotification, AppResult> {
|
||||||
* @see {@link readServerResource `readServerResource`} to read a specific resource
|
* @see {@link readServerResource `readServerResource`} to read a specific resource
|
||||||
*/
|
*/
|
||||||
async listServerResources(
|
async listServerResources(
|
||||||
params: ListResourcesRequest["params"],
|
params?: ListResourcesRequest["params"],
|
||||||
options?: RequestOptions,
|
options?: RequestOptions,
|
||||||
): Promise<ListResourcesResult> {
|
): Promise<ListResourcesResult> {
|
||||||
return await this.request(
|
return await this.request(
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue