mcpField
G
Google ADK Speaker Agent with ElevenLabs

Google ADK Speaker Agent with ElevenLabs

Local
github.com/reymerekar7AI & Agents1Updated 77w ago

About Google ADK Speaker Agent with ElevenLabs

This example project builds a text-to-speech speaker agent with Google ADK and the ElevenLabs MCP server. It is for developers exploring this setup and runs the asynchronous agent through the ADK web client.

Key features

  1. 01Build a speaker agent with Google ADK
  2. 02Provide text-to-speech through ElevenLabs MCP
  3. 03Connect to the MCP server with uvx
  4. 04Run the async agent with ADK web

Use cases

  1. 01Learn how Google ADK connects to ElevenLabs MCP
  2. 02Build an async agent for text-to-speech requests

MCP support

The agent connects to the ElevenLabs MCP server through uvx to use text-to-speech capabilities and other tools provided by the server.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"google-adk-elevenlabs": {
"command": "uvx",
"args": [
"elevenlabs-mcp"
],
"env": {
"ELEVENLABS_API_KEY": "<ELEVENLABS_API_KEY>"
}
}
}
}
Run commanduvx elevenlabs-mcp
Environment variables to set
ELEVENLABS_API_KEYSecret

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypielevenlabs-mcp

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

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:

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>
  1. Create and activate a virtual environment:
python3.11 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. 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
  1. Navigate to the agents directory:
cd agents
  1. 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

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.