Skip to main content
Glama

phabricator_build_command

Destructive

Report pass, fail, or in-progress status to a Harbormaster build target, optionally attaching unit test and lint results.

Instructions

Send a command to a Harbormaster build target. Report build status (pass/fail/work) with optional unit test and lint results.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "buildTargetPHID": "<buildTargetPHID>",
      "type": "<type>"
    },
    "name": "phabricator_build_command"
  }
}

Input Schema

NameRequiredDescriptionDefault
lintNoLint results to report
typeYesMessage type: "pass" (target passed), "fail" (target failed), "work" (target still working, resets timeout)
unitNoUnit test results to report
buildTargetPHIDYesPHID of the build target (PHID-HMBT-...) to send the message to

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.19

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, so the safety profile is known. The description adds that it sends a command and reports pass/fail/work status, but it does not explain what state is changed, whether the action is reversible, or what permissions are required.

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, front-loaded with the action, and has no redundant background. Each phrase contributes either the core command purpose or the supported status/reporting data.

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?

Given the complete input schema and destructive annotations, the description covers the core action and reportable status values. It remains thin on side effects and return behavior, but with no output schema and full schema coverage, the structured fields handle the invocation details.

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 parameters are already fully documented. The description echoes the status enum and optional unit/lint result categories, but adds little parameter-specific meaning beyond the schema, so the baseline of 3 applies.

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 uses a specific verb and resource: 'Send a command' to a 'Harbormaster build target.' The second sentence clarifies that it reports build status with optional unit test and lint results. This distinguishes it from build/search/log siblings, though it does not explicitly name alternatives.

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 the use case—reporting build status, unit test results, and lint results to a build target—but gives no explicit when-to-use conditions, prerequisites, or alternatives. It is implied usage rather than clear routing guidance.

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

Deploy Server

Other Tools