Google ADK Speaker Agent with ElevenLabs

by reymerekar7

194 downloads
Not rated
GitHub

About

Quick example of building a speaker agent with Google ADK and ElevenLabs' MCP server

Details

Author
reymerekar7
Downloads
194
Categories
AI

- Built with Google ADK and ElevenLabs MCP server
- Connects via uvx for seamless TTS integration
- Requires Python 3.11 or higher
- Runs as an async agent through the web client
- Simple project structure with minimal setup

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Google ADK Speaker Agent with ElevenLabs
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Install dependencies (Python 3.11+), set your ElevenLabs and Google Gemini API keys in a .env file, activate a virtual environment, and navigate to the agents/ directory. Then run adk web to start the web client – the agent only supports async execution through this interface.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "google adk speaker agent with elevenlabs": {
            "elevenlabs-mcp": {
                "command": "uvx",
                "args": [
                    "elevenlabs-mcp"
                ],
                "env": {
                    "ELEVENLABS_API_KEY": ""
                }
            }
        }
    }
}

McpServers

{
    "elevenlabs-mcp": {
        "command": "uvx",
        "args": [
            "elevenlabs-mcp"
        ],
        "env": {
            "ELEVENLABS_API_KEY": ""
        }
    }
}

Google ADK Speaker Agent with ElevenLabs

This project demonstrates a Text-to-Speech (TTS) Speaker agent built using Google's Agent Development Kit (ADK) and ElevenLabs' MCP server.

Overview

The speaker agent connects to the ElevenLabs MCP server via uvx to provide text-to-speech capabilities. It's built using:
- Google ADK (Agent Development Kit)
- ElevenLabs MCP Server
- Python 3.11+

Prerequisites

- Python 3.11 or higher
- ElevenLabs API key
- Google Gemini API key
- Google ADK installed

Setup

1. Clone the repository:

git clone <repo-url>

2. Create and activate a virtual environment:

python3.11 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate

3. Install dependencies:

pip install -r requirements.txt

4. Create a .env file in the root directory with your ElevenLabs and Gemini API keys:

ELEVENLABS_API_KEY=your_api_key_here
GOOGLE_API_KEY = your_api_key_here

Running the Agent

1. Make sure your virtual environment is activated:

source venv/bin/activate

2. Navigate to the agents directory:

cd agents

3. Run the agent using ADK. You can only run async agents via the web client:

adk web

The agent will connect to the ElevenLabs MCP server and be ready to process text-to-speech requests (along with the other serviceable tools in the MCP server)

Project Structure

google-adk-sample/
├── agents/
│   └── speaker/
│       ├── agent.py        # Main agent implementation
│       └── __init__.py
├── .env                    # Environment variables
└── requirements.txt        # Project dependencies

Demo Video

https://github.com/user-attachments/assets/2120981a-f193-4941-a6d0-4504b0bfb9a6

Troubleshooting

If you encounter any issues:
1. Ensure your virtual environment is activated
2. Verify your API keys are correctly set in the .env file
3. Check that all dependencies are installed correctly
4. Make sure you're running the command from the correct directory

Additional Resources

- Google ADK Documentation
- ElevenLabs Documentation
- uvx Documentation

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.