This commit is contained in:
+23
-1
@@ -4,7 +4,29 @@ require_relative "mcp/version"
|
||||
|
||||
module Mcp
|
||||
class Error < StandardError; end
|
||||
# Your code goes here...
|
||||
|
||||
class Client
|
||||
def tools
|
||||
ToolsProxy.new(self)
|
||||
end
|
||||
end
|
||||
|
||||
class ToolsProxy
|
||||
def initialize(client)
|
||||
@client = client
|
||||
@tools = client.list_tools
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def respond_to_missing?(name, include_private = false)
|
||||
@tools.any? { |tool| tool["name"] == name.to_s } || super
|
||||
end
|
||||
|
||||
def method_missing(name, **kwargs)
|
||||
@client.call_tool(name, **kwargs)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
require_relative "mcp/mcp"
|
||||
|
||||
Reference in New Issue
Block a user