claude-code - 💡(How to fix) Fix [FEATURE] Add Scala (Metals) to the native LSP plugin lineup [2 comments, 3 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#45132Fetched 2026-04-09 08:12:29
View on GitHub
Comments
2
Participants
3
Timeline
4
Reactions
2
Author
Timeline (top)
commented ×2labeled ×2
RAW_BUFFERClick to expand / collapse

Preflight Checklist

  • I have searched existing requests and this feature hasn't been requested yet
  • This is a single feature request (not multiple features)

Problem Statement

Claude Code ships native LSP plugins for 12+ languages (TypeScript, Rust, Go, Python, Java/jdtls, Kotlin, C#, Ruby, PHP, Swift, Lua, C/C++) but has no Scala support. Scala Metals is the standard LSP server for the ecosystem and follows the exact same LSP protocol that all the existing plugins use.

Proposed Solution

The existing JVM plugin infrastructure already covers Java (jdtls) and Kotlin (kotlin-lsp). Metals follows the same LSP protocol and is installed the same way (via Coursier: cs install metals). A metals-lsp plugin would be structurally identical to the existing ones.

Alternative Solutions

Third-party solutions like Serena (an MCP server that wraps Metals) exist and do provide semantic code intelligence with better accuracy than text search (symbol-aware lookups vs. raw string matching). However, in our benchmarks, Serena's MCP-based lookups were an order of magnitude slower than plain grep — making it slower than the dumb alternative it's meant to replace. Native LSP integration would eliminate this overhead entirely.

Priority

High - Significant impact on productivity

Feature Category

MCP server integration

Use Case Example

I am the CTO of the company Magaran Software LLC. You can check my profile. I have been programming Scala since 2012, and it's the language that built my entire company. Most of our projects use it as the backend language, specially the bigger ones. I currently have a Team plan for magaran and everyone here uses Claude. Missing this LSP support is heavily hampering our productivity with the tool, although of course we can do stuff with grep in the meantime. Hopefully we can get a positive resolution to this.

Additional Context

No response

extent analysis

TL;DR

Implementing a native LSP plugin for Scala using the existing JVM plugin infrastructure and Metals LSP server is the most likely solution to improve productivity.

Guidance

  • Investigate the Metals LSP server and its compatibility with the existing JVM plugin infrastructure in Claude Code.
  • Evaluate the structural similarities between the proposed metals-lsp plugin and the existing plugins (e.g., Java and Kotlin) to determine the feasibility of the implementation.
  • Consider the performance benefits of native LSP integration over third-party solutions like Serena, which have shown to be an order of magnitude slower.
  • Review the use case example provided by the CTO of Magaran Software LLC to understand the significant impact of missing LSP support on productivity.

Example

No code snippet is provided as the issue does not contain specific implementation details.

Notes

The implementation of the metals-lsp plugin may require additional development and testing to ensure compatibility and performance.

Recommendation

Apply workaround: Implement a native LSP plugin for Scala using the existing JVM plugin infrastructure and Metals LSP server, as it is likely to improve productivity and eliminate the overhead of third-party solutions.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING