# CodeGraphContext MCP server

> Index local code into a graph database so assistants can query calls, imports, class hierarchies and dependencies.

- Listing: https://mcp.tc/i/codegraphcontext
- Connect: this is a local (stdio) server; install it on your machine (see Install). The listing link is a page, not an MCP endpoint.
- Type: local (stdio)
- Auth: no API key needed
- Category: [Developer Tools](https://mcp.tc/c/developer-tools)
- Vendor: CodeGraphContext
- Homepage: <https://cgc.codes>
- Repository: <https://github.com/CodeGraphContext/CodeGraphContext>
- Package: pypi `codegraphcontext`

## About

CodeGraphContext parses local repositories with Tree-sitter or SCIP indexers and stores files, symbols, calls, inheritance and imports in a graph database. An assistant can then query callers, callees, class hierarchies and call chains instead of relying on plain text search. It also ships a CLI with the same indexing and query features, plus file watching to keep the graph current.

It runs locally as a Python package started with uvx, over stdio. No sign-in or API key is needed. An embedded graph database (FalkorDB Lite by default, or KuzuDB) is used out of the box, and Neo4j or other graph backends are optional. The repository must be indexed before it can be queried.

## What it can do

- Index local repositories into a queryable code graph
- Find callers, callees and call chains across files
- Explore class hierarchies and import relationships
- Spot dead code and unexpected dependencies
- Watch directories and update the graph on changes
- Load pre-indexed .cgc bundles of well-known repositories

## Example prompts

- "Index this repository and show everything that calls the parse\_config function."
- "Which modules import the auth package, directly or indirectly?"
- "Show the class hierarchy under BaseHandler in this project."
- "Find functions that are never called anywhere in the codebase."

## Install

### Claude Code

1. Run this in a terminal, in your project folder:

```bash
claude mcp add --transport stdio codegraphcontext -- uvx codegraphcontext mcp start
```

2. Start Claude Code and type `/mcp`. **codegraphcontext** should show as connected.

Add `--scope user` to make it available in every project.

### Claude Desktop

1. Open **Settings → Developer → Edit Config**. It opens `claude_desktop_config.json`. Add:

`claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "codegraphcontext": {
      "command": "uvx",
      "args": [
        "codegraphcontext",
        "mcp",
        "start"
      ]
    }
  }
}
```

2. Save the file and restart Claude Desktop.

Needs uv (Python) on your computer. The file lives in `~/Library/Application Support/Claude/` on macOS and `%APPDATA%\Claude\` on Windows.

### Cursor

[Add to Cursor](<https://cursor.com/install-mcp?name=codegraphcontext&config=eyJjb21tYW5kIjoidXZ4IiwiYXJncyI6WyJjb2RlZ3JhcGhjb250ZXh0IiwibWNwIiwic3RhcnQiXX0%3D>) (opens Cursor)

Or add it by hand to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (this project):

`mcp.json`:

```json
{
  "mcpServers": {
    "codegraphcontext": {
      "command": "uvx",
      "args": [
        "codegraphcontext",
        "mcp",
        "start"
      ]
    }
  }
}
```

Needs uv (Python) on your computer.

### VS Code

[Install in VS Code](<https://vscode.dev/redirect/mcp/install?name=codegraphcontext&config=%7B%22type%22%3A%22stdio%22%2C%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22codegraphcontext%22%2C%22mcp%22%2C%22start%22%5D%7D>) (opens VS Code)

Or from a terminal:

```bash
code --add-mcp '{"name":"codegraphcontext","type":"stdio","command":"uvx","args":["codegraphcontext","mcp","start"]}'
```

Or commit it to the repo in `.vscode/mcp.json`:

`.vscode/mcp.json`:

```json
{
  "servers": {
    "codegraphcontext": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "codegraphcontext",
        "mcp",
        "start"
      ]
    }
  }
}
```

Needs uv (Python) on your computer.

### Devin Desktop

1. Add it to `~/.config/devin/mcp_config.json` (macOS and Linux) or `%APPDATA%\devin\mcp_config.json` (Windows):

`mcp_config.json`:

```json
{
  "mcpServers": {
    "codegraphcontext": {
      "command": "uvx",
      "args": [
        "codegraphcontext",
        "mcp",
        "start"
      ]
    }
  }
}
```

2. Refresh the MCP server list in Cascade.

Devin Desktop is the new name for Windsurf.

### Codex

```bash
codex mcp add codegraphcontext -- uvx codegraphcontext mcp start
```

Or edit `~/.codex/config.toml` directly:

`config.toml`:

```toml
[mcp_servers.codegraphcontext]
command = "uvx"
args = ["codegraphcontext", "mcp", "start"]
```

Needs uv (Python) on your computer.

### Gemini CLI

```bash
gemini mcp add codegraphcontext uvx codegraphcontext mcp start
```

This adds it to the current project. Add `-s user` to use it everywhere.

### Any client

Most clients that start local servers accept this shape:

```json
{
  "mcpServers": {
    "codegraphcontext": {
      "command": "uvx",
      "args": [
        "codegraphcontext",
        "mcp",
        "start"
      ]
    }
  }
}
```

Zed puts servers under `context_servers` in its settings, with the same `command`, `args` and `env` fields.

Needs uv (Python) on your computer.

## Details

- Server version: 0.6.13
- Last checked: 2026-10-03
- Listed: 2026-10-03
- Updated: 2026-10-03

---
Source: https://mcp.tc/i/codegraphcontext (mcp.tc is an independent directory, not affiliated with this server's publisher). Corrections: https://mcp.tc/report
