Tools
Neusis Neuron exposes exactly three read-only tools, all scoped to the bound KB repository. They are the upstream GitHub MCP tools, reused unchanged in behavior and wrapped so they can only ever touch the bound repo.
| Tool | What it does |
|---|---|
get_file_contents | Read a file, or list the entries of a directory. |
get_repository_tree | List the repository file tree (recursive, or scoped to a path prefix). |
search_code | Search code across the repository, automatically confined to the bound repo. |
In the agent these appear flat-namespaced with your server's mcp key as a prefix — for example neusis-neuron_get_file_contents (see Configuration).
Scoping guarantees
The whole point of Neusis Neuron is that these tools cannot reach beyond the bound repo:
- No
owner/repoparameters. They are removed from the published tool schemas and injected by the server from the--kb-repobinding. The agent reads, for example,get_file_contents(path, ref?)— there is nothing for it to set to a different repository. - Search is forced in-scope.
search_codecannot take a repo argument; the server prepends arepo:OWNER/REPOqualifier to every query. Even if the agent supplies its ownrepo:qualifier, the bound repo wins — a search can never return results from an unrelated repository. - Everything else is masked. All other upstream GitHub MCP tools — issues, pull requests, branches, Actions, releases, and every write operation — are not registered and are unreachable. The binary has no write capability at all.
Typical agent flow
A KB repository managed by Project Brain usually contains an agent guide, a generated knowledge-graph wiki, and ingested context. A session typically reads:
get_file_contentson the repo's agent guide (e.g.agent-guide.md) to learn the layout.get_file_contentson the generated wiki (e.g.graphify-out/wiki/index.md) as an entry point.get_repository_treeandsearch_codeto traverse and locate specific decisions or docs.
Working with large repositories
get_repository_tree preserves the upstream recursive flag, path scoping, and pagination, so the agent can keep responses small on a large KB:
- Scope to a path prefix instead of pulling the whole tree.
- Use pagination rather than requesting everything at once.
- Reach for
search_codeto jump straight to relevant files.
Missing files
If a requested path does not exist — common on a freshly seeded KB repo where, say, graphify-out/ has not been generated yet — the tool returns a normal "not found" result rather than an error that aborts the session.