Class: McpToolkit::Tools::Resources

Inherits:
Base
  • Object
show all
Defined in:
lib/mcp_toolkit/tools/resources.rb

Overview

Discovery tool: lists every read-only resource exposed by this server.

Class Method Summary collapse

Class Method Details

.call(server_context:, **_args) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/mcp_toolkit/tools/resources.rb', line 15

def self.call(server_context:, **_args)
  config = config_from(server_context)
  # Discovery requires the registry-level default scope (the satellite's
  # app-wide scope); per-resource scopes are enforced by `get` / `list`.
  with_authentication(server_context, required_scope: config.registry.default_required_permissions_scope) do
    {
      resources: config.registry.resources.map do |resource|
        { name: resource.name, description: resource.description }
      end
    }
  end
end