add README.md

This commit is contained in:
2026-06-05 11:24:08 +00:00
parent 08d9293cae
commit 0231c1f318
+19 -19
View File
@@ -1,15 +1,16 @@
# FAQ Bot ChromaDB + MCP Tool
# FAQ Bot ChromaDB + MCPtool
## Overview
## What it does
This repository contains a simple FAQ bot that answers questions about course materials using a local Chroma vector store and, when needed, calls a mock MCPstyle tool that returns course metadata.
The bot is built with **LangGraph** and **LangChain** and uses **Ollama** embeddings (`nomic-embed-text`).
* Loads a small set of markdown FAQ files into a local Chroma vector store.
* Provides a single MCPstyle tool `fetch_course_meta` that returns course metadata from a static JSON file.
* Uses a LangGraph React agent that routes a user question either to the vector store (Chroma) or to the MCP tool based on simple keyword detection.
* Interactive CLI with three example questions and a freeform mode.
## Prerequisites
* Python 3.10+
* Ollama server running locally with the `nomic-embed-text` model:
* Python3.10+
* Ollama running locally with the `nomic-embed-text` model:
```bash
ollama pull nomic-embed-text
```
@@ -20,22 +21,21 @@ The bot is built with **LangGraph** and **LangChain** and uses **Ollama** embedd
pip install -r requirements.txt
```
## Running the Bot
## Running the bot
```bash
python main.py
```
You will be prompted to enter a question. The bot will decide whether to answer from the FAQ documents (Chroma) or to call the mock MCP tool.
The script will:
1. Load `data/*.md` into Chroma.
2. Build the agent.
3. Run three sample questions.
4. Enter an interactive prompt.
## FAQ Files
## Files
The `data/` directory contains three example Markdown files that are loaded into the vector store.
## MCPstyle Tool
The tool `fetch_course_meta` simulates an external MCP call by reading a local `course_meta.json` file. In a real deployment this would be an HTTP request to an MCP server.
## License
MIT
* `main.py` entry point.
* `data/*.md` FAQ documents.
* `mock_meta.json` static metadata used by the MCP tool.
* `requirements.txt` dependencies.