- Allow protocol version to be set at the server level through configuration instead of a class method, providing more flexibility in protocol version management [#43](https://github.com/Shopify/mcp-ruby/pull/43) @topherbullock - Fixed instrumentation handling to ensure accurate timing information and proper error reporting [#42](https://github.com/Shopify/mcp-ruby/pull/42) @tobiasbales - Improved error handling and reporting in the server - Fixed timing information collection in instrumentation - Added proper error types for different failure scenarios - Enhanced test coverage for error cases - [Allow protocol version to be set at the server level #43](https://github.com/Shopify/mcp-ruby/pull/43) @topherbullock - [Fix instrumentation handling #42](https://github.com/Shopify/mcp-ruby/pull/42) @tobiasbales
33 lines
781 B
Ruby
33 lines
781 B
Ruby
# typed: strict
|
|
# frozen_string_literal: true
|
|
|
|
require "model_context_protocol/server"
|
|
require "model_context_protocol/string_utils"
|
|
require "model_context_protocol/tool"
|
|
require "model_context_protocol/content"
|
|
require "model_context_protocol/resource"
|
|
require "model_context_protocol/prompt"
|
|
require "model_context_protocol/version"
|
|
require "model_context_protocol/configuration"
|
|
require "model_context_protocol/methods"
|
|
|
|
module ModelContextProtocol
|
|
class << self
|
|
def configure
|
|
yield(configuration)
|
|
end
|
|
|
|
def configuration
|
|
@configuration ||= Configuration.new
|
|
end
|
|
end
|
|
|
|
class Annotations
|
|
attr_reader :audience, :priority
|
|
|
|
def initialize(audience: nil, priority: nil)
|
|
@audience = audience
|
|
@priority = priority
|
|
end
|
|
end
|
|
end
|