legal-rag-toolkit
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@legal-rag-toolkitSearch for termination clauses in lease agreements"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Legal RAG Toolkit
Semantic search over Turkish legal contracts and emails, powered by an MCP server that plugs directly into Claude Desktop and Claude Code.
Instead of building a separate web UI, Claude is the interface — the toolkit provides the retrieval backend as MCP tools and Claude Code skills.
What it does
Ingest PDF, DOCX, and
.emlfiles — parse, chunk, embed, and store in a local vector databaseSearch contracts and emails with hybrid dense+sparse retrieval (Turkish and English queries)
Retrieve full documents by filename for deep reading
Skills for Claude Code:
/search-contract,/analyze-clause,/draft-response,/ingest-docs,/ingest-emails
Related MCP server: Enterprise Knowledge MCP Server
Architecture
Claude Desktop / Claude Code
|
| MCP (stdio)
|
[Legal RAG MCP Server] ── Python, FastMCP
|
|── search_contracts hybrid vector search over contracts
|── search_emails hybrid vector search over emails
|── get_document retrieve all chunks for a file
|── ingest_docs parse + embed PDF/DOCX documents
|── ingest_email parse + embed .eml files
|── list_sources show indexed files and stats
|
|── LanceDB embedded vector DB (file-based, zero-server)
|── BAAI/bge-m3 multilingual embeddings (1024d, 8K context)
|── PyMuPDF + pdfplumber PDF parsing
|── python-docx DOCX parsing
|── imap_tools email parsingSetup
# Clone
git clone https://github.com/avocatt/legal-rag-toolkit.git
cd legal-rag-toolkit
# Create venv and install
python3.11 -m venv .venv
source .venv/bin/activate
pip install -e .
# Store HuggingFace token in macOS Keychain (for BGE-M3 model download)
security add-generic-password -a $USER -s HF_TOKEN -w "hf_your_token_here"Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"legal-rag-toolkit": {
"command": "/path/to/legal-rag-toolkit/.venv/bin/python",
"args": ["/path/to/legal-rag-toolkit/src/server/mcp_server.py"]
}
}
}Restart Claude Desktop. The tools will appear under the hammer icon.
Claude Code
# Add as MCP server
claude mcp add legal-rag-toolkit -- /path/to/legal-rag-toolkit/.venv/bin/python /path/to/legal-rag-toolkit/src/server/mcp_server.pyUsage
Once connected, ask Claude naturally:
"Index the contracts in ~/Documents/contracts"
"Search for termination clauses in lease agreements"
"Kira sozlesmelerinde tahliye sartlarini ara"
"Show me all indexed documents"
"Pull up the full text of kira_sozlesmesi_048.pdf"
Stack
Component | Choice | Why |
MCP Server | Python + FastMCP | Single language, mature SDK |
Embeddings | BAAI/bge-m3 | 8K context, hybrid retrieval, MIT, Turkish via XLM-RoBERTa |
Vector DB | LanceDB | Embedded, file-based, hybrid search, zero infrastructure |
PDF Parsing | PyMuPDF + pdfplumber | Fast, lightweight, good table extraction |
DOCX Parsing | python-docx | Structural parsing with style detection |
Email Parsing | imap_tools | Turkish charset support (ISO-8859-9) |
Roadmap
KVKK (Turkish GDPR) PII masking before indexing
Structure-aware chunking using heading styles and font sizes
Cross-encoder reranking with
BAAI/bge-reranker-v2-m3Docling integration for OCR and complex PDF layouts
Local LLM support via OpenAI-compatible API
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Private persistent memory for Claude, ChatGPT & Gemini via MCP - semantic search, zero-code setup.
Hosted MCP memory: save sessions/decisions once, search from Claude, Cursor, ChatGPT. EU-hosted FTS.
The Needle MCP server enables semantic search on documents stored in files like PDFs, DOCX, and XLSX by connecting AI applications to external data sources. It provides capabilities to create and manage document collections, perform natural language searches on stored content, and retrieve relevant information without requiring exact keyword matches.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA local-first MCP server that enables semantic search over PDF and DOCX documents using structure-aware parsing and vector storage. It allows users to query their local knowledge base through Claude Code without cloud dependencies or GPU requirements.-
- AlicenseNot gradedqualityDmaintenanceEnables querying enterprise documents (DOCX, PDF, PPTX) using natural language, with hybrid search and MCP integration for Claude Desktop and other agents.MIT
- AlicenseBqualityDmaintenanceEnables AI-driven semantic code search via natural language queries, integrating with MCP clients like Claude Desktop to retrieve relevant code context from any codebase.1MIT
- AlicenseNot gradedqualityBmaintenanceA Türk hukuk MCP sunucusu that enables searching and retrieving Turkish legal decisions (Yargıtay, Danıştay, etc.) with semantic search via NVIDIA embeddings and a Turkish chat tool powered by Llama 3.3 70B.MIT