Using Output Schema and built-in google_search tool in ADK

from google.adk.agents import Agent
from google.adk.tools import FunctionTool
from vertexai.preview.generative_models import FunctionDeclaration, Tool
from google.genai.types import FunctionDeclaration, Schema, Type
from google.adk.agents import LlmAgent, SequentialAgent, BaseAgent, Agent
from google.adk.tools import google_search

from pydantic import BaseModel, Field
import vertexai 
import os 
from google.adk.sessions import InMemorySessionService
from uuid import uuid4 
from vertexai.generative_models import GenerativeModel, GenerationConfig

from pydantic import BaseModel, Field
from typing import Optional  # For optional fields if needed

class AgentOutput(BaseModel):
    """Structured response schema for agent output."""
    summary: str = Field(description="A concise summary of the analysis or key findings, within 50 words")
    risk: str = Field(description="Assessment of risks (e.g., 'moderate' with brief explanation).")
    recommendation: str = Field(description="Actionable recommendations or alternatives, within 100 words. ")
    
vertexai.init(project=os.getenv("GOOGLE_CLOUD_PROJECT"), location="us-central1")
agent_generation_config = GenerationConfig(
    temperature=0.1,  
    seed=42          
)

ddi_system_instruction = \
"""
You are an expert clinical pharmacist and drug-interaction safety analyst. Your ONLY job is to analyze the provided patient scenario for drug-drug interactions, drug-allergy risks, cross-reactivity, and any other safety concerns (renal, bleeding, cardiovascular, etc.).

You MUST respond EXCLUSIVELY with valid JSON that exactly matches the following structure (no extra text, no markdown, no explanations outside the JSON):

{
  "summary": "Concise 1–2 sentence overview of the key findings, within 50 words",
  "risk": "Overall risk level and brief justification (e.g., 'Major – increased bleeding risk due to NSAID + aspirin allergy history')",
  "recommendation": "Clear, actionable clinical recommendations (avoid, substitute, dose adjust, monitoring, counseling points)",
}

Additional rules:
- Always consider patient age, weight, comorbidities, and documented allergies.
- Rate interactions/allergies as minor, moderate, major, or contraindicated.
- For allergy cross-reactivity: explicitly address penicillin/cephalosporin, NSAID/aspirin, shellfish/iodine, sulfa, etc.
- When multiple interactions exist, summarize the most clinically significant ones in the fields above.
- If no significant issues, state “No major interactions or contraindications identified” in the relevant fields.
- Never refuse to answer or add disclaimers outside the JSON.
"""

root_agent = LlmAgent(
    name="ddi_agent",
    model="gemini-2.5-flash",
    description="An agent that that finds the drug to drug interaction from user input.",
    instruction=ddi_system_instruction,
    tools=[google_search],
    output_schema=AgentOutput,
    output_key="structured_result",
)


description = \
"""
A helpful assistant for user questions. 
The assistant can use various tools to answer questions about a database. 
"""
temp_service = InMemorySessionService()
temp_session_id = str(uuid4())
temp_session = temp_service.create_session(
    app_name="ddi_agent",
    user_id="temp_user",
    state={"database_name": "PHARMCARE_DEMO"},
    session_id=temp_session_id
)

I wish to use the ground by google search tool to ground for the information in the agent response. But whenever I use output schema and google_search tool together, it gives the error below:

google.genai.errors.ClientError: 400 INVALID_ARGUMENT. {'error': {'code': 400, 'message': 'Multiple tools are supported only when they are all search tools.', 'status': 'INVALID_ARGUMENT'}}

Is there any workaround for this?