Skip to main content
Glama
tribeunal

Tribeunal Decision-Making Platform

Official

Appeal ruling

tribeunal_appeal_ruling

Appeal a standing dispute ruling if you are the losing party, opening a fresh, larger human-only jury round with prior filings carried forward.

Instructions

Appeal the standing ruling of a dispute you are a party to: the server opens the next round as a new, larger, human-only case (5 jurors, then 9) with fresh jurors, never a party or an earlier juror, and carries every earlier filing and verdict digest into its record. Only the party the standing ruling goes against may appeal (either party after a Void round 0), after the latest round closed and before its appealDeadline, at most twice; no fee, no bond. reason is copied verbatim into a permanent record. Refused: 403 appeal_not_losing_party; 409 round_not_closed (await the provisional ruling first), appeal_window_closed, max_rounds, dispute_final; 503 appeal_pool_unconfigured (no human pool on this server); 404 dispute_not_found; 403 not_a_party (an admin who is not a party); 422 invalid_reason; 403 insufficient_scope (create:trials). Returns {round, caseUuid, caseUrl, endsAt, jurorCount, minVotes, invited, standing, priorRound, record, appealDeadline, honesty}; appealDeadline is null until the new round closes. Next: tribeunal_submit_evidence into the new round, then tribeunal_await_ruling. Proves: A fresh, larger, human-only round opened. Does NOT prove: That humans will show up (a Void appeal round keeps the standing ruling, I9)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
reasonYesThe ground of the appeal, 1-500 characters on one line. Copied permanently into the next round's record: no personal data.
disputeUuidYesThe dispute's uuid (disputeUuid from tribeunal_open_dispute, tribeunal_list_disputes or a dispute.opened webhook) — not a case uuid.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.3.0
    • changedInput schema / properties / disputeUuid / description
      Previous value: -"The dispute's uuid (disputeUuid from tribeunal_open_dispute or a dispute.opened webhook) — not a case uuid."New value: +"The dispute's uuid (disputeUuid from tribeunal_open_dispute, tribeunal_list_disputes or a dispute.opened webhook) — not a case uuid."
  2. Addedv2.2.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only give the safety profile (readOnlyHint=false, destructiveHint=false, idempotentHint=false); the description adds everything an agent needs beyond that: no fee or bond, reason is copied verbatim into a permanent record and must contain no personal data, the full refusal code list with remedies (409 round_not_closed tells you to await the provisional ruling first), and the complete return shape including that appealDeadline is null until the new round closes.

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?

Purpose and eligibility are front-loaded before error codes, and nearly every clause carries load-bearing information. It is dense to the point of being a wall of text — the refusal-code list and return-field enumeration could be delimited or ordered for faster scanning.

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 mutation with no output schema, the description enumerates the returned fields (round, caseUuid, caseUrl, endsAt, jurorCount, minVotes, invited, standing, priorRound, record, appealDeadline, honesty), states the nullable appealDeadline, and even bounds its own epistemic claim via 'Proves / Does NOT prove'. Nothing an agent needs to invoke it correctly is missing.

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 schema already documents both parameters, setting the baseline at 3. The description still earns credit by reinforcing that reason is a 1-500 character, single-line, permanent, no-personal-data field and by distinguishing disputeUuid from a case uuid via the return of caseUuid/caseUrl.

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 first clause states a specific verb and resource — 'Appeal the standing ruling of a dispute you are a party to' — and immediately scopes the effect (opens a new, larger, human-only round with fresh jurors). The closing 'Next: tribeunal_submit_evidence ... then tribeunal_await_ruling' visually distinguishes it from the sibling await/submit tools an agent might otherwise pick.

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

Usage Guidelines5/5

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

It names exactly who may call it ('Only the party the standing ruling goes against ... either party after a Void round 0'), the timing condition ('after the latest round closed and before its appealDeadline'), and the cap ('at most twice'), plus the cost ('no fee, no bond'). Explicit follow-up routing to submit_evidence/await_ruling removes any ambiguity about what to do next.

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