Skip to main content
Glama
revenant20
by revenant20

approve_merge_request

Toggle approval on a merge request. Adds approval if not yet approved, or removes it if already approved.

Instructions

Toggle approval on a merge request. If not yet approved by the authenticated user, this adds approval; if already approved, this removes it. Use get_merge_request to check the current approval state first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mr_idYesMerge request local ID
ownerYesProject owner alias
projectYesProject alias
Behavior4/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It explicitly discloses the toggle behavior (adds if not approved, removes if already approved), which is a non-obvious and critical detail. It also mentions the 'authenticated user' aspect, indicating permission context. It could add more about side effects, but the key behavior is well covered.

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 two sentences long and immediately states the core behavior. Every sentence is useful: the first defines the toggle action, the second provides a critical prerequisite. No redundant or vague wording.

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

Completeness5/5

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

Given the tool's low complexity, a complete input schema, and no output schema, the description adequately covers the essential behavior and suggests a pre-check. It even notes the authenticated user context. There is no need for more detail about return values or edge cases for this simple toggle.

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 already describes all three parameters (owner, project, mr_id) with clear short descriptions. The tool description adds no additional meaning beyond the schema. Per the calibration, with 100% schema coverage, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description clearly states a specific action (toggle approval) on a specific resource (merge request), and distinguishes it from related tools like merge_merge_request by explaining the actual behavior. The verb 'Toggle' and the conditional logic make the purpose unambiguous.

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

Usage Guidelines4/5

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

The description provides clear context on how to use the tool (check approval state first) and implies that this tool is for approving/unapproving an MR. It doesn't explicitly mention when not to use it or name alternatives, but the guidance to use get_merge_request beforehand is valuable and actionable.

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

Install Server

Other Tools

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/revenant20/gitflic-mcp'

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