Merge pull request #1528 from colbymchenry/issue/671-mcp-supported-languages
feat(mcp): surface supported languages in MCP server instructions (recut of #678)
This commit is contained in:
@@ -15,6 +15,8 @@ and adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
- `codegraph_explore` no longer re-sends source it already returned earlier in the same conversation. A file it has already shown you comes back as a short pointer — the path, the symbols and the exact line range, with confirmation that the file hasn't changed since — and the space that frees is spent on code you haven't seen yet, so a follow-up call covers new ground instead of repeating the last one. If a file was edited in between, its source is always shown again in full. Set `CODEGRAPH_EXPLORE_DEDUP=0` to turn this off.
|
||||
|
||||
- When an agent connects over MCP, CodeGraph now states up front that it indexes 30+ languages — TypeScript/JavaScript, Python, Go, Rust, Java, C#, C/C++, PHP, Ruby, Swift, Kotlin, and more — so agents no longer assume a language isn't supported and skip the graph. (#671)
|
||||
|
||||
### Fixes
|
||||
|
||||
- A long-lived index no longer drifts away from what a fresh `codegraph index` would produce. When a file gained or lost a symbol, references to that name in files the sync never touched kept pointing at the definition that was correct before the change, and — because nothing distinguished two same-named definitions — the winner could come down to the order files happened to be written, which differs between a full index and a sync. On this project's own repository, replaying 80 commits through `sync` left 5.7% of connections wrong; it is now 1.3%, and the wrong-answers-still-being-asserted half drops by 99.7%. Since call edges are what flow questions follow and what `codegraph_explore` ranks files by, this quietly degraded answers as an index aged, with nothing to indicate it. Syncing is unchanged in speed, and an edit that only changes a function's body does no extra work at all. Set `CODEGRAPH_NO_REBIND=1` to opt out.
|
||||
|
||||
@@ -22,8 +22,10 @@ export const SERVER_INSTRUCTIONS = `# Codegraph — code intelligence over an in
|
||||
Codegraph is a SQLite knowledge graph of every symbol, edge, and file in
|
||||
the workspace — pre-computed structure you would otherwise re-derive by
|
||||
reading files (cached intelligence: thousands of parse/trace decisions you
|
||||
don't pay to re-reason each run). Reads are sub-millisecond; the index lags
|
||||
writes by ~1s through the file watcher. Reach for it BEFORE *and* while
|
||||
don't pay to re-reason each run). It indexes 30+ languages
|
||||
(TypeScript/JavaScript, Python, Go, Rust, Java, C#, C/C++, PHP, Ruby, Swift,
|
||||
Kotlin, and more) — don't assume a language here isn't covered. Reads are
|
||||
sub-millisecond; the index lags writes by ~1s through the file watcher. Reach for it BEFORE *and* while
|
||||
writing or editing code — not just for questions: one call returns the
|
||||
verbatim source PLUS who calls it and what it affects, so you edit with the
|
||||
blast radius in view. More accurate context, in far fewer tokens and
|
||||
@@ -87,7 +89,7 @@ calls; a grep/read exploration is dozens.
|
||||
export const SERVER_INSTRUCTIONS_NO_ROOT_INDEX = `# Codegraph — available (per-project; pass projectPath)
|
||||
|
||||
Codegraph is a SQLite knowledge graph of a codebase's symbols, edges, and
|
||||
files: one \`codegraph_explore\` call returns the verbatim, line-numbered source
|
||||
files (30+ languages): one \`codegraph_explore\` call returns the verbatim, line-numbered source
|
||||
of the relevant symbols PLUS the call paths between them and a blast-radius
|
||||
summary — replacing a grep + Read loop with one round-trip.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user