registerResourceTemplate

Result<RegisteredResourceTemplate, String> registerResourceTemplate(

  1. String name,
  2. ResourceTemplate template,
  3. ResourceMetadata metadata,
  4. ReadResourceTemplateCallback readCallback,
)

Register a resource template.

Returns Success with RegisteredResourceTemplate or Error.

Implementation

Result<RegisteredResourceTemplate, String> registerResourceTemplate(
  String name,
  ResourceTemplate template,
  ResourceMetadata metadata,
  ReadResourceTemplateCallback readCallback,
) {
  try {
    final jsTemplate = _resourceTemplateToJs(template);
    final jsMetadata = _resourceMetadataToJs(metadata);
    final jsCallback = _wrapReadResourceTemplateCallback(readCallback);

final registerResourceFn = _mcpServer['registerResource'] as JSFunction; final jsResult = registerResourceFn.callAsFunction( _mcpServer, name.toJS, jsTemplate, jsMetadata, jsCallback, ) as JSObject;

return Success( _jsToRegisteredResourceTemplate(name, template.uriTemplate, jsResult), ); } catch (e) { return Error('Failed to register resource template "$name": $e'); } }