# cyberchitta/llm-context.py [Health: Active]

**Category:** 📂 File Systems  
**Repository:** https://github.com/cyberchitta/llm-context.py  
**GitHub Stars:** 307  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/cyberchitta-llm-context-py

## Description
Share code context with LLMs via MCP or clipboard

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "llm-context-py": {
    "command": "uvx",
    "args": ["--from","llm-context","lc-mcp"]
  }
}
```

## Documentation

## What cyberchitta/llm-context.py does

The cyberchitta/llm-context.py MCP server curates code context from a local project for an agent, a chat prompt, or a dispatched sub-agent. It turns file-selection decisions into reusable rules instead of requiring a developer to copy files manually for every task.

A generated context pack can contain complete contents for selected files, structural excerpts for supporting files, a filtered listing of included and excluded paths, and a timestamp. This lets a consumer see what it received and gives follow-up commands a reference point for resolving missing or changed files.

The package also supports clipboard-based workflows. Without MCP, a developer can select and pack context for pasting into a chat. With MCP, the model can request additional context and check whether source files changed after the pack was created.

## How it works

After initialization, the project receives an `lc-curate-context` skill under `.claude/skills/`, along with the `.llm-context/` working area. The skill guides an agent through identifying needed files, writing a rule, validating the selection, and producing a pack. Claude Code loads the skill automatically; other environments can read the installed files directly.

Rules use YAML frontmatter and can compose filters, excerpting behavior, full-file patterns, and explanatory text. Files expected to be edited can be included in full, while supporting code can be represented through signatures and definitions. Selection is also affected by `.gitignore` files, so the resulting listing is intentionally limited to paths visible to the rule and repository filters.

The command-line workflow can send a pack to stdout for a pipe or redirect. An optional mode includes shell fetch instructions that a child agent can use to request omitted files from the repository root.

## Setup and configuration

Install the package with `uv tool install "llm-context>=0.6.0"`, change to the project root, and run `lc-init`. The MCP configuration runs `lc-mcp` through `uvx`:

```json
{
  "mcpServers": {
    "llm-context": {
      "command": "uvx",
      "args": ["--from", "llm-context", "lc-mcp"]
    }
  }
}
```

The cyberchitta/llm-context.py MCP server does not document required environment variables. Upgrades use `uv tool upgrade llm-context`; subsequent `lc-*` commands refresh the installed skill, rules, and templates.

## Tools and capabilities

The MCP workflow exposes these documented tools:

- `lc_missing`: identifies files not included in the available context.
- `lc_changed`: checks for files changed since the pack timestamp.
- `lc_outlines`: provides structural information about code.
- `lc_preview`: reports selected files, context size, and related definitions found through the code graph.

The related CLI includes `lc-select`, `lc-context`, `lc-preview`, and `lc-init`. `lc-context` can copy a pack to the clipboard or write it to stdout when requested. `lc-preview` is useful for checking whether a rule omitted a definition required by the selected files.

The cyberchitta/llm-context.py MCP server is best suited to local repositories where an agent needs focused, inspectable context rather than an indiscriminate dump of the project. It does not replace repository access: packs are partial, and the generated listing can omit files excluded by repository filters or the rule.

_Full upstream README: https://allmcps.com/mcp/cyberchitta-llm-context-py/readme_

