serena-agent
A powerful MCP toolkit for coding, providing semantic retrieval and editing capabilities - the IDE for your agent
Decision gist · record as of 2026-08-14
Yes, with conditions. Serena is actively maintained, has low install friction, carries no security vulnerabilities, and is MIT-licensed. It is worth installing if you are running an AI coding agent in a modern client that supports MCP and need IDE-level code understanding to improve agent reliability and speed. Not worth installing if you are not using an MCP-compatible AI client or if your codebase is small enough that agents work well with built-in text-based tools. The 33 runtime dependencies are substantial; verify they do not conflict with your environment.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.11 or later.
- Language server backend needs appropriate language servers installed for your target languages; JetBrains backend requires a running JetBrains IDE.
- MCP client integration is required to use Serena's tools.
License · maintenance · safety
MIT (permissive) — MIT license (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects without licensing friction.
last release 2026-08-09 (5 days) · last repo commit 2026-08-14 · 28,027 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 115,155 downloads/mo, #12,266 on PyPI
Alternatives
Verify before relying
pip install serena-agent
from serena_agent import SerenaAgent
agent = SerenaAgent()
# Configure with language servers or JetBrains backend
# Connect via MCP to your AI client- Performance characteristics and latency on very large codebases (fact sheet mentions 'large' but gives no benchmarks)
- Exact list of supported language servers and their versions/compatibility
- Memory footprint and resource requirements when running multiple language servers
- Whether the JetBrains plugin trial period and pricing are documented
- Stability and error recovery behavior when language servers crash or become unresponsive
What it is and what it does
Serena is an MCP (Model Context Protocol) server designed to give AI coding agents IDE-level capabilities for understanding and modifying code. Instead of working with raw text and line numbers, agents using Serena can perform semantic operations like finding symbols, cross-file renames, reference lookups, and refactoring—all grounded in the actual structure of the code. It supports over 40 programming languages through an abstraction layer over language servers (the free/open-source default) or optionally through JetBrains IDE integration (paid with free trial).
The package integrates with modern AI chat clients—Claude Code, Codex, Copilot, JetBrains AI Assistant, and others—via MCP. You either launch Serena as a subprocess or run it in HTTP mode and point your client to it. The tool is built for agent-first workflows: it provides high-level abstractions that let agents work faster and more reliably on complex codebases by reducing error-prone manual text surgery into atomic, semantically-aware operations. It includes 33 runtime dependencies covering web frameworks (flask, starlette), LLM integration (anthropic, tiktoken), code parsing (beautifulsoup4, pyyaml), and protocol support (lsprotocol, pygls, mcp).
Use it for
- Enable an AI agent to safely rename symbols across multiple files in a large codebase without manual line-by-line verification
- Let a coding agent explore and understand a monorepo's structure by querying symbols and their relationships at the semantic level
- Provide an agent with IDE-backed diagnostics and inspections to catch errors before suggesting code changes
- Support multi-language projects where agents need consistent symbol-aware navigation across Python, Java, TypeScript, and other languages
- Reduce agent hallucination and errors by replacing fragile text-based edits with atomic, symbol-aware refactoring operations
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, with conditions.
Serena is actively maintained, has low install friction, carries no security vulnerabilities, and is MIT-licensed. It is worth installing if you are running an AI coding agent in a modern client that supports MCP and need IDE-level code understanding to improve agent reliability and speed. Not worth installing if you are not using an MCP-compatible AI client or if your codebase is small enough that agents work well with built-in text-based tools. The 33 runtime dependencies are substantial; verify they do not conflict with your environment.
Install
serena-agent on PyPI
Before you install
Low install friction with a pure Python wheel. Active maintenance: last commit 2026-08-14, 28027 repository stars, and release within 5 days of the fact sheet date. Requires Python 3.11–3.14 and 33 runtime dependencies including anthropic, flask, pydantic, and language server protocol libraries, which is substantial but typical for a full-featured agent toolkit.
Requires Python 3.11 or later. Language server backend needs appropriate language servers installed for your target languages; JetBrains backend requires a running JetBrains IDE. MCP client integration is required to use Serena's tools.
License in practice
MIT license (permissive) allows free use, modification, and distribution with minimal restrictions, making it suitable for both open-source and commercial projects without licensing friction.
Quickstart
pip install serena-agent
from serena_agent import SerenaAgent
agent = SerenaAgent()
# Configure with language servers or JetBrains backend
# Connect via MCP to your AI client
Verify before relying
- Performance characteristics and latency on very large codebases (fact sheet mentions 'large' but gives no benchmarks)
- Exact list of supported language servers and their versions/compatibility
- Memory footprint and resource requirements when running multiple language servers
- Whether the JetBrains plugin trial period and pricing are documented
- Stability and error recovery behavior when language servers crash or become unresponsive
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <3.15,>=3.11 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 33 packagesanthropicbeautifulsoup4cryptographydocstring-parserdotenvfilelockflaskjinja2jobliblsprotocolmcposlexoverridespathspecpsutilpydanticpyglspystraypython-dotenvpython-multipartpythonnetpywebviewpyyamlregexrequestsruamel-yamlsensai-utilsstarlettetiktokentqdm |
| Maintenance | Actively maintained 5 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 115,155 / month, #12,266 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14 |
Evidence: serena_agent-1.7.0-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “semantic code retrieval and refactoring”
- serena-agentSerena is an MCP server that provides semantic code retrieval,…
- openrewriteOpenRewrite Python provides a framework for authoring and testing…
- chonkieChonkie splits text into semantically meaningful chunks for RAG…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also ouroboros-ai · semble · fast-agent-mcp · amalgam-lang · detect_agent · jcodemunch-mcp · hud-sdk · kimi-cli · openhands-aci · arxiv-mcp-server