mcpField
R
Rosentic

Rosentic

本地服务
github.com/Rosentic开发工具023 周前更新

关于 Rosentic

Rosentic 是供 AI 编码 Agent 使用的 MCP 服务,可在合并前检查活跃 Git 分支间的结构契约冲突。它通过 tree-sitter AST 分析本地代码,覆盖 15 种以上语言,并非 AI 代码审查。

主要功能

  1. 01跨分支契约检查
  2. 02函数签名不匹配检测
  3. 03HTTP 路由冲突检测
  4. 04架构不匹配检测
  5. 05冲突说明
  6. 06本地仓库扫描

适用场景

  1. 01合并前检查分支兼容性
  2. 02查找受函数签名变更影响的调用方
  3. 03检测 API 请求或路由冲突
  4. 04识别会破坏依赖分支的架构变更

MCP 相关

它向 MCP 客户端提供 `check_conflicts`、`explain_conflict` 和 `list_branches` 工具。扫描在本地 Git 仓库中运行。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cursor-plugin": {
"command": "uvx",
"args": [
"rosentic-mcp"
]
}
}
}
启动命令uvx rosentic-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypirosentic-mcp0.1.1

工具

3

收录的工具列表 · 更新于 2 周前

参数类型必填说明
basestring否用于分支差异比较的基准分支。默认为 main。
branchany否要与其他活动分支进行检查的分支。如果省略,则使用当前已检出的分支。
formatenum否简洁文本请使用 summary。只有当 Agent 需要 finding_ids 或完整的结构化发现时,才使用 json。summary | json
branchesany否要扫描的分支名称的显式列表。绕过枚举和期限筛选。确切知道要检查哪些分支时使用。
repo_pathstring是要扫描的本地 git 仓库的绝对路径或相对路径。

详细介绍

Rosentic - 跨分支合并安全性

Rosentic 会在合并前检查你当前使用的分支之间是否兼容。它使用确定性的 AST 分析,检测 15 种以上语言中的函数签名错误、HTTP 路由冲突和架构不匹配。

这不是 AI 代码审查。 Rosentic 会找出可能导致合并后运行时故障的结构性契约冲突——这类问题测试无法发现,因为测试每次只会在一个分支上运行。

安装

pip install rosentic-mcp

然后将其添加到编辑器的 MCP 配置中:

{
  "mcpServers": {
    "rosentic": {
      "command": "rosentic-mcp",
      "args": [],
      "env": {}
    }
  }
}

适用于 Cursor、Claude Code、Cline、Windsurf 以及任何支持 MCP 的编辑器。

功能

Rosentic 为你的 AI 编码 Agent 提供三个 MCP 工具:

工具用途
check_conflicts扫描代码库,查找跨分支契约冲突
explain_conflict解释某个具体发现及其处理方法
list_branches列出活跃分支,以便 Agent 选择要扫描的分支
Rosentic 能捕获的冲突示例
  • 分支 A 为 createOrder() 添加了一个必需参数。分支 B 仍使用旧签名调用 createOrder()。两者都能通过 CI,但合并后会导致生产环境故障。
  • 分支 A 修改 POST /api/users,要求请求正文中必须包含 email。分支 B 的前端仍发送旧格式的负载。
  • 分支 A 从 GraphQL 类型中移除了一个字段,而分支 B 的查询依赖该字段。

工作原理

推送、创建 PR 或合并之前,你的 Agent 会运行跨分支兼容性检查。它会调用 check_conflicts,使用 tree-sitter AST 解析扫描代码库各分支的最新提交,并报告所有冲突。

代码不会离开你的设备。扫描会在本地针对你的 git 代码库运行。

与 Semgrep Guardian 的比较

Semgrep Guardian 会检查每个文件中的安全漏洞和代码问题。Rosentic 会检查你的分支之间是否兼容。它们解决的是不同问题,搭配使用效果很好:

  • Semgrep Guardian:“这段代码本身是否安全且正确?”
  • Rosentic:“合并这个分支时会破坏其他分支吗?”

链接

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。