预提交MCP服务器

一个为Claude实例提供预提交集成的MCP(模型上下文协议)服务器,支持结构化输出和错误处理。

  • by sjswerdloff
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 sjswerdloff/pre-commit-mcp

使用说明

预提交MCP服务器

一个MCP(模型上下文协议)服务器,为Claude实例提供预提交集成。

特性

  • 对具有结构化输出的暂存文件运行预提交
  • 用于Claude处理的令牌高效输出格式
  • 正确的错误处理和超时管理
  • 具有覆盖功能的Git存储库检测
  • 支持所有标准的预提交挂钩

安装

此项目使用 uv 对于包管理:

uv sync

用法

服务器提供了一个工具: pre_commit_run

参数

  • force_non_git (bool,可选):覆盖git存储库要求。默认值:False

输出格式

该工具返回结构化JSON,其中包含:

  • status:“成功”|“hooksfailed”|“system_error”|“超时”
  • summary:钩子执行统计
  • failures:按挂钩类型分组的详细故障信息
  • modified_files:钩子修改的文件列表
  • execution_time:总执行时间(秒)

发展

该项目包括:

  • Ruff用于修饰和格式化
  • MyPy用于类型检查
  • 用于代码质量的预提交挂钩

运行预提交以检查代码质量:

pre-commit run --all-files

配置

服务器遵守标准 .pre-commit-config.yaml 项目根目录中的配置文件。