diff --git a/README.md b/README.md index 659484c..d37f79e 100755 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ LEANN achieves this through *graph-based selective recomputation* with *high-deg LEANN vs Traditional Vector DB Storage Comparison

-> **The numbers speak for themselves:** Index 60 million text chunks in just 6GB instead of 201GB. From emails to browser history, everything fits on your laptop. [See detailed benchmarks for different applications below ↓](#storage-comparison) +> **The numbers speak for themselves:** Index 60 million text chunks in just 6GB instead of 201GB. From emails to browser history, everything fits on your laptop. [See detailed benchmarks for different applications below ↓](#-storage-comparison) 🔒 **Privacy:** Your data never leaves your laptop. No OpenAI, no cloud, no "terms of service". @@ -70,8 +70,8 @@ uv venv source .venv/bin/activate uv pip install leann ``` - -> Low-resource? See “Low-resource setups” in the [Configuration Guide](docs/configuration-guide.md#low-resource-setups). +
diff --git a/packages/leann-core/src/leann/mcp.py b/packages/leann-core/src/leann/mcp.py index f370f7b..a413883 100755 --- a/packages/leann-core/src/leann/mcp.py +++ b/packages/leann-core/src/leann/mcp.py @@ -64,19 +64,6 @@ def handle_request(request): "required": ["index_name", "query"], }, }, - { - "name": "leann_status", - "description": "📊 Check the health and stats of your code indexes - like a medical checkup for your codebase knowledge!", - "inputSchema": { - "type": "object", - "properties": { - "index_name": { - "type": "string", - "description": "Optional: Name of specific index to check. If not provided, shows status of all indexes.", - } - }, - }, - }, { "name": "leann_list", "description": "📋 Show all your indexed codebases - your personal code library! Use this to see what's available for search.", @@ -118,15 +105,6 @@ def handle_request(request): ] result = subprocess.run(cmd, capture_output=True, text=True) - elif tool_name == "leann_status": - if args.get("index_name"): - # Check specific index status - for now, we'll use leann list and filter - result = subprocess.run(["leann", "list"], capture_output=True, text=True) - # We could enhance this to show more detailed status per index - else: - # Show all indexes status - result = subprocess.run(["leann", "list"], capture_output=True, text=True) - elif tool_name == "leann_list": result = subprocess.run(["leann", "list"], capture_output=True, text=True) diff --git a/packages/leann-mcp/README.md b/packages/leann-mcp/README.md index 78615fa..f19bb85 100644 --- a/packages/leann-mcp/README.md +++ b/packages/leann-mcp/README.md @@ -13,10 +13,20 @@ This installs the `leann` CLI into an isolated tool environment and includes bot ## 🚀 Quick Setup -Add the LEANN MCP server to Claude Code: +Add the LEANN MCP server to Claude Code. Choose the scope based on how widely you want it available. Below is the command to install it globally; if you prefer a local install, skip this step: ```bash -claude mcp add leann-server -- leann_mcp +# Global (recommended): available in all projects for your user +claude mcp add --scope user leann-server -- leann_mcp +``` + +- `leann-server`: the display name of the MCP server in Claude Code (you can change it). +- `leann_mcp`: the Python entry point installed with LEANN that starts the MCP server. + +Verify it is registered globally: + +```bash +claude mcp list | cat ``` ## 🛠️ Available Tools @@ -25,19 +35,24 @@ Once connected, you'll have access to these powerful semantic search tools in Cl - **`leann_list`** - List all available indexes across your projects - **`leann_search`** - Perform semantic searches across code and documents -- **`leann_ask`** - Ask natural language questions and get AI-powered answers from your codebase + ## 🎯 Quick Start Example ```bash +# Add locally if you did not add it globally (current folder only; default if --scope is omitted) +claude mcp add leann-server -- leann_mcp + # Build an index for your project (change to your actual path) -leann build my-project --docs ./ +# See the advanced examples below for more ways to configure indexing +# Set the index name (replace 'my-project' with your own) +leann build my-project --docs $(git ls-files) # Start Claude Code claude ``` -## 🚀 Advanced Usage Examples +## 🚀 Advanced Usage Examples to build the index ### Index Entire Git Repository ```bash @@ -48,7 +63,7 @@ leann build my-repo --docs $(git ls-files) --embedding-mode sentence-transformer # Index only tracked Python files from Git. leann build my-python-code --docs $(git ls-files "*.py") --embedding-mode sentence-transformers --embedding-model all-MiniLM-L6-v2 --backend hnsw -# If you encounter empty requests caused by empty files (e.g., __init__.py), exclude zero-byte files. thanks @ww2283 for pointing (that)[https://github.com/yichuan-w/LEANN/issues/48] out +# If you encounter empty requests caused by empty files (e.g., __init__.py), exclude zero-byte files. Thanks @ww2283 for pointing [that](https://github.com/yichuan-w/LEANN/issues/48) out leann build leann-prospec-lig --docs $(find ./src -name "*.py" -not -empty) --embedding-mode openai --embedding-model text-embedding-3-small ``` @@ -86,6 +101,7 @@ Help me understand this codebase. List available indexes and search for authenti LEANN in Claude Code

+If you see a prompt asking whether to proceed with LEANN, you can now use it in your chat! ## 🧠 How It Works @@ -121,3 +137,11 @@ To remove LEANN ``` uv pip uninstall leann leann-backend-hnsw leann-core ``` + +To globally remove LEANN (for version update) +``` +uv tool list | cat +uv tool uninstall leann-core +command -v leann || echo "leann gone" +command -v leann_mcp || echo "leann_mcp gone" +```