Serena MCP usage guide for semantic code operations, symbol manipulation, project memory, and session persistence. Use when invoking any mcp__serena__* tools, performing symbol operations (rename, find references, extract), navigating large codebases, or managing project memory/sessions.
View on GitHubZhuMon/claude-code-hubs
serena
plugins/serena/skills/serena/SKILL.md
January 21, 2026
Select agents to install to:
npx add-skill https://github.com/ZhuMon/claude-code-hubs/blob/main/plugins/serena/skills/serena/SKILL.md -a claude-code --skill serenaInstallation paths:
.claude/skills/serena/# Serena MCP Server Semantic code understanding with project memory and session persistence. ## Required First Step **ALWAYS activate project before any Serena operation:** ``` mcp__serena__activate_project(project: "<path_or_name>") mcp__serena__check_onboarding_performed() ``` ## When to Use Serena | Use Case | Serena | Alternative | |----------|--------|-------------| | Symbol rename with references | ✅ | ❌ Morphllm | | Find all references | ✅ | ❌ Grep | | Semantic code navigation | ✅ | ❌ Native | | Project memory/session | ✅ | ❌ None | | Pattern-based bulk edits | ❌ | ✅ Morphllm | | Simple text replacement | ❌ | ✅ Edit tool | ## Core Tools ### Project Lifecycle - `activate_project` → **REQUIRED FIRST** - activate target project - `get_current_config` → check active project and available tools - `check_onboarding_performed` → verify project is ready - `onboarding` → run if onboarding not yet performed ### Symbol Operations - `find_symbol` → locate symbols by name path pattern - `find_referencing_symbols` → find all references to a symbol - `get_symbols_overview` → high-level view of file symbols - `rename_symbol` → rename across entire codebase - `replace_symbol_body` → replace symbol definition - `insert_before_symbol` / `insert_after_symbol` → add code around symbols ### Search & Navigation - `search_for_pattern` → regex search across codebase - `list_dir` → list directory contents - `find_file` → find files by mask ### Memory Management - `write_memory` → persist information for future sessions - `read_memory` → retrieve stored information - `list_memories` → show available memories - `edit_memory` / `delete_memory` → modify or remove memories ### Reflection (Call These!) - `think_about_collected_information` → after search operations - `think_about_task_adherence` → before code modifications - `think_about_whether_you_are_done` → at task completion ## Tool Details See [references/tools.md](references/tools.md) for detailed parameter documentatio