Guide for setup Serena MCP server for semantic code retrieval and editing capabilities
48
36%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/mcp/skills/setup-serena-mcp/SKILL.mdUser Input:
$ARGUMENTSAsk the user where they want to store the configuration:
Options:
Project level (shared via git) - Configuration tracked in version control, shared with team
./CLAUDE.mdProject level (personal preferences) - Configuration stays local, not tracked in git
./CLAUDE.local.md.gitignore, add them if notUser level (global) - Configuration applies to all projects for this user
~/.claude/CLAUDE.mdStore the user's choice and use the appropriate paths in subsequent steps.
Check whether you have access to Serena MCP server by attempting to use one of its tools (e.g., find_symbol or get_symbols_overview).
If no access, proceed with setup.
Read the following documentation to understand Serena's capabilities and setup process:
Based on the loaded documentation:
uv is installed (required for running Serena)After adding MCP server, but before testings connection write to user this message EXACTLY:
You must restart Claude Code to load the new MCP server:
1. Exit Claude Code console (type exit or press Ctrl+C)
2. Run claude --continue
3. Type "continue" to resume setup
After restart, I will:
- Verify Serena tools are accessible
- Run initial_instructions if needed
- Perform onboarding for this project (if not already done)Use the path determined in step 1. Once Serena is successfully set up, update the appropriate CLAUDE.md file with the following content EXACTLY:
### Use Serena MCP for Semantic Code Analysis instead of regular code search and editing
Serena MCP is available for advanced code retrieval and editing capabilities.
**When to use Serena:**
- Symbol-based code navigation (find definitions, references, implementations)
- Precise code manipulation in structured codebases
- Prefer symbol-based operations over file-based grep/sed when available
**Key tools:**
- `find_symbol` - Find symbol by name across the codebase
- `find_referencing_symbols` - Find all symbols that reference a given symbol
- `get_symbols_overview` - Get overview of top-level symbols in a file
- `read_file` - Read file content within the project directory
**Usage notes:**
- Memory files can be manually reviewed/edited in `.serena/memories/`Add this section, if server setup at user level (global):
**Project setup (per project):**
1. Run `serena project create --index` in your project directory
2. Serena auto-detects language; creates `.serena/project.yml`
3. First use triggers onboarding and creates memory files in `.serena/memories/`If this is a new project or Serena hasn't been initialized:
dedca19
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.