Favicon of Serena

Serena

An MCP coding toolkit gives AI agents symbol search, editing and refactoring through language servers or an optional paid JetBrains plugin.

Screenshot of Serena website

Serena gives AI coding agents tools to work with functions, classes and the relationships between them. It's for developers who want an agent to locate and change specific code without reading every file in full.

  • Symbol search: Agents can find symbols, inspect file outlines, follow references and query external projects.
  • Editing and refactoring: Tools use code structure and relationships to guide changes at the symbol level.
  • Code diagnostics: Agents can inspect errors and warnings through either analysis backend; Serena also provides debugging tools.
  • Project memory: A memory system retains information for coding workflows that continue across sessions.

Serena connects to an LLM client through MCP. The default language-server backend is the free, open-source option and supports languages including Python, TypeScript, Java, Rust and Swift. Finding implementations depends on the language server, and declaration lookup generally doesn't cover external dependencies.

The optional paid JetBrains plugin uses the analysis and editing capabilities of IDEs such as IntelliJ IDEA, PyCharm and WebStorm. It adds searches within project dependencies and type hierarchies. Serena supplies tools for a connected model; the model client determines where inference runs. Rider and CLion aren't supported by the JetBrains plugin.

Similar to Serena