LRDISCO2_RAG_MCP
Provides a single tool to query a knowledge base of the Land Rover Discovery II maintenance manual, using RAG with LLAMA 3 and ChromaDB.
README
Land Rover Discovery II Maintenance Assistant (MCP Server)
This is a transformation of https://github.com/TommiA/LRDISCO2_RAG_LLAMA3 to MCP server.
This is an intersectional combination of Artificial Intelligence (AI) and specifically Large Language Models (LLM), Natural Language Processing, PDFs, Land Rovers and car maintenance - a rainy day summer project for fun.
This project implements a Retrieval-Augmented Generation (RAG) system with a quantized version of the LLAMA 3 8B Large Language Model. The system uses the Chroma vector database to store parts of the Land Rover Discovery II maintenance manual (not included in this repository) and provides a knowledge base about the Discovery II and its maintenance.
The core of this system is a Model Control Protocol (MCP) server that exposes a single tool for querying the knowledge base. This server architecture allows for flexible integration with various clients and applications.
MCP Server Architecture
The system is built around a FastMCP server that provides a single tool for querying the knowledge base:
- MCP Server:
LRDISCO2_MCP_server.py- A FastMCP server that exposes a single tool for querying the ChromaDB knowledge base - Knowledge Base: ChromaDB with embeddings from the Land Rover Discovery II maintenance manual
- Embedding Model: GPT4All's Embed4All model for creating document embeddings
- Query Tool:
search_knowledge_base- A single tool that searches the ChromaDB knowledge base for documents relevant to the user's query
The MCP server architecture allows for seamless integration with various clients and applications, making it easy to query the Land Rover Discovery II maintenance knowledge base from different environments.
Core Components
1. Knowledge Base
The ChromaDB database stores chunks of text from the Land Rover Discovery II maintenance manual, each with an embedding vector created using the GPT4All Embed4All model. The database is stored at data/db/ and uses the collection name LR_Disco_2_embed4all.
2. MCP Server
The LRDISCO2_MCP_server.py file implements the FastMCP server that exposes a single tool for querying the knowledge base. The server uses the following components:
- ChromaDB client connected to the persistent database
- Embed4All model for creating query embeddings
- FastMCP framework for handling MCP protocol
3. Query Tool
The search_knowledge_base function is the only tool exposed by the MCP server. It takes a user query and returns relevant documents from the ChromaDB knowledge base. The function:
- Creates an embedding for the user's query
- Searches ChromaDB using the query embedding
- Returns the top results with their distances and documents
Usage
Starting the MCP Server
To start the MCP server, run:
python LRDISCO2_MCP_server.py
The server will start listening for MCP requests and expose the search_knowledge_base tool.
Using the MCP Server on LM Studio
See 'mcp.json' for adding this MCP server to your LM Studio instance, edit the path accordingly.
Testing using Langchain client, local MCP Server and LM Studio
Run 'langchain_test_client.py', set LM Studio ip-addresses as needed in script or setting LM_STUDIO_BASEURL using .env, use OpenAI URL style.
'langchain_test_client.py' switches
The script supports the following command-line options:
-p,--prompt: custom user prompt text-i,--interactive: start an interactive chat loop
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
E2B
Using MCP to run code via e2b.