Metadata-Version: 2.4
Name: codebase-retrieval-context-engine
Version: 2.0.7
Summary: Code retrieval engine — hybrid embedding + graph search for LLM context injection.
Project-URL: Homepage, https://github.com/nullmastermind/local-context-engine
Project-URL: Repository, https://github.com/nullmastermind/local-context-engine
Project-URL: Issues, https://github.com/nullmastermind/local-context-engine/issues
Author: nullmastermind
License: Apache-2.0
License-File: LICENSE
Keywords: LLM,MCP,code-search,codebase-retrieval,context,embeddings,retrieval
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.11
Requires-Dist: google-genai>=2.7.0
Requires-Dist: mcp>=1.1.2
Requires-Dist: numpy>=2.0
Requires-Dist: pathspec>=0.11
Requires-Dist: pydantic>=2.0
Requires-Dist: python-dotenv>=1.0
Requires-Dist: rich>=13.0
Requires-Dist: typer>=0.12
Requires-Dist: voyageai>=0.3
Provides-Extra: anthropic
Requires-Dist: anthropic>=0.25; extra == 'anthropic'
Provides-Extra: aws
Requires-Dist: boto3>=1.34; extra == 'aws'
Provides-Extra: azure
Requires-Dist: openai>=1.0; extra == 'azure'
Provides-Extra: debug
Requires-Dist: gradio>=4.0; extra == 'debug'
Provides-Extra: dev
Requires-Dist: httpx; extra == 'dev'
Requires-Dist: mypy; extra == 'dev'
Requires-Dist: pytest-asyncio; extra == 'dev'
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: respx; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Provides-Extra: gcp
Requires-Dist: anthropic[vertex]>=0.25; extra == 'gcp'
Requires-Dist: google-cloud-aiplatform>=1.38; extra == 'gcp'
Provides-Extra: openai
Requires-Dist: openai>=1.0; extra == 'openai'
Provides-Extra: treesitter
Requires-Dist: tree-sitter-c-sharp>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-go>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-java>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-javascript>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-php>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-python>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-ruby>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-rust>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter-typescript>=0.21; extra == 'treesitter'
Requires-Dist: tree-sitter>=0.21; extra == 'treesitter'
Description-Content-Type: text/markdown

<div align="center">
  <h1>codebase-retrieval-context-engine</h1>
  <p><strong>Code retrieval engine for LLM context via MCP.</strong></p>
  <p>
    <a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License"/></a>
  </p>
</div>

---

## Add to Claude Code

```bash
claude mcp add-json codebase-retrieval --scope user '{"type":"stdio","command":"uvx","args":["codebase-retrieval-context-engine"],"env":{"CORBELL_LLM_PROVIDER":"google","GOOGLE_API_KEY":"your-google-api-key","GOOGLE_MODEL":"gemini-3.1-flash-lite","CORBELL_EMBEDDING_MODEL":"voyage-4-lite","VOYAGE_API_KEY":"your-voyage-api-key"}}'
```

That's it. The AI agent passes workspace path and triggers index builds automatically.

## Update

```bash
uv tool upgrade codebase-retrieval-context-engine
```

Or if installed via `uvx` (auto-managed):

```bash
uvx --upgrade codebase-retrieval-context-engine
```

## Remove from Claude Code

```bash
claude mcp remove codebase-retrieval --scope user
```

After adding, you can also edit or remove the MCP config directly in `~/.claude.json`.

---

## Environment variables

| Variable | Description |
|---|---|
| `CORBELL_LLM_PROVIDER` | LLM provider for reranking (`google`, `anthropic`, `openai`) |
| `GOOGLE_API_KEY` | Google AI API key (supports multiple: `key1,key2,key3`) |
| `GOOGLE_MODEL` | e.g. `gemini-3.1-flash-lite` |
| `CORBELL_EMBEDDING_MODEL` | `voyage-4-lite`, `voyage-code-3`, or `gemini-embedding-001` |
| `VOYAGE_API_KEY` | Voyage AI API key (supports multiple: `key1,key2,key3`). Add a card to billing to unlock rate limits. |

---

## License

Apache 2.0
