Back to Copilotkit

A2UI Restaurant finder and table reservation agent sample.

examples/integrations/a2a-a2ui/agent/README.md

1.57.01.7 KB
Original Source

A2UI Restaurant finder and table reservation agent sample.

This sample uses the Agent Development Kit (ADK) along with the A2A protocol to create a simple "Restaurant finder and table reservation" agent that is hosted as an A2A server.

Prerequisites

  • Python 3.9 or higher
  • UV
  • Access to an LLM and API Key

Running the Sample

  1. Navigate to the samples directory:

    bash
    cd a2a_samples/a2ui_restaurant_finder
    
  2. Create an environment file with your API key:

    bash
    echo "GEMINI_API_KEY=your_api_key_here" > .env
    
  3. Run the agent server:

    bash
    uv run .
    

Disclaimer

Important: The sample code provided is for demonstration purposes and illustrates the mechanics of the Agent-to-Agent (A2A) protocol. When building production applications, it is critical to treat any agent operating outside of your direct control as a potentially untrusted entity.

All data received from an external agent—including but not limited to its AgentCard, messages, artifacts, and task statuses—should be handled as untrusted input. For example, a malicious agent could provide an AgentCard containing crafted data in its fields (e.g., description, name, skills.description). If this data is used without sanitization to construct prompts for a Large Language Model (LLM), it could expose your application to prompt injection attacks. Failure to properly validate and sanitize this data before use can introduce security vulnerabilities into your application.

Developers are responsible for implementing appropriate security measures, such as input validation and secure handling of credentials to protect their systems and users.