Class: RubyLLM::MCP::ServerCapabilities
- Inherits:
-
Object
- Object
- RubyLLM::MCP::ServerCapabilities
- Defined in:
- lib/ruby_llm/mcp/server_capabilities.rb
Instance Attribute Summary collapse
-
#capabilities ⇒ Object
Returns the value of attribute capabilities.
Instance Method Summary collapse
- #completion? ⇒ Boolean
- #extension?(id) ⇒ Boolean
- #extension_capability(id) ⇒ Object
- #extensions ⇒ Object
-
#initialize(capabilities = {}) ⇒ ServerCapabilities
constructor
A new instance of ServerCapabilities.
- #logging? ⇒ Boolean
- #prompt_list? ⇒ Boolean
- #prompt_list_changes? ⇒ Boolean
- #resource_subscribe? ⇒ Boolean
- #resources_list? ⇒ Boolean
- #resources_list_changes? ⇒ Boolean
- #task_augmented_tool_call? ⇒ Boolean
- #tasks? ⇒ Boolean
- #tasks_cancel? ⇒ Boolean
- #tasks_list? ⇒ Boolean
- #tools_list? ⇒ Boolean
- #tools_list_changes? ⇒ Boolean
Constructor Details
#initialize(capabilities = {}) ⇒ ServerCapabilities
Returns a new instance of ServerCapabilities.
8 9 10 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 8 def initialize(capabilities = {}) @capabilities = capabilities end |
Instance Attribute Details
#capabilities ⇒ Object
Returns the value of attribute capabilities.
6 7 8 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 6 def capabilities @capabilities end |
Instance Method Details
#completion? ⇒ Boolean
40 41 42 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 40 def completion? !@capabilities["completions"].nil? end |
#extension?(id) ⇒ Boolean
69 70 71 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 69 def extension?(id) !extension_capability(id).nil? end |
#extension_capability(id) ⇒ Object
73 74 75 76 77 78 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 73 def extension_capability(id) canonical_id = Extensions::Registry.canonicalize_id(id) return nil if canonical_id.nil? normalized_extensions[canonical_id] end |
#extensions ⇒ Object
64 65 66 67 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 64 def extensions value = @capabilities["extensions"] value.is_a?(Hash) ? value : {} end |
#logging? ⇒ Boolean
44 45 46 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 44 def logging? !@capabilities["logging"].nil? end |
#prompt_list? ⇒ Boolean
32 33 34 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 32 def prompt_list? !@capabilities["prompts"].nil? end |
#prompt_list_changes? ⇒ Boolean
36 37 38 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 36 def prompt_list_changes? @capabilities.dig("prompts", "listChanged") || false end |
#resource_subscribe? ⇒ Boolean
20 21 22 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 20 def resource_subscribe? @capabilities.dig("resources", "subscribe") || false end |
#resources_list? ⇒ Boolean
12 13 14 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 12 def resources_list? !@capabilities["resources"].nil? end |
#resources_list_changes? ⇒ Boolean
16 17 18 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 16 def resources_list_changes? @capabilities.dig("resources", "listChanged") || false end |
#task_augmented_tool_call? ⇒ Boolean
60 61 62 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 60 def task_augmented_tool_call? !@capabilities.dig("tasks", "requests", "tools", "call").nil? end |
#tasks? ⇒ Boolean
48 49 50 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 48 def tasks? !@capabilities["tasks"].nil? end |
#tasks_cancel? ⇒ Boolean
56 57 58 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 56 def tasks_cancel? !@capabilities.dig("tasks", "cancel").nil? end |
#tasks_list? ⇒ Boolean
52 53 54 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 52 def tasks_list? !@capabilities.dig("tasks", "list").nil? end |
#tools_list? ⇒ Boolean
24 25 26 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 24 def tools_list? !@capabilities["tools"].nil? end |
#tools_list_changes? ⇒ Boolean
28 29 30 |
# File 'lib/ruby_llm/mcp/server_capabilities.rb', line 28 def tools_list_changes? @capabilities.dig("tools", "listChanged") || false end |