/* comparison */

Sverklo vs Serena

Both are code intelligence MCP servers that help AI agents understand your codebase. Sverklo takes a zero-config approach with hybrid search and PR review. Serena uses LSP backends for deep semantic understanding and code editing across 40+ languages. This page is an honest comparison to help you pick the right tool for your project.

Need the four-way overview? See the multi-product comparison covering sverklo vs Serena, GitNexus, and Greptile across six dimensions.

Feature comparison

Sverklo Serena
License MIT Free for all use MIT Free for all use
GitHub stars Growing 23k
Setup Zero-config: npm install, works immediately Requires LSP language servers installed per language
Search Hybrid BM25 + vector embeddings + PageRank scoring LSP-backed semantic retrieval (go-to-definition, references)
Memory system Git-pinned (memories tied to SHA, staleness detection) None built-in
PR review Diff-aware with risk scoring and CI gate (--fail-on) Not included
Blast-radius analysis Yes (trace impact of changes through dependency graph) Not included
Code editing Read-only analysis Yes (semantic rename, move, refactor via LSP)
Languages 10 via tree-sitter 40+ via LSP backends
Architecture SQLite + PageRank, pure JS, no native bindings LSP client orchestrating language servers
Web dashboard Yes No
GitHub Action Yes (open-source) No

Public benchmark coverage

Sverklo is on the public 5-baseline retrieval benchmark — 180 hand-verified tasks across 6 OSS codebases (sverklo, express 4.21.1, lodash 4.17.21, requests 2.32.3, flask 3.0.3, fastapi 0.115.0). Sverklo F1=0.58 leading; it leads P1, P2, and P4, while jcodemunch reaches P5 recall 1.00 with F1 0.34. Serena is not on the public bench yet — we'd add it cheerfully if a maintainer opens a PR adding the baseline. The methodology repo at github.com/sverklo/sverklo-bench documents the contract; the auto-bench CI runs against the express slice and posts a results-table comment within ~10 minutes.

In the meantime, the comparison above is feature-shaped, not bench-shaped — we're describing what each tool exposes, not how each tool scores on a common eval. Treat the above as positioning, not measurement.

When to use each

Choose Sverklo when

  • You want zero-config setup with no language server dependencies
  • Your workflow includes PR review with automated risk scoring
  • You need memory that persists across sessions and tracks git state
  • Blast-radius analysis matters for understanding change impact
  • You want hybrid search (BM25 + vector + PageRank) over your codebase
  • You need a CI-integrated GitHub Action for automated review

Choose Serena when

  • You need deep LSP-level semantic understanding (go-to-definition, type info)
  • Your project uses languages outside Sverklo's 10 supported languages
  • You want AI agents to perform semantic code edits (rename, move, refactor)
  • You already have language servers installed and configured
  • Precise type-aware navigation matters more than fuzzy search

Architecture notes

Sverklo uses tree-sitter parsing with a hybrid retrieval pipeline (BM25 + ONNX embeddings + PageRank graph centrality). Everything runs from a single npm install with no native bindings or external dependencies. The trade-off: 10 languages today, and no LSP-level type resolution.

Serena uses LSP language servers as its semantic backbone, which gives it precise go-to-definition, find-references, and type-aware navigation across 40+ languages. The trade-off: each language needs its LSP server installed and configured, and the tool focuses on retrieval and editing rather than review workflows or persistent memory.

Try Sverklo

MIT licensed. One command. Works with every MCP client.

click to copy