Skip to main content
Glama

gencommit

Read-onlyIdempotent

Generates Conventional Commits-style Git commit messages by providing specifications, steps, templates, and examples from code changes.

Instructions

当用户需要生成 Git commit 消息时使用。返回 Conventional Commits 规范说明、步骤、输出模板和示例,供 AI 根据变更内容生成最终 commit message。它不直接代写最终消息,也不应被判定为空结果

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNoCommit 类型:fixed(修复)、feat(新功能)、docs(文档)、style(样式)、chore(杂项)、refactor(重构)、test(测试)。可选,会自动识别
changesNo代码变更内容。可以是 git diff 输出、变更描述或自然语言。如果不提供,工具会提示执行 git diff
project_rootNo可选,目标 Git 仓库根目录或其子目录。未提供 changes 时用于确认当前项目确实是 Git 仓库

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changedv4.0.0
    • addedInput schema / properties / project_root
      Added value: +{
      +  "description": "可选,目标 Git 仓库根目录或其子目录。未提供 changes 时用于确认当前项目确实是 Git 仓库",
      +  "type": "string"
      +}
  2. Changed3 schema fields changedv3.0.16
    • addedInput schema / additionalProperties
      Added value: +true
    • changedInput schema / properties / changes / description
      Previous value: -"代码变更内容(可选,默认使用 git diff)"New value: +"代码变更内容。可以是 git diff 输出、变更描述或自然语言。如果不提供,工具会提示执行 git diff"
    • changedInput schema / properties / type / description
      Previous value: -"提交类型:fixed, fix, feat, docs, style, chore, refactor, test"New value: +"Commit 类型:fixed(修复)、feat(新功能)、docs(文档)、style(样式)、chore(杂项)、refactor(重构)、test(测试)。可选,会自动识别"
  3. Changed1 schema field changedv1.0.0
    • changedInput schema / properties / type / description
      Previous value: -"提交类型:feat, fix, docs, style, refactor, test, chore"New value: +"提交类型:fixed, fix, feat, docs, style, chore, refactor, test"
  4. First observed

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

已有注释标明 readOnlyHint=true 和 idempotentHint=true,描述进一步补充了工具的具体行为:返回规范说明、步骤、模板和示例,不直接写入最终消息,并提示不应该被当作空结果。两者一致,无矛盾,且提供了额外上下文。得 4 分。

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

仅用两句话清晰表达了目的、输入、输出和行为约束,信息密度高且前置关键内容,没有冗余。得满分 5 分。

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

说明了返回值(规范、步骤、模板、示例),也提示了未提供 changes 时的行为(在参数 schema 中说明)。缺少输出 schema,但描述已涵盖关键信息。在兄弟工具较多的情况下,整体完整度较好,得 4 分。

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

所有三个参数的 schema 描述覆盖率是 100%,描述本身没有再重复参数细节。根据规则,高覆盖率下基数为 3 分,且描述未新增参数含义,因此得 3 分。

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

明确说明用于“生成 Git commit 消息”,并指明返回规范说明、步骤、模板和示例。描述中指出了工具的行为边界(不直接代写最终消息),但未明确与兄弟工具(如 git_work_report)区分,因此为 4 分。

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

指出了使用场景(需要生成 commit 消息时),并澄清了工具不直接写入消息、不应被判断为空结果。但没有明确说明何时不适合使用,也未列出替代工具。因此得 3 分。

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mybolide/mcp-probe-kit'

If you have feedback or need assistance with the MCP directory API, please join our Discord server