MCP 与工具调用

Serena:面向 AI 智能体的语义代码检索与编辑 MCP 工具包

oraios/serena

Serena 是一个基于 Python、采用 MIT 许可证的 MCP 工具包,通过高层级的符号级抽象,为 AI 编程智能体提供 IDE 级别的语义代码检索、编辑、重构和调试能力。

★ 27.6K星级
⑂ 1.8KFork 数
107未解决的问题
Python语言
MIT许可证
Q@project.QualityScore编辑评分

项目截图

Serena:面向 AI 智能体的语义代码检索与编辑 MCP 工具包 的截图 Serena:面向 AI 智能体的语义代码检索与编辑 MCP 工具包 的截图

概览

Serena 充当编程智能体的 IDE 层,提供语义代码检索、编辑、重构和调试工具,这些工具在符号级别运行,而非依赖原始的行号或文本搜索操作。它通过模型上下文协议(MCP)与 AI 客户端集成,并支持两种后端:默认支持 40 多种编程语言的开源语言服务器(LSP),以及利用 JetBrains IDE 分析能力的付费 JetBrains 插件。Serena 以智能体优先的设计理念,旨在使智能体更快、更高效、更可靠,尤其是在大型和复杂的代码库中表现突出。

主要功能

  • 语义代码检索:查找符号、文件大纲、查找引用符号、查找声明、查找实现、诊断
  • 重构:重命名、移动、内联、传播删除(移动、内联和传播删除仅限 JetBrains 插件)
  • 符号编辑:替换符号体、在符号后/前插入、安全删除
  • 通过断点和 REPL 风格的执行控制进行交互式调试(仅限 JetBrains 插件)
  • 用于持久化、跨会话智能体工作流的内存管理系统
  • 多层 YAML 配置:全局、CLI、项目级、执行上下文和可组合模式
  • 通过 LSP 语言服务器支持 40+ 种编程语言
  • 基本工具:正则搜索、文本替换、目录列表、文件搜索、文件读取、Shell 命令执行
  • 支持通过启动命令或 HTTP 模式连接的 MCP 服务器

要求、安装和快速入门

使用 uv 安装 Serena,命令为:`uv tool install -p 3.13 serena-agent`。安装后,`serena` 命令应该可用。README 明确警告不要通过 MCP 或插件市场安装 Serena,因为它们包含过时且非最优的安装命令。

用法

安装后,运行 `serena init` 来初始化 Serena 并验证设置。默认情况下,这会配置语言服务器后端;若要使用 JetBrains 后端,请添加参数 `-b JetBrains`。然后,通过向 MCP 客户端提供 Serena 启动命令或 HTTP 服务器 URL 来配置客户端。文档中提供了具体的客户端配置说明。

模型兼容性与使用场景

Serena 与客户端和 LLM 无关,通过 MCP 集成。兼容基于终端的客户端(Claude Code、Codex、OpenCode、Gemini CLI)、IDE 插件(Copilot、Junie、VSCode 的 JetBrains AI Assistant、Cursor、JetBrains IDE)以及桌面/Web 客户端(Claude Desktop、Codex App、OpenWebUI)。

许可证与风险说明

采用 MIT 许可证授权。

Editorial verification 2026-08-09: repository URL, owner, description, license and repository statistics were reviewed. License metadata: MIT. README was fetched for the channel draft; re-check repository dependencies, releases and model terms before production use.

发布与维护

仓库创建于 2025-03-23。最后推送于 2026-08-05。默认分支为 main。该仓库未归档。

MemPalace

mempalace/mempalace

★ 58KPython

QwenPaw

agentscope-ai/qwenpaw

★ 33.9KPython

Composio

composiohq/composio

★ 29.5KTypeScript