Class: Mcp::Tools::AggregatedService
- Inherits:
-
BaseService
- Object
- BaseService
- Mcp::Tools::AggregatedService
- Extended by:
- Gitlab::Utils::Override
- Includes:
- Concerns::Versionable
- Defined in:
- app/services/mcp/tools/aggregated_service.rb
Direct Known Subclasses
Constant Summary
Constants included from Concerns::Versionable
Concerns::Versionable::VERSION_FORMAT
Class Method Summary collapse
Instance Method Summary collapse
- #execute(request: nil, params: nil) ⇒ Object
-
#initialize(tools:, version: nil) ⇒ AggregatedService
constructor
A new instance of AggregatedService.
Methods included from Gitlab::Utils::Override
extended, extensions, included, method_added, override, prepended, queue_verification, verify!
Methods included from Concerns::Versionable
#description, #graphql_operation, #initialize_version, #input_schema, #operation_name, #version
Methods inherited from BaseService
#available?, #description, #input_schema, #set_cred, #to_h, tool_aliases
Constructor Details
#initialize(tools:, version: nil) ⇒ AggregatedService
Returns a new instance of AggregatedService.
14 15 16 17 18 |
# File 'app/services/mcp/tools/aggregated_service.rb', line 14 def initialize(tools:, version: nil) super(name: self.class.tool_name) initialize_version(version) @tools = tools end |
Class Method Details
.tool_name ⇒ Object
10 11 12 |
# File 'app/services/mcp/tools/aggregated_service.rb', line 10 def self.tool_name raise NoMethodError, "#{self.class.name}#tool_name should be implemented in a subclass" end |
Instance Method Details
#execute(request: nil, params: nil) ⇒ Object
21 22 23 24 25 26 |
# File 'app/services/mcp/tools/aggregated_service.rb', line 21 def execute(request: nil, params: nil) @request = request @params = params super end |