Skip to content

A Model Context Protocol (MCP) server that enables LLMs to interact directly with a local PDF/EPUB document library through content-based and conceptual search.

License

Notifications You must be signed in to change notification settings

m2ux/concept-rag

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

661 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 Conceptual KB Search MCP Server

Node.js 18+ License: MIT MCP Compatible TypeScript

A RAG MCP server that enables LLMs to interact with a vector database chunked library of local PDF/EPUB documents through conceptual search. Combines corpus-driven concept extraction, WordNet semantic enrichment, and multi-signal hybrid ranking powered by LanceDB to augment retrieval accuracy.


Quick StartDocsSetupDevelopmentContributing


🎯 Overview

Concept-RAG uses an Goal → Activity → Skill → Tool architecture to help AI agents to efficiently acquire knowledge.

After initial setup of an always-applied rule, agents are able to use an exposed guidance resource to:

  1. Match the user's goal to an activity (e.g., "understand a topic", "explore a concept")
  2. Follow the skill workflow which orchestrates the right tool sequence
  3. Synthesize the answer with citations

This reduces context overhead and provides deterministic tool selection.


🚀 Quick Start

Prerequisites

  • Node.js 18+
  • Python 3.9+ with NLTK
  • OpenRouter API key (sign up here)
  • MCP Client (Cursor or Claude Desktop)

Installation

# Clone and build
git clone https://github.com/m2ux/concept-rag.git
cd concept-rag
npm install
npm run build

# Install WordNet
pip3 install nltk
python3 -c "import nltk; nltk.download('wordnet'); nltk.download('omw-1.4')"

# Configure API key
cp .env.example .env
# Edit .env and add your OpenRouter API key

Seed Your Documents

source .env

# Initial seeding (create database)
npx tsx hybrid_fast_seed.ts \
  --dbpath ~/.concept_rag \
  --filesdir ~/Documents/my-pdfs \
  --overwrite

# Incremental seeding (add new documents only)
npx tsx hybrid_fast_seed.ts \
  --dbpath ~/.concept_rag \
  --filesdir ~/Documents/my-pdfs

Configure MCP Client

Cursor (~/.cursor/mcp.json):

{
  "mcpServers": {
    "concept-rag": {
      "command": "node",
      "args": [
        "/path/to/concept-rag/dist/conceptual_index.js",
        "/home/username/.concept_rag"
      ]
    }
  }
}

Restart your MCP client and start searching. See SETUP.md for other IDEs.

🙏 Acknowledgments

Forked from lance-mcp by adiom-data.

📜 License

MIT License - see LICENSE for details.

About

A Model Context Protocol (MCP) server that enables LLMs to interact directly with a local PDF/EPUB document library through content-based and conceptual search.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •