Skip to main content
Glama

github_create_pr

[WRITE] Open a pull request from a branch into the default branch (or another base). Requires confirm:true.

Input Schema

NameRequiredDescriptionDefault
baseNoBranch to merge into (optional; default branch)
bodyNoDescription, Markdown (optional)
headYesBranch with the changes
repoYesRepository as owner/name, e.g. "octocat/hello-world" (a github.com URL works too)
draftNoOpen as a draft (optional)
titleYesPull request title
confirmNoMust be true to actually do this on GitHub. Omit/false to refuse (safety gate).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and openWorldHint=true, so the '[WRITE]' tag adds nothing new. The confirm gate is useful behavioral context, but it is already spelled out in the schema parameter description, and the description says nothing about required GitHub permissions, failure modes when a PR already exists, or what is returned.

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?

Two short sentences with the write marker, the action, and the safety precondition front-loaded. Nothing is redundant or padded.

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?

For an open-world write tool with no output schema, the agent still does not know what the call returns (PR number/URL) or how duplicate-PR situations behave. The fully documented schema and write annotations keep it at an adequate level rather than a failing one.

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% and every parameter (repo, head, base, title, body, draft, confirm) is documented in the schema itself. The description only echoes head/base semantics, adding no syntax or format detail beyond what is already structured.

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 states a concrete verb and resource ('Open a pull request') plus the direction of the operation (branch into default branch or another base), which separates it cleanly from github_merge_pr and github_create_issue. It does not name any sibling explicitly, so it stops short of the top score.

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?

'Requires confirm:true' tells the agent the precondition for acting, and the head/base phrasing implies when the tool applies. However, there is no explicit guidance on when to prefer it over github_merge_pr or github_create_branch_commit, and no exclusions are stated.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources