Skip to main content
Glama

Send a change to a linked repository

send_change
Destructive

Sends (pushes) the person's change to code or a site on GitHub, from a folder linked to its repository: as one commit with a sentence of why, straight to the branch when the link lets this person commit and GitHub lets them push there, unless pull_request is true; otherwise as a pull request. Edits and new files in a linked folder, made over MCP or in Alcoven, wait in that change until it is sent. The person confirms in this AI tool before anything is sent; clients that cannot show that confirmation get a preview and a proposal id instead.

Input Schema

NameRequiredDescriptionDefault
whyYesOne sentence of what it changes and why, for the people who read it on GitHub. It becomes the commit's message, and the pull request's title when it opens one.
folderNoThe linked folder, like apps/site. Needed only when the person has changes waiting for more than one repository.
projectNoThe project's slug, from open_project, like acme. Not needed when a § address names the project, or when the person is on one project.
pull_requestNotrue when the person wants a pull request for this change although the link lets them commit straight to the branch. Leave it out otherwise.

Output Schema

NameRequiredDescriptionDefault
urlNo
modeNo
noteNo
sentYes
previewNo
proposalNo
pullRequestNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already flag destructiveHint=true and openWorldHint=true, yet the description adds material context: pending edits accumulate in the change until sent, the person must confirm inside the AI tool before anything is pushed, and clients unable to show that confirmation receive a preview plus a proposal id. That disclosure of the confirmation gate and fallback path is exactly what an agent needs before invoking a destructive, non-idempotent external write.

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?

Three sentences, front-loaded with the action, then the branching logic, then the confirmation behavior. The clause 'straight to the branch when the link lets this person commit and GitHub lets them push there' is dense and slightly wordy, but no sentence is filler.

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?

For a destructive, open-world push tool with a full output schema and complete parameter documentation, the description covers the operation, the branch-vs-PR decision, prerequisite conditions, pending-change semantics, and the confirmation/preview fallback. An agent has everything needed to decide and call correctly.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds genuine semantics: `why` becomes the commit message and PR title, `folder` is only required with pending changes across multiple repositories, and `pull_request` exists specifically to force a PR despite branch-commit permissions. That clarifies parameter interplay rather than restating field descriptions.

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?

States a specific verb and resource ('Sends (pushes) the person's change to code or a site on GitHub') and immediately ties it to the linked-folder mechanism, so the agent knows exactly what operation is performed and where. The two delivery modes (commit vs pull request) are named, distinguishing it from sibling tools like confirm_send or apply_edits.

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?

Gives clear conditions: default is a direct commit when the link permits and GitHub allows the push, otherwise a pull request; pull_request=true is the explicit override. It also says when `folder` is needed (multiple repos with pending changes). It does not name alternate sibling tools such as confirm_send for the confirmation-preview case, leaving that routing implicit.

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