Loading...

Serena is an open-source coding agent toolkit that provides LLMs with IDE-like semantic code retrieval and editing capabilities, enhancing their ability to work directly on codebases.
Boost this tool
Subscribe to listing upgrades or segmented pushes.
Serena is an open-source coding agent toolkit that provides LLMs with IDE-like semantic code retrieval and editing capabilities, enhancing their ability to work directly on codebases.
Serena's safety depends on the configuration and the LLM using it. It's relatively safe for read-only operations and code analysis. However, code modification capabilities introduce risks, especially if the LLM is not properly controlled or the underlying language servers have vulnerabilities.
Performance depends on the size of the codebase and the efficiency of the language server or JetBrains plugin. Semantic analysis can be slower than simple text-based search.
Cost depends on the LLM being used. Semantic analysis can reduce token usage compared to reading entire files.
uvx --from git+https://github.com/oraios/serena serena start-mcp-server --help{
"mcpServers": {
"serena": {
"command": "/abs/path/to/uv",
"args": ["run", "--directory", "/abs/path/to/serena", "serena-mcp-server"]
}
}
}find_symbolFinds a code symbol (e.g., function, class) within the codebase.
Read-only operation; no code modification.
find_referencing_symbolsFinds all symbols that reference a given symbol.
Read-only operation; no code modification.
insert_after_symbolInserts code after a specified symbol.
Modifies code by inserting new content.
None
cloud
Serena's safety depends on the configuration and the LLM using it. It's relatively safe for read-only operations and code analysis. However, code modification capabilities introduce risks, especially if the LLM is not properly controlled or the underlying language servers have vulnerabilities.
Autonomy depends on the LLM and its configuration. Serena provides tools, but the LLM decides how to use them. Dry-run mode can help preview changes before applying them.
Production Tip
Use dry-run mode and thorough testing to validate changes before deploying to production.
Serena supports over 30 programming languages through Language Server Protocol (LSP) and all languages supported by JetBrains IDEs when using the JetBrains plugin.
Serena provides semantic code retrieval and editing tools, allowing agents to find and modify code more efficiently, reducing token usage and improving code quality.
MCP is a protocol that allows Serena to integrate with various LLMs and clients, enabling them to use Serena's tools for code understanding and modification.
Serena requires uv for package management. You also need to install and configure a language server for your programming language or use the Serena JetBrains plugin.
Yes, Serena is free and open-source.
You can contribute to Serena by submitting pull requests, reporting bugs, or becoming a sponsor.
LSP is a free/open-source alternative that supports many languages. The JetBrains plugin leverages the powerful code analysis capabilities of JetBrains IDEs, offering a more robust experience.