> ## Documentation Index
> Fetch the complete documentation index at: https://docs.r28.ai/charter/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Two dependencies, one command.

Charter requires Python 3.10 or later.

```bash theme={null}
pip install charter
```

That is the whole install. The core depends on `pydantic` and `httpx` and nothing else. If a coding agent is doing the setup, the [prompt](/charter/charter/start/coding-agents) runs this step for you.

## Verify

```python verify_install.py theme={null}
import charter

print(charter.__version__)
```

Declaring tools, calling them, [OAuth refresh](/charter/charter/auth/authorization-servers), [egress maps](/charter/charter/boundary/egress-control), every [pack](/charter/charter/packs/overview), and the OpenAI tool format all work from this install with nothing added.

## Extras

Two integrations need a library of their own. Neither is a dependency of the core.

```bash theme={null}
pip install 'charter[langchain]'   # the LangChain adapter
pip install 'charter[mcp]'         # the MCP server
```

See [framework adapters](/charter/charter/using/adapters) and [MCP](/charter/charter/using/mcp).

## Development

To work on Charter itself:

```bash theme={null}
uv venv
uv pip install -e ".[dev,langchain,mcp]"
uv run pytest
uv run ruff check src tests examples
uv run pyright --pythonpath .venv/bin/python src
```

The test suite is offline by rule. Every HTTP interaction is mocked with `respx`, and a test that reaches the network is a bug in the test.
