https://www.amazingcto.com/lsp-in-claude/

For Go:

go install golang.org/x/tools/gopls@latest

For TypeScript/JavaScript:

npm install -g typescript-language-server typescript

For Python:

npm install -g pyright

For Rust:

rustup component add rust-analyzer

For Kotlin


For Swift


/plugin install gopls-lsp@claude-plugins-official

After installation you can do a quick test if everything works.

Ask Claude to “go to definition of [some function]”. If it gives you the exact file and line number instantly, and you see ‘LSP’ instead of ‘grep’ or ‘Search’ in the output: LSP is working. If it says “let me search through the codebase…” and you see it grepping around, your LSP isn’t connected. Restart Claude Code and check that your language server binary is on your PATH.

Try “find all references to [some class]” before a big refactor. This is where LSP really pays off – Claude knows every file that will break before it touches anything.

issues with kotlin lsp

https://github.com/Kotlin/kotlin-lsp/issues/77