Content
# Gen AI Lyrics Search Agent
A generative AI agent that can search for song lyrics across the web and return results in a specific format for mobile apps. Built with Model Context Protocol (MCP) for standardized tool integration.
## Features
- 🔍 Web-based lyrics search across multiple sources
- 🤖 Generative AI-powered conversation interface
- 🔌 MCP-compliant tool integration
- 🚀 FastAPI-based REST API
- 🔒 Authentication and rate limiting
- 📊 Performance monitoring and analytics
## Prerequisites
- Python 3.10 or higher
- Poetry for dependency management
- Docker (optional)
## Setup
1. Clone the repository:
```bash
git clone <repository-url>
cd lyrics-search-agent
```
2. Install dependencies using Poetry:
```bash
poetry install
```
3. Set up environment variables:
```bash
cp .env.example .env
# Edit .env with your configuration
```
4. Run the application:
```bash
poetry run uvicorn app.main:app --reload
```
Or using Docker:
```bash
docker build -t lyrics-search-agent .
docker run -p 8000:8000 lyrics-search-agent
```
## API Documentation
Once the application is running, visit:
- API documentation: http://localhost:8000/docs
- ReDoc alternative: http://localhost:8000/redoc
### Key Endpoints
- `GET /`: Service information
- `POST /search`: Search for lyrics
- `GET /tools`: List available tools
## Development
### Project Structure
```
app/
├── __init__.py
├── main.py
├── mcp/
│ ├── __init__.py
│ └── protocol.py
└── tools/
└── web_search.py
```
### Adding New Tools
1. Create a new tool class in `app/tools/`
2. Implement the `BaseTool` interface
3. Register the tool in `app/main.py`
## Testing
Run tests using pytest:
```bash
poetry run pytest
```
## Contributing
1. Fork the repository
2. Create a feature branch
3. Commit your changes
4. Push to the branch
5. Create a Pull Request
## License
This project is licensed under the MIT License - see the LICENSE file for details.
## Acknowledgments
- OpenAI/Anthropic for LLM capabilities
- FastAPI for the web framework
- LangChain for LLM orchestration
Connection Info
You Might Also Like
awesome-mcp-servers
A collection of MCP servers.
git
A Model Context Protocol server for Git automation and interaction.
cc-switch
All-in-One Assistant for Claude Code, Codex & Gemini CLI across platforms.
TrendRadar
TrendRadar: Your hotspot assistant for real news in just 30 seconds.
oh-my-opencode
Background agents · Curated agents like oracle, librarians, frontend...
Appwrite
Build like a team of hundreds