Skip to main content
Glama
saidsef

GitHub PR Issue Analyser

by saidsef

Github Update Pr Branch

github_update_pr_branch
Idempotent

Update a pull request branch to include latest upstream changes. Provide the expected head SHA to avoid overwriting recent pushes.

Instructions

Updates the pull request branch with the latest upstream changes. Read head_sha from github_get_pr_content and pass it as expected_head_sha to be refused rather than to overwrite a push that landed since.

Workflow and conventions: github_get_skill('pr-management').

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pr_numberYes
repo_nameYes
repo_ownerYes
expected_head_shaNoRefuse unless the head still matches this SHA, as github_get_pr_content reports it

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv42.0.0

TDQS

A4/5.0
Behavior4/5

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

The description adds meaningful behavioral context beyond annotations: it reveals the concurrency guard, why expected_head_sha matters, and the risk of omitting it. Annotations only indicate non-read-only, idempotent, non-destructive behavior, so this extra context is valuable. No contradiction with annotations.

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 purposeful sentences plus a compact skill pointer. It front-loads the main action, then the key workflow detail, and contains no filler or redundant restatement of the tool name.

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?

For a mutation tool with an output schema and annotations, the description is largely complete: required parameters, optional guard semantics, and the recommended workflow are all present. Minor omissions include behavior when the branch is already up to date or when expected_head_sha is omitted, but these are not critical for calling the tool correctly.

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 only 25%, with only expected_head_sha documented. The description compensates for that parameter by telling the agent to source it from github_get_pr_content and explaining its purpose. However, repo_owner, repo_name, and pr_number receive no additional semantic guidance, leaving a gap despite their conventional names.

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 verb ('Updates'), the resource ('the pull request branch'), and the nature of the operation ('with the latest upstream changes'). It is distinguishable from siblings like github_update_pr and github_merge_pr, though it never names those alternatives explicitly.

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?

It gives a concrete before-call workflow: read head_sha from github_get_pr_content and pass it as expected_head_sha so the update is refused rather than overwriting a newer push. It also points to github_get_skill('pr-management') for conventions. It does not state explicit when-not-to-use cases or compare itself to alternatives.

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