listResourceTemplates method

Future<McpStreamableResourceTemplateListPage> listResourceTemplates({
  1. Object? id,
  2. String? cursor,
  3. bool streamable = true,
  4. bool directJson = false,
  5. String? protocolVersion,
  6. Map<String, String> headers = const <String, String>{},
})

Lists one page of resource templates through the MCP session.

Implementation

Future<McpStreamableResourceTemplateListPage> listResourceTemplates({
  Object? id,
  String? cursor,
  bool streamable = true,
  bool directJson = false,
  String? protocolVersion,
  Map<String, String> headers = const <String, String>{},
}) async {
  final response = await request(
    'resources/templates/list',
    id: id,
    params: _cursorParams(cursor),
    streamable: directJson ? false : streamable,
    includeSession: !directJson,
    protocolVersion: protocolVersion,
    headers: headers,
  );
  final result = _jsonRpcResultFrom(
    response,
    method: 'resources/templates/list',
  );
  return McpStreamableResourceTemplateListPage(
    resourceTemplates: _validatedResourceTemplateCatalogEntries(
      _jsonMapListFrom(
        result,
        key: 'resourceTemplates',
        method: 'resources/templates/list',
        label: 'resources/templates/list result resource template',
      ),
      label: 'resources/templates/list result resource template',
    ),
    nextCursor: _nextCursorFrom(result, method: 'resources/templates/list'),
  );
}