
    Oj'                     v    S SK r SSKJr  SSKJrJr  \ R                  (       a  S SKJr  S SKJ	r	   " S S5      r
g)	    N   )mcp_to_gemini_tools)FunctionCallTool)types)ClientSessionc            	       h    \ rS rSrSr SSSSSS\SS	4S
 jjrS\SS4S jr\	S\
\   4S j5       rSrg	)McpToGenAiToolAdapter   z5Adapter for working with MCP tools in a GenAI client.sessionzmcp.ClientSessionlist_tools_resultzmcp_types.ListToolsResultis_agent_platformreturnNc                 (    Xl         X l        X0l        g )N)_mcp_session_list_tools_result_is_agent_platform)selfr   r   r   s       X/var/www/html/leaf-doctor-v1/venv/lib/python3.13/site-packages/google/genai/_adapters.py__init__McpToGenAiToolAdapter.__init__   s      //    function_callmcp_types.CallToolResultc                 
  #    UR                   (       a  UR                   OSnUR                  (       a  [        UR                  5      O0 n[        R                  " SU R
                  R                  UUS9I Sh  vN 5      $  N7f)z#Calls a function on the MCP server. r   )name	argumentsN)r   argsdicttypingcastr   	call_tool)r   r   r   r   s       r   r#   McpToGenAiToolAdapter.call_tool'   ss      "/!3!3=D,9,>,>]''(BI;;")) * 
 	
 	
s   A6B8B
9	Bc                 @    [        U R                  R                  5      $ )z%Returns a list of Google GenAI tools.)r   r   tools)r   s    r   r&   McpToGenAiToolAdapter.tools6   s     t66<<==r   )r   r   r   )F)__name__
__module____qualname____firstlineno____doc__boolr   r   r#   propertylistr   r&   __static_attributes__ r   r   r
   r
      si    = !&	0"0 50 	0
 0'! >T$Z > >r   r
   )r!   
_mcp_utilsr   r   r   r   TYPE_CHECKINGmcp	mcp_typesr   r
   r1   r   r   <module>r6      s)      + %	$> >r   