|
|
--- |
|
|
title: AI Digital Library Assistant |
|
|
emoji: 📚 |
|
|
colorFrom: blue |
|
|
colorTo: indigo |
|
|
sdk: gradio |
|
|
sdk_version: "5.38.0" |
|
|
app_file: app.py |
|
|
pinned: false |
|
|
license: mit |
|
|
tags: |
|
|
- mcp-in-action-track-consumer |
|
|
- mcp-in-action-track-creative |
|
|
- building-mcp-track-consumer |
|
|
- MCP-1st-Birthday |
|
|
--- |
|
|
The **AI Digital Library Assistant** is a next-generation knowledge management tool built for the **MCP 1st Birthday Hackathon**. It transforms your static document collection into an interactive, living library. |
|
|
|
|
|
Unlike traditional RAG (Retrieval Augmented Generation) apps, this project leverages the **Model Context Protocol (MCP)** to create a modular ecosystem of tools—Ingestion, Search, and Podcast Generation—that work harmoniously to help you consume information in the way that suits *you* best. |
|
|
|
|
|
```mermaid |
|
|
graph TD |
|
|
User((👤 User)) |
|
|
|
|
|
subgraph "Frontend (Gradio)" |
|
|
UI[Web Interface] |
|
|
PodcastUI[Podcast Studio] |
|
|
end |
|
|
|
|
|
subgraph "MCP Server Layer" |
|
|
MCPServer[Content Organizer MCP Server] |
|
|
|
|
|
subgraph "MCP Tools" |
|
|
IngestTool[📥 Ingestion Tool] |
|
|
SearchTool[🔍 Search Tool] |
|
|
GenTool[✨ Generative Tool] |
|
|
PodTool[🎧 Podcast Tool] |
|
|
end |
|
|
end |
|
|
|
|
|
subgraph "Service Layer" |
|
|
VecStore[(Vector Store)] |
|
|
DocStore[(Document Store)] |
|
|
LLM[LLM Service (OpenAI / Nebius AI)] |
|
|
ElevenLabs[ElevenLabs API] |
|
|
LlamaIndex[LlamaIndex Agent] |
|
|
end |
|
|
|
|
|
User <--> UI |
|
|
UI <--> MCPServer |
|
|
|
|
|
MCPServer --> IngestTool |
|
|
MCPServer --> SearchTool |
|
|
MCPServer --> GenTool |
|
|
MCPServer --> PodTool |
|
|
|
|
|
IngestTool --> VecStore |
|
|
IngestTool --> DocStore |
|
|
SearchTool --> VecStore |
|
|
GenTool --> LLM |
|
|
PodTool --> LlamaIndex |
|
|
PodTool --> ElevenLabs |
|
|
PodTool --> LLM |
|
|
``` |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
|
|
|
|
## 🚀 Quick Start |
|
|
|
|
|
Check out [QUICKSTART.md](QUICKSTART.md) for detailed local setup instructions. |
|
|
|
|
|
1. **Clone & Install**: |
|
|
```bash |
|
|
git clone https://huggingface.co/spaces/Nihal2000/AiDigitalLibraryAssistant |
|
|
pip install -r requirements.txt |
|
|
``` |
|
|
2. **Configure**: Add your `OPENAI_API_KEY` and `ELEVENLABS_API_KEY` to `.env`. |
|
|
3. **Run**: `python app.py` |
|
|
|
|
|
## 💡 How It Works |
|
|
|
|
|
### 1. The MCP Core |
|
|
At the heart of the application is the `AiDigitalLibraryAssistant`. It exposes atomic capabilities (Tools) that the frontend consumes. This means the same tools powering this UI could be connected to Claude Desktop or any other MCP client! |
|
|
|
|
|
### 2. 🎧 Podcast Studio (Star Feature) |
|
|
Turn your reading list into a playlist! The **Podcast Studio** is a flagship feature that transforms any selection of documents into an engaging, multi-speaker audio podcast. |
|
|
- **Intelligent Scripting**: Uses **LlamaIndex** and **OpenAI/Nebius AI** to analyze your documents and generate a natural, conversational script. |
|
|
- **Multi-Speaker Synthesis**: Leverages **ElevenLabs** to bring the script to life with distinct, realistic voices for each host. |
|
|
- **Customizable**: Choose your style (Educational, Casual, Deep Dive) and duration. |
|
|
|
|
|
## 🏆 Hackathon Tracks |
|
|
|
|
|
We are submitting to: |
|
|
- **Building MCP**: For our custom `AiDigitalLibraryAssistant` MCP server implementation. |
|
|
- **MCP in Action (Consumer/Creative)**: For the innovative Podcast interface that makes personal knowledge management accessible and fun. |
|
|
|
|
|
## 📜 License |
|
|
|
|
|
MIT License. Built with ❤️ for the AI community. |
|
|
|
|
|
## 🙏 Acknowledgements & Sponsors |
|
|
|
|
|
This project was built for the **MCP 1st Birthday Hackathon** and proudly leverages technology from: |
|
|
|
|
|
- **[OpenAI](https://openai.com)**: Providing the foundational intelligence for our document analysis and content generation. |
|
|
- **[Nebius AI](https://nebius.com)**: Powering our high-performance inference needs. |
|
|
- **[LlamaIndex](https://www.llamaindex.ai)**: The backbone of our data orchestration, enabling sophisticated RAG and agentic workflows for the Podcast Studio. |
|
|
- **[ElevenLabs](https://elevenlabs.io)**: Bringing our podcasts to life with industry-leading, hyper-realistic text-to-speech. |
|
|
- **[Hugging Face](https://huggingface.co)**: Hosting our application on **Spaces** and providing the **Gradio** framework for our beautiful, responsive UI. |
|
|
- **[Anthropic](https://anthropic.com)**: For pioneering the **Model Context Protocol (MCP)** that makes this modular architecture possible. |
|
|
|
|
|
## 🔌 Connect to Claude |
|
|
|
|
|
Want to use these tools directly inside Claude Desktop? |
|
|
Check out our [Client Setup Guide](CLIENT_SETUP.md) to connect this MCP server to your local Claude instance! |