Skip to main content
Glama

Audit Task

audit_task

Verify whether completed work meets a task specification using AI.

Call get_fees() first to get the current fee amount and accepted assets. Each fee_hash is single-use (anti-replay protection).

Response shape (always check criteria_failed before deciding how to proceed):

{
  "verdict":         "PASS" | "FAIL",
  "status":          "approved" | "rejected",
  "score":           0-100,
  "summary":         "one-sentence explanation",
  "details":         "full reasoning",
  "criteria_met":    ["criterion A passed", "criterion B passed"],
  "criteria_failed": ["criterion C not met — specific reason"],
  "model_used":      "gemini-3.5-flash-lite"
}

On PASS: proceed to payment or accept the deliverable. On FAIL: read criteria_failed to understand exactly what was missing. Each entry is a specific, actionable failure — not a generic rejection. Use them to tell the worker precisely what to fix before resubmitting.

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": {
      "task": "<task>",
      "work": "<work>",
      "fee_hash": "<fee_hash>"
    },
    "name": "audit_task"
  }
}

Input Schema

NameRequiredDescriptionDefault
taskYesThe task requirements or specification the worker must meet.
workYesThe work, output, or proof of completion to evaluate against the specification.
fee_hashYesTransaction hash of the fee payment. For XRP: 64-char hex of an XRPL Payment tx. For USDC on Base: 0x-prefixed 66-char EVM tx hash. Each hash is single-use.
task_categoryNoEvaluation rubric. One of: default, creative, code, data, data_analysis, bug_bounty, legal, supply_chain.default
require_consensusNoWhen True, two AI models must independently agree before returning PASS. Recommended for high-stakes tasks.

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / fee_hash / title
      Added value: +"XRPL Payment Hash"
    • addedInput schema / properties / task / title
      Added value: +"Task Specification"
    • addedInput schema / properties / work / title
      Added value: +"Completed Work"
  2. Changed1 schema field changed
    • changedInput schema / properties / fee_hash / description
      Previous value: -"64-character hex transaction hash of the 0.1 XRP payment to rmcSrkpZ2i2kuvtCPeTVetee9SixP4djR. Each hash is single-use."New value: +"Transaction hash of the fee payment. For XRP: 64-char hex of an XRPL Payment tx. For USDC on Base: 0x-prefixed 66-char EVM tx hash. Each hash is single-use."
  3. First observed

TDQS

A4/5.0
Behavior4/5

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

The annotations declare a non-read-only, open-world, non-idempotent call, and the description adds essential details beyond that: a paid fee is required, each fee_hash is single-use against replay, and which model performs the audit. It stays silent on the behavior of require_consensus and on failure modes such as an unpaid or reused hash, which keeps it from being fully transparent.

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 prerequisite is front-loaded, and the response-shape block is readable and immediately followed by how to act on each verdict. Every line supports calling the tool correctly or interpreting its result.

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?

The description covers the payment prerequisite, the anti-replay constraint, and how to use the verdict in a workflow, which is enough for a paid, AI-verification tool. The response block partially duplicates the existing output schema, and the consensus mode goes unexplained, so it is strong but not perfect.

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 coverage is 100%, so the schema already documents every parameter, including the formats for task, work, and fee_hash and the task_category rubric values. The description only restates the single-use property of fee_hash and adds nothing about task_category or require_consensus. With the schema doing the heavy lifting, the baseline of 3 is correct.

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 gives a specific verb and resource: 'Verify whether completed work meets a task specification using AI.' That tells an agent precisely what the tool does. It doesn't differentiate from the closely related sibling evaluate_escrow_work, so it falls short of a 5.

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 says to call get_fees() first and outlines what to do on PASS versus FAIL, so the call sequence and result handling are clear. It never names alternative tools for overlapping cases, such as evaluate_escrow_work or challenge_escrow_verdict, so the exclusions are missing.

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.