← Package directory
Available on winget

Install agent-lsp

MCP server giving AI agents reliable access to language server protocol

Install with winget
winget install --id BlackwellSystems.agent-lsp
Upgrade
winget upgrade --id BlackwellSystems.agent-lsp
Uninstall
winget uninstall --id BlackwellSystems.agent-lsp

About agent-lsp

agent-lsp is a stateful MCP server over real language servers. It keeps the language server's semantic index warm and adds a skill layer that turns multi-step code operations into single, correct workflows. 50 tools, 30 languages, persistent sessions.

What's new in 0.16.0

Fixes a file-corruption bug in rename_symbol (#12, reported by @V0idk), makes speculative confidence honest about still-indexing servers, and upgrades gcf-go to v1.5.0. Fixed - rename_symbol file corruption (#12): rename_symbol (non-dry-run) used to return the raw WorkspaceEdit and rely on the caller copying it back into apply_edit — the only edit tool that did so; replace_symbol_body, insert_after_symbol, insert_before_symbol, and safe_delete_symbol all apply server-side. That round-trip corrupted files: under AGENT_LSP_OUTPUT_FORMAT=gcf the edit was GCF-encoded (a summary format that flattens each TextEdit's range into positional path columns like range>end>character and requires the verbatim newText to be copied out of tool output and back into a tool argument), so LLM callers transposed the range offsets and truncated a large newText, overwriting the file. gcf-go itself encodes and decodes these WorkspaceEdits losslessly (verified), so this was an agent-lsp wire-format and round-trip bug, not a gcf-go bug. Reported by @V0idk. Changed - BREAKING: rename_symbol now applies the edit itself and returns a summary instead of returning a WorkspaceEdit for the caller to apply. The result is Renamed to "X" across N location(s) in M file(s): ... plus a post-rename diagnostics count, consistent with the other edit tools — the WorkspaceEdit never leaves the server as data to reconstruct, which eliminates the round-trip that corrupted files (#12). A separate apply_edit call after a non-dry-run rename is no longer needed (or wanted); apply_edit remains for its text-match mode. The dr...

Read release notes

Version history

Version Updated Notes
0.16.0 Unknown Fixes a file-corruption bug in rename_symbol (#12, reported by @V0idk), makes speculative confidence honest about still-indexing servers, and upgrades gcf-go to v1.5.0. Fixed - rename_symbol file corruption (#12): rename...
0.15.2 Unknown v0.15.2: GCF primer accuracy (spec v3.2) Patch release. Corrects the GCF format primer embedded in agent-lsp's MCP server instructions so LLMs parse tool responses accurately from the first call. Fixed - Nested-object fl...
0.2.1 Unknown No notes