# The LLMGRAPH MCP server

> A local MCP server for Windows that answers who calls a function and what breaks if it changes, for Python and TypeScript. Labels every line.

LLMGRAPH is a local MCP server that answers five questions about your code, including who calls a function and which callers an edit missed. It runs on Windows x64 for Python and TypeScript/JavaScript, and any MCP agent can use it.

## The five questions

Your agent asks one of these through MCP. The descriptions are the server's own words, and each question has its own page.

- [who_calls](https://beta.llmgraph.in/docs/questions/who_calls.md): Every place that calls this function, plus calls we can't see.
- [what_breaks_if_changed](https://beta.llmgraph.in/docs/questions/what_breaks_if_changed.md): Everything that depends on this, directly or indirectly, and what we can't see.
- [check_my_changes](https://beta.llmgraph.in/docs/questions/check_my_changes.md): After editing: callers you didn't update, and anything we can't see.
- [what_is_unknown](https://beta.llmgraph.in/docs/questions/what_is_unknown.md): Where our view is blind (dynamic calls, unknown types, unreadable files) and why.
- [explain](https://beta.llmgraph.in/docs/questions/explain.md): Why we said this: the evidence behind one answer line.

## How the answers read

Every line of an answer carries one of five labels, from certain to cannot_see, and a line that cannot be proven says so instead of guessing. What each label means is in [the glossary](https://beta.llmgraph.in/docs/answers/what-the-labels-mean.md); how to read a whole answer is on [reading an answer](https://beta.llmgraph.in/docs/answers/reading-an-answer.md). Real answers from open-source repos, including where it loses to a plain text search, are on [real answers](https://beta.llmgraph.in/docs/real-answers.md).

## Add it to an agent

Any agent that can use MCP servers can run it. The server is started by your agent with one command:

```sh
npx -y llmgraph-mcp
```

The first time your agent asks a question, LLMGRAPH answers with a sign-in link; after that you ask as usual. The place to put the command is different in each agent, and [Set up with your agent](https://beta.llmgraph.in/docs/start.md) has a tab for each of the seven. Claude Code users can install [the plugin](https://beta.llmgraph.in/docs/plugin.md) instead: it adds the server and a [stop check](https://beta.llmgraph.in/docs/stop-check.md).

## Where it runs

On your computer. Your code is read and analysed on your machine, and the beta runs on Windows x64 only. It reads Python and TypeScript/JavaScript; other languages are not read, and [what it can't see](https://beta.llmgraph.in/docs/limits.md) lists the rest.

## More

- [Questions and answers](https://beta.llmgraph.in/docs/faq.md): agents, languages, privacy, the trial.
- [Grep, language server or LLMGRAPH](https://beta.llmgraph.in/guides/grep-language-server-or-llmgraph.md): when to use text search, a language server or LLMGRAPH.
- [How LLMGRAPH is put together](https://beta.llmgraph.in/docs/how-it-fits.md): the packages and the programs that run.
