Serena MCP is a semantic coding tool that enables efficient analysis and editing of codebases. It understands project structure and provides precise symbol‑level operations (classes, functions, variables, etc.).
mcp__serena__activate_project- Activate a projectmcp__serena__onboarding- Initial project analysis and information gatheringmcp__serena__check_onboarding_performed- Check onboarding statusmcp__serena__remove_project- Delete a projectmcp__serena__get_current_config- Get the current configuration
mcp__serena__list_dir- List directory contentsmcp__serena__find_file- Search for files (supports wildcards)mcp__serena__search_for_pattern- Search code using regular‑expression patternsmcp__serena__read_file- Read file contents (not recommended; prefer symbol operations)mcp__serena__create_text_file- Create a text file
mcp__serena__get_symbols_overview- List top‑level symbols in a filemcp__serena__find_symbol- Search symbols by name path (classes, methods, functions, etc.)mcp__serena__find_referencing_symbols- Find references to a symbolmcp__serena__replace_symbol_body- Replace an entire symbolmcp__serena__insert_before_symbol- Insert content before a symbolmcp__serena__insert_after_symbol- Insert content after a symbol
mcp__serena__replace_regex- Replace using regular expressionsmcp__serena__insert_at_line- Insert at a specific linemcp__serena__delete_lines- Delete linesmcp__serena__replace_lines- Replace lines
mcp__serena__write_memory- Save project informationmcp__serena__read_memory- Read saved informationmcp__serena__list_memories- List available memoriesmcp__serena__delete_memory- Delete a memory
mcp__serena__think_about_collected_information- Analyze collected informationmcp__serena__think_about_task_adherence- Check task adherencemcp__serena__think_about_whether_you_are_done- Confirm completion status
mcp__serena__execute_shell_command- Execute shell commandsmcp__serena__switch_modes- Switch operation modesmcp__serena__summarize_changes- Summarize changesmcp__serena__restart_language_server- Restart the language servermcp__serena__prepare_for_new_conversation- Prepare for a new conversation
Context7 MCP provides fast, structured access to open‑source library documentation and examples via a stable Library ID. Use it to resolve an exact library identifier and fetch focused docs (e.g., by topic) with relevant code snippets and Q&A.
context7__get-library-docs— Retrieve documentation for a specific library.- Parameters:
context7CompatibleLibraryID(e.g.,/vercel/next.jsor/vercel/next.js/v14.3.0-canary.87), optionaltokenslimit, optionaltopic(e.g.,routing,hooks). - Returns: Curated code snippets and Q&A extracted from the library's canonical sources.
- Parameters:
context7__resolve-library-id— Find the best matching Context7‑compatible Library ID.- Input: Free‑form library name (e.g.,
next.js). - Output: Ranked candidates with ID, description, snippet counts, and trust score. Pick the most authoritative match, typically the official repo.
- Input: Free‑form library name (e.g.,
- Resolve: Call
context7__resolve-library-idwith the library name and select the top official ID. - Fetch: Call
context7__get-library-docswith the chosen ID; pass a focusedtopicto narrow results and atokenscap if needed. - Use: Incorporate returned snippets and Q&A into your work; cite upstream docs when appropriate.
- Resolved ID:
/vercel/next.js(official Next.js repository). - Targeted fetch:
context7__get-library-docswithtopic: "routing"returns practical snippets (e.g., Route Handlers, dynamic segments,next/linkprefetch behavior) and concise Q&A.
- Prefer exact IDs if the user supplies one; otherwise resolve first for accuracy.
- Use
topicto reduce noise and speed up retrieval. - Increase
tokensonly when you need broader coverage; start small for targeted queries.