Skip to main content
Glama
Sunwood-ai-labs

aira-mcp-server

aira-mcp-server MCP Server

A Model Context Protocol server for creating commit messages from git staged files

This is a TypeScript-based MCP server that implements a simple notes system. It demonstrates core MCP concepts by providing:

  • Git status information retrieval

  • Commit message creation with conventional commit format

  • Gitflow initialization and management

  • Branch operations (create, merge, list)

🚀 Features

  • 📝 Conventional commit message generation

  • 🌳 Gitflow workflow support

  • 🔍 Git status checking

  • 🔄 Branch management

Related MCP server: Git Prompts MCP Server

🛠️ Installation

npm install
npm run build

📖 Usage

Configure the MCP server in your settings:

{
  "mcpServers": {
    "aira": {
      "command": "node",
      "args": ["path/to/aira-mcp-server/build/index.js"]
    }
  }
}

🔧 Available Tools

get_status

Retrieves Git status information.

create_commit

Creates and executes a commit for specified files.

init_gitflow

Initializes Gitflow.

create_branch

Creates a new branch.

merge_branch

Merges branches according to Gitflow.

list_branches

Lists all Gitflow branches.

📄 License

MIT License

Available Tools

2 tools
create_commitB

指定したファイルに対してコミットを作成・実行します。※1度に1ファイルのみコミット可能です

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoコミットの本文(オプション)
emojiYesコミットメッセージに使用する絵文字
fileYesコミット対象のファイルパス(1ファイルのみ指定可能)
footerNoコミットのフッター(オプション)
issueNumberNoGitHub Issue番号(オプション)
languageNoコミットメッセージの言語(デフォルト: ja)
pathYesGitリポジトリの絶対パス
titleYesコミットのタイトル
typeYesコミットの種類

TDQS

B3.2/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions the 'create/execute' action and the single-file constraint, but lacks details on permissions needed, whether changes are reversible, error handling, or rate limits. For a mutation tool with zero annotation coverage, this is a significant gap.

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

Conciseness4/5

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

The description is a single, efficient sentence that front-loads the core purpose. Every word contributes meaning, with no wasted text. It could potentially be slightly more structured but remains highly concise.

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

Completeness3/5

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

Given the tool's complexity (9 parameters, mutation operation) and lack of both annotations and output schema, the description is incomplete. It covers the basic action and constraint but misses critical behavioral context like permissions, error cases, and return values. The schema handles parameters well, but the description doesn't compensate for other gaps.

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 description coverage is 100%, so the schema fully documents all 9 parameters. The description adds no parameter-specific information beyond what's in the schema. According to scoring rules, when schema coverage is high (>80%), the baseline is 3 even with no param info in the description.

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?

The description clearly states the action ('create/execute a commit') and resource ('for specified files'), with the specific constraint 'only one file at a time'. It distinguishes from the sibling 'get_status' by being a write operation versus a read operation. However, it doesn't explicitly name the sibling as an alternative.

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?

The description implies usage context through the constraint 'only one file at a time', which suggests when to use this tool versus alternatives that might handle multiple files. However, it doesn't explicitly state when-not-to-use scenarios or name specific alternatives beyond the general sibling distinction.

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

get_statusC

Gitのステータス情報を取得します

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesGitリポジトリの絶対パス

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While '取得します' (get/retrieve) implies a read operation, the description doesn't specify what 'Git status information' includes, whether authentication is required, potential rate limits, or what format the information returns. This leaves significant behavioral gaps.

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?

The description is a single, efficient Japanese sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple tool with one parameter and gets straight to the point.

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

Completeness2/5

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

For a tool with no annotations and no output schema, the description is insufficient. It doesn't explain what 'Git status information' includes, what format it returns, or any behavioral constraints. Given the complexity of Git operations and lack of structured documentation, more context is needed for the agent to use this tool effectively.

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?

The input schema has 100% description coverage, with the single parameter 'path' clearly documented as 'Gitリポジトリの絶対パス' (absolute path to Git repository). The tool description doesn't add any parameter information beyond what's already in the schema, so the baseline score of 3 is appropriate.

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?

The description clearly states the action ('取得します' - get/retrieve) and resource ('Gitのステータス情報' - Git status information), making the purpose immediately understandable. However, it doesn't distinguish this tool from its sibling 'create_commit', which is a different operation but related to Git repository management.

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

Usage Guidelines2/5

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

No guidance is provided about when to use this tool versus alternatives. The description doesn't mention prerequisites, appropriate contexts, or relationship to the sibling 'create_commit' tool, leaving the agent without usage direction.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 2 tool updatesv1.0.0
    • First observedcreate_commit
    • First observedget_status

TDQS

B3.1/5.0
Disambiguation5/5

The two tools have completely distinct purposes: create_commit performs a write operation to commit a file, while get_status performs a read operation to retrieve Git status information. There is no overlap or ambiguity between them.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern (create_commit, get_status) with clear, descriptive names that indicate their actions and targets. The naming is uniform and predictable.

Tool Count2/5

With only 2 tools, the server feels severely under-scoped for Git operations. While the tools cover basic commit creation and status checking, essential operations like cloning, branching, merging, or viewing history are missing, making it inadequate for typical Git workflows.

Completeness2/5

The toolset is highly incomplete for a Git server. It lacks fundamental operations such as clone, push, pull, branch, merge, log, or diff, which are critical for agent-driven Git management. Agents will encounter dead ends when trying to perform common Git tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    A Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.
    12
    90,042
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    A Model Context Protocol server that generates prompts based on Git repository content, including a command to generate PR descriptions from diffs.
    3
    2
    MIT
  • F
    license
    B
    quality
    Not graded
    maintenance
    A Model Context Protocol server that provides Commitizen functionality, enabling AI assistants to generate, validate, and work with conventional commit messages.
    21
    -

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/Sunwood-ai-labs/aira-mcp-server'

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