MCPcopy
hub / github.com/run-llama/notebookllama

github.com/run-llama/notebookllama @v0.4.0 sqlite

repository ↗ · DeepWiki ↗ · release v0.4.0 ↗
190 symbols 866 edges 40 files 53 documented · 28%
README

NotebookLlaMa🦙

A fluffy and open-source alternative to NotebookLM!

https://github.com/user-attachments/assets/7e9cca45-8a4c-4dfa-98d2-2cef147422f2

A fully open-source alternative to NotebookLM, backed by LlamaCloud.

<a href="https://github.com/run-llama/notebookllama/blob/main/LICENSE"><img alt="License" src="https://img.shields.io/github/license/run-llama/notebookllama?color=blue"></a>
<a href="https://github.com/run-llama/notebookllama/stargazers"><img alt="Stars" src="https://img.shields.io/github/stars/run-llama/notebookllama?color=yellow"></a>
<a href="https://github.com/run-llama/notebookllama/issues"><img alt="Issues" src="https://img.shields.io/github/issues/run-llama/notebookllama?color=orange"></a>

Prerequisites

This project uses uv to manage dependencies. Before you begin, make sure you have uv installed.

On macOS and Linux:

curl -LsSf https://astral.sh/uv/install.sh | sh

On Windows:

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

For more install options, see uv's official documentation.


Get it up and running!

1. Clone the Repository

git clone https://github.com/run-llama/notebookllama
cd notebookllama/

2. Install Dependencies

uv sync

3. Configure API Keys

First, create your .env file by renaming the example file:

mv .env.example .env

Next, open the .env file and add your API keys:

4. Activate the Virtual Environment

(on mac/unix)

source .venv/bin/activate

(on Windows):

.\.venv\Scripts\activate

5. Create LlamaCloud Agent & Pipeline

You will now execute two scripts to configure your backend agents and pipelines.

First, create the data extraction agent:

uv run tools/create_llama_extract_agent.py

Next, run the interactive setup wizard to configure your index pipeline.

⚡ Quick Start (Default OpenAI): For the fastest setup, select "With Default Settings" when prompted. This will automatically create a pipeline using OpenAI's text-embedding-3-small embedding model.

🧠 Advanced (Custom Embedding Models): To use a different embedding model, select "With Custom Settings" and follow the on-screen instructions.

Run the wizard with the following command:

uv run tools/create_llama_cloud_index.py

6. Launch Backend Services

This command will start the required Postgres and Jaeger containers.

docker compose up -d

7. Run the Application

First, run the MCP server:

uv run src/notebookllama/server.py

Then, in a new terminal window, launch the Streamlit app:

streamlit run src/notebookllama/Home.py

[!IMPORTANT]

You might need to install ffmpeg if you do not have it installed already

And start exploring the app at http://localhost:8501/.


Contributing

Contribute to this project following the guidelines.

License

This project is provided under an MIT License.

Core symbols most depended-on inside this repo

execute
called by 10
src/notebookllama/instrumentation.py
_build_conversation_prompt
called by 8
src/notebookllama/audio.py
handle_completion
called by 7
tools/cli/embedding_app.py
_create_table
called by 4
src/notebookllama/documents.py
get_documents
called by 3
src/notebookllama/documents.py
run_workflow
called by 3
src/notebookllama/Home.py
_connect
called by 3
src/notebookllama/instrumentation.py
get_mind_map
called by 2
src/notebookllama/mindmap.py

Shape

Function 80
Method 70
Class 37
Route 3

Languages

Python100%

Modules by API surface

src/notebookllama/audio.py17 symbols
tests/test_audio.py16 symbols
tests/test_utils.py13 symbols
tests/test_models.py13 symbols
src/notebookllama/documents.py12 symbols
src/notebookllama/instrumentation.py10 symbols
tools/cli/screens/base.py9 symbols
src/notebookllama/processing.py8 symbols
src/notebookllama/workflow.py7 symbols
src/notebookllama/mindmap.py6 symbols
tools/cli/screens/initial.py5 symbols
tools/cli/screens/embedding_provider.py5 symbols

Dependencies from manifests, versioned

audioop-lts0.2.1 · 1×
elevenlabs2.5.0 · 1×
fastmcp2.9.2 · 1×
ffprobe0.5 · 1×
llama-cloud0.1.29 · 1×
llama-cloud-services0.6.38 · 1×
llama-index-core0.12.44 · 1×
llama-index-embeddings-azure-inference0.3.0 · 1×
llama-index-embeddings-bedrock0.5.2 · 1×
llama-index-embeddings-cohere0.5.1 · 1×
llama-index-embeddings-gemini0.3.2 · 1×
llama-index-embeddings-huggingface-api0.3.1 · 1×

For agents

$ claude mcp add notebookllama \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact