Skip to content
Graphify
Community maintained Registry listed

Serena

Add symbol-aware code retrieval, editing, refactoring, project memory, and optional IDE-backed operations to an MCP coding agent.

Overview

What Serena does

Serena gives MCP clients an IDE-like layer for navigating and changing code by symbol rather than by fragile line ranges. Its language-server backend can find declarations, implementations, references, diagnostics, and symbol trees, then perform targeted insertions, body replacement, and cross-project renames. A JetBrains plugin backend adds richer refactorings and debugging when that environment is available. Serena also provides project activation, file operations, shell execution, and Markdown memories, with contexts and modes used to keep each client on an appropriate subset of tools.

Best for

  • Cross-file navigation and refactoring in medium or large codebases
  • Agents that benefit from language-server symbols and reference relationships
  • Longer workflows that need reusable project notes and configurable tool modes

Not ideal for

  • Small one-file edits where the client's built-in search and patch tools are already sufficient
  • Environments that cannot grant a local process read, write, or optional shell access to the project

Capabilities

What an agent can do

  1. 01

    Find declarations, implementations, references, diagnostics, and symbol outlines

  2. 02

    Insert around symbols, replace symbol bodies, rename symbols, and perform safe deletion where supported

  3. 03

    Search and edit project files with backend-aware context

  4. 04

    Persist project memories for later agent sessions

  5. 05

    Use optional JetBrains refactoring, inspection, hierarchy, and debugging operations

  6. 06

    Tailor the active tools and instructions through project contexts and modes

Representative tools and operations

find_symbolfind_referencing_symbolsfind_implementationsget_symbols_overviewget_diagnostics_for_fileinsert_before_symbolinsert_after_symbolreplace_symbol_bodyrename_symbolsearch_for_patternactivate_projectread_memorywrite_memory

Installation

Connect Serena

Use the publisher’s current instructions as the source of truth. The examples below were checked on .

Local installationInstall and initialize Serena with uv
Command
uv tool install -p 3.13 serena-agent && serena init
Configuration
Initialization selects the language-server backend by default. Some languages need additional language-server dependencies.
Any stdio MCP clientLaunch Serena for the current project
Command
uvx -p 3.13 --from serena-agent serena start-mcp-server --project-from-cwd
Configuration
Choose the documented --context value for the client so Serena enables a suitable tool and instruction set.

Trust and access

Authentication and security notes

Authentication: No built-in authentication is needed for a local stdio launch. If Serena is exposed in HTTP mode, deployment-level access controls are required.

Review before connecting

  • Serena can edit project files and may expose shell execution, so rely on client approvals and disable overlapping or unnecessary tools.
  • Keep project activation scoped to intended workspaces and do not expose a local HTTP server to untrusted networks.
  • Review persistent memory files before sharing them because they can contain repository context or operational notes.

Known limitations

  • Language coverage and semantic precision depend on the configured backend and installed language servers.
  • Only a subset of tools is enabled in a typical context; JetBrains-specific operations require the plugin backend.
  • Startup and indexing overhead can be noticeable on large projects or slower language servers.
  • Serena provides coding tools, not the model that plans and evaluates the work.

Evidence

Sources used for this guide

Facts were checked against primary publisher material. Descriptions and guidance are original Graphify summaries.

FAQ

Questions about Serena

How is Serena different from ordinary file search and patch tools?

Serena works with symbols, references, diagnostics, and refactorings supplied by a semantic backend, which is useful when a change spans definitions and call sites.

Does every Serena client receive every tool?

No. Contexts, modes, backends, and optional-tool settings determine the active set so the server can avoid duplicating a client's built-in capabilities.

Editorial review · MCP server

What this page is based on

Server capabilities and operational notes are tied to the recorded source set and review date.

Review basis
MCP server record and linked primary evidence
Last checked
Jul 11, 2026
Evidence links
4 recorded in the page data

Source snapshot is 91 days old; verify upstream details before relying on pricing, availability, or security claims.