← 返回目录
S

Serena MCP: the IDE for your agent

社区
为编码智能体提供 IDE 级语义代码能力
GitHub 源仓库 ↗
★ 26.8k Stars 分类 · 开发工具 非常热门
57FMRS · C
可靠性
9/20
安全与权限
8/20
维护活跃度
14/20
文档质量
14/20
安装易用性
12/20

MIT 许可的开源编码 MCP 工具包,重点是语义代码检索、编辑和重构。manifest 明确提供 PyPI 包 serena-agent 与 stdio 启动方式;具体工具能力取决于所选语言服务器或 JetBrains 后端。

查看 FMRS 评分方法 →

Serena 是一个通过 MCP 提供语义代码检索、编辑、重构和调试能力的编码工具包。它基于语言服务器或 Serena JetBrains 插件,以符号和代码关系为中心辅助智能体处理复杂代码库。

工具能力

search_for_pattern
在代码库中执行灵活的正则表达式搜索。
replace_content
执行面向智能体优化的正则表达式或字面文本替换。
list_dir
列出目录内容。
find_file
在项目中查找文件。
read_file
读取文件或文件片段。
execute_shell_command
执行 Shell 命令,例如构建、测试和代码检查。

安装接入

先安装 uv,然后使用 uvx 启动 PyPI 包 serena-agent,并指定 Python 3.13。通过客户端配置 stdio 启动命令;可使用 --project-from-cwd 指定当前项目,并通过 --context 选择执行上下文。首次使用运行 serena init 完成初始化。

claude_desktop_config.json
{"mcpServers":{"serena":{"command":"uvx","args":["-p","3.13","serena-agent","start-mcp-server","--project-from-cwd","--context","desktop-app"]}}}

选型与风险

适合谁

  • 需要 IDE 级代码理解的编码智能体
  • 大型或复杂的多文件项目
  • 使用支持 MCP 的终端客户端、桌面客户端或 IDE 的开发者

不适合谁

  • 非编码任务
  • 只需简单文本编辑的小型任务
  • 不希望授予项目代码编辑或 Shell 执行能力的环境

所需权限

  • 需要访问项目文件以进行代码检索和编辑。
  • 启用基础工具时,execute_shell_command 可运行构建、测试和代码检查等 Shell 命令。
  • 语言服务器后端可能需要安装特定编程语言的额外依赖。
  • 使用 JetBrains 后端需要 Serena JetBrains 插件;该插件为付费插件并提供免费试用。

风险与副作用

  • 符号编辑、重构和文本替换可能修改或删除代码。
  • 启用 Shell 工具后,智能体可能运行构建、测试、代码检查或其他命令。
  • 不同语言的语言服务器支持和能力存在差异。
  • JetBrains 后端不支持 Rider 和 CLion。

常见排障

  1. 确认已安装 uv。
  2. 确认启动命令使用 Python 3.13 和 serena-agent。
  3. 运行 serena init 验证初始化是否成功。
  4. 检查目标语言所需的语言服务器依赖。
  5. 检查客户端的 MCP 启动命令配置,以及 --project-from-cwd 和 --context 参数。
  6. 若需要更强的代码分析或调试能力,检查是否已选择并正确配置 JetBrains 后端。

使用场景

在大型代码库中按符号和关系检索代码
执行符号级编辑、重命名和安全删除
使用语言服务器或 JetBrains 后端辅助重构
在启用 JetBrains 插件后进行交互式调试
为长期智能体工作流管理记忆

支持客户端

Claude Code完整支持
Codex CLI完整支持
OpenCode完整支持
Gemini-CLI完整支持
VSCode完整支持
Cursor完整支持
Claude Desktop完整支持
Codex App完整支持
OpenWebUI完整支持
JetBrains IDEs完整支持

同仓库的其他 Server