• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

karellen / karellen-lsp-mcp / 24054729137
72%

Build:
DEFAULT BRANCH: master
Ran 06 Apr 2026 10:40PM UTC
Jobs 9
Files 10
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Apr 2026 10:39PM UTC coverage: 71.751% (-0.3%) from 72.083%
24054729137

push

github

web-flow
[release] Add Python and Rust language support (#30)

## Summary

- Add Python (pyright) and Rust (rust-analyzer) as fully supported
languages with autodetection, adapters, normalizers, and native LSP
proxy support
- Refactor LspClient to write queue architecture, fixing a deadlock
where server-initiated requests blocked the read loop on stdin drain
- Add debug logging infrastructure with adapter-provided server labels
and `LSP_MCP_SERVER_DEBUG` env var for per-server verbose logging
- Add timeout guards across the daemon and LspClient to prevent hangs

## Details

**Python support:**
- Pyright Node.js langserver launched directly (bypasses Python wrapper)
- Autodetects PyBuilder, pyproject.toml, setup.py, setup.cfg, Pipfile,
requirements.txt
- Virtual environment detection: venv, virtualenv, conda (pyvenv.cfg /
conda-meta)
- Source path configuration pushed via
`workspace/didChangeConfiguration` for non-standard layouts (e.g.
PyBuilder `src/main/python/`)
- `pip install karellen-lsp-mcp[pyright]`

**Rust support:**
- rust-analyzer with Cargo.toml detection, workspace root walk-up,
workspace member glob expansion
- build.rs and rust-toolchain detection
- `rustup component add rust-analyzer`

**Architecture improvements:**
- `ProgressNormalizer` base class extracted from `ClangdNormalizer` for
shared `$/progress` tracking
- All LspClient writes go through `asyncio.Queue` consumed by a single
writer task; read loop never blocks on writes
- Writer loop fails all pending futures on exit
- Fix false Java detection from Python SDKs in JetBrains
`.idea/misc.xml`
- 5s stdin drain kill, 60s file open/registration timeouts, 30s daemon
response write timeout

**Tested on:**
- PyBuilder (Python) — hover, definition, references, workspace symbols,
document symbols, diagnostics, call hierarchy all working
- Embedded Rust project — document symbols, definition working
- MariaDB Server polyglot (C++/Java/Python/Rust) — all four languages
registered and queried simult... (continued)

902 of 1426 branches covered (63.25%)

Branch coverage included in aggregate %.

400 of 539 new or added lines in 6 files covered. (74.21%)

16 existing lines in 2 files now uncovered.

2781 of 3707 relevant lines covered (75.02%)

6.64 hits per line

Uncovered Changes

Lines Coverage ∆ File
74
79.57
-3.61% src/main/python/karellen_lsp_mcp/detector.py
29
65.53
-1.69% src/main/python/karellen_lsp_mcp/lsp_adapter.py
25
63.28
-0.32% src/main/python/karellen_lsp_mcp/lsp_client.py
7
84.58
-2.57% src/main/python/karellen_lsp_mcp/project_registry.py
2
56.54
-0.66% src/main/python/karellen_lsp_mcp/daemon.py
2
83.17
0.0% src/main/python/karellen_lsp_mcp/lsp_normalizer.py

Coverage Regressions

Lines Coverage ∆ File
8
56.54
-0.66% src/main/python/karellen_lsp_mcp/daemon.py
8
63.28
-0.32% src/main/python/karellen_lsp_mcp/lsp_client.py
Jobs
ID Job ID Ran Files Coverage
1 24054729137.1 06 Apr 2026 10:40PM UTC 10
71.36
GitHub Action Run
2 24054729137.2 06 Apr 2026 10:40PM UTC 10
71.34
GitHub Action Run
3 24054729137.3 06 Apr 2026 10:40PM UTC 10
71.67
GitHub Action Run
4 24054729137.4 06 Apr 2026 10:40PM UTC 10
71.0
GitHub Action Run
5 24054729137.5 06 Apr 2026 10:40PM UTC 10
70.9
GitHub Action Run
6 24054729137.6 06 Apr 2026 10:40PM UTC 10
70.9
GitHub Action Run
7 24054729137.7 06 Apr 2026 10:40PM UTC 10
71.0
GitHub Action Run
8 24054729137.8 06 Apr 2026 10:40PM UTC 10
71.6
GitHub Action Run
9 24054729137.9 06 Apr 2026 10:41PM UTC 10
71.0
GitHub Action Run
Source Files on build 24054729137
  • Tree
  • List 10
  • Changed 6
  • Source Changed 0
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • e831dcb2 on github
  • Prev Build on master (#23788025273)
  • Next Build on master (#24255899492)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc