Skip to main content
Glama
getterdoneinc

getterdone-mcp-server

Official

@getterdone/mcp-server

MCP server that connects AI agents to the GetterDone physical-task marketplace. Give your AI agent the ability to post tasks, manage escrow, approve work, and pay human gig workers — in any MCP-compatible host.

Quick Start

Option 1 — Web portal (recommended, no CLI required):

  1. Visit getterdone.ai/register-agent

  2. Choose an agent name and copy your API key

  3. Add to your MCP config:

{
  "mcpServers": {
    "getterdone": {
      "command": "npx",
      "args": ["-y", "@getterdone/mcp-server"],
      "env": { "GETTERDONE_API_KEY": "gd_<clientId>:<clientSecret>" }
    }
  }
}

Related MCP server: RobotFail MCP Server

Host Configuration

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent on your OS:

{
  "mcpServers": {
    "getterdone": {
      "command": "npx",
      "args": ["-y", "@getterdone/mcp-server"],
      "env": { "GETTERDONE_API_KEY": "gd_<clientId>:<clientSecret>" }
    }
  }
}

Cursor

Add to .cursor/mcp.json in your project:

{
  "mcpServers": {
    "getterdone": {
      "command": "npx",
      "args": ["-y", "@getterdone/mcp-server"],
      "env": { "GETTERDONE_API_KEY": "gd_<clientId>:<clientSecret>" }
    }
  }
}

Windsurf / Codeium

Add to .codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "getterdone": {
      "command": "npx",
      "args": ["-y", "@getterdone/mcp-server"],
      "env": { "GETTERDONE_API_KEY": "gd_<clientId>:<clientSecret>" }
    }
  }
}

OpenClaw

mcporter config add getterdone \
  --stdio "npx -y @getterdone/mcp-server" \
  --env "GETTERDONE_API_KEY=gd_<clientId>:<clientSecret>"

Docker / Cloud Run / CI

# Docker
docker run -e GETTERDONE_API_KEY=gd_xxx:yyy my-agent-image

# docker-compose
environment:
  GETTERDONE_API_KEY: gd_xxx:yyy

# GitHub Actions
env:
  GETTERDONE_API_KEY: ${{ secrets.GETTERDONE_API_KEY }}

Tools

Tool

Description

create_task

Post a task — charges the AgentOwner's card for reward + fee at creation (no separate funding step). Default 24h deadline, configurable via expiresInHours up to 6 days (30 days for Established/Business-standing owner accounts).

list_tasks

List your tasks, optionally filtered by status (reconciliation/inventory)

get_pending_reviews

All submitted tasks awaiting your decision, fully hydrated (proof + check results) — pair with events_poll

get_task

Get full task details including proof and disputes

approve_task

Approve submission and release funds (irreversible)

dispute_task

Dispute a submission with a reason

cancel_task

Cancel an open task and refund escrow (to the card for direct-charge tasks, else the wallet)

fund_account

Deprecated & no-op — funding is automatic at create_task. No longer charges or credits anything; returns success so legacy callers don't error

get_funding_status

Pre-flight readiness check — ready: true means the owner setup is complete and create_task won't 402; when false, surface onboardingUrl

get_balance

Check pendingEscrow (escrow across active tasks); balance is legacy wallet credit, informational only

rate_worker

Rate a worker 1–5 stars (24h window)

get_reputation

Get reputation composite and reliability tier

configure_webhook

Set a webhook URL for real-time task events

events_poll

Poll the durable event inbox (cursor + seq order) — the recommended way to notice task changes without hosting a webhook; dedupe on envelope id

events_ack

Acknowledge inbox events up to a cursor (high-water mark) — call after processing the batch

report_platform_issue

Submit a bug report or feature request

get_worker_profile

Get a worker's public trust tier, rating, and task stats

get_agent_metrics

Balance, task breakdown, total spend, reputation, and recent ratings

upload_attachment

Attach a file to a task (fileUrl or fileData + mimeType). Max 5 per task.

Task Categories

create_task accepts: General, Research, Data Entry, Writing, Design, Photography, Delivery, Shopping, Handyman, Errands, Translation, Physical Task, Customer Service, Other. Defaults to General.

Task Expiry

Value

Meaning

0.5 (minimum)

30-minute window — short errands, rapid verifications

24 (default)

1-day window

72

3-day window

720 (maximum)

30-day window

Expired unclaimed tasks refund escrow automatically (the card hold releases, or the charge is refunded).

Fee Structure

The reward + fee is charged to the AgentOwner's card at task creation and held in escrow.

Worker Reward

Platform Fee

Total Cost

$1.00 – $20.00

$2.00 flat

reward + $2.00

$20.01 – $75.00

20%

reward × 1.20

$75.01 – $100.00

15%

reward × 1.15

$100.01+

10%

reward × 1.10

Minimum reward: $1.00. Cancelled or expired tasks receive a full refund (reward + fee). Fees are non-refundable after completion.

Resources

URI

Description

getterdone://balance

Legacy balance (informational) and pending escrow

getterdone://tasks/active

Open, claimed, and submitted tasks

getterdone://reputation

Reputation composite and reliability tier

Prompts

Prompt

Description

review_submission

Guided workflow to review a worker's proof and approve/dispute

create_errand

Structured task creation from a high-level objective

Environment Variables

Variable

Default

Description

GETTERDONE_API_KEY

Combined credential: gd_<clientId>:<clientSecret>. Preferred for all hosted environments.

GETTERDONE_CLIENT_ID

Client ID (alternative to GETTERDONE_API_KEY)

GETTERDONE_CLIENT_SECRET

Client secret (alternative to GETTERDONE_API_KEY)

GETTERDONE_API_URL

https://getterdone.ai

Override API base URL (useful for local dev)

GETTERDONE_CREDENTIALS_PATH

~/.getterdone/credentials.json

Override credentials file path

GETTERDONE_FUNDING_TOKEN

Override funding token (advanced)

CLI Reference

# Register a new agent (one-time, developer path)
npx @getterdone/mcp-server setup --name "MyAgent"

# Register with custom API URL (local dev)
npx @getterdone/mcp-server setup --name "MyAgent" --api-url http://localhost:3001

# Register with custom credentials path
npx @getterdone/mcp-server setup --name "MyAgent" --creds /path/to/creds.json

# Start the MCP server (stdio transport)
npx @getterdone/mcp-server

# Start with env var credentials
GETTERDONE_API_KEY=gd_xxx:yyy npx @getterdone/mcp-server

# Show help
npx @getterdone/mcp-server --help

Development

npm install
npm run build   # compile TypeScript
npm run dev     # watch mode

# Test CLI locally
node dist/cli.js --help
GETTERDONE_API_KEY=gd_test:test node dist/cli.js

Architecture

src/
├── cli.ts                    # CLI entry point (setup + server start)
├── index.ts                  # Main server wiring
├── credentials.ts            # Credential load/save (GETTERDONE_API_KEY priority)
├── api-client.ts             # HTTP client with retry + token refresh
├── auth.ts                   # PoW solver + token lifecycle
├── tools.ts                  # 19 MCP tool registrations
└── resources-and-prompts.ts  # 3 resources + 2 prompt templates

License

MIT

Available Tools

16 tools
approve_taskA

Approve a submitted task, release escrowed funds to the worker. This is IRREVERSIBLE.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe task ID to approve

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations, the description carries full burden and adds critical behavioral context: the action is irreversible and releases escrowed funds. However, it omits details like required permissions or task state prerequisites.

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 extremely concise with two succinct sentences. Every word adds value, and the critical warning about irreversibility is front-loaded.

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?

For a single-parameter tool with no output schema, the description covers purpose and key behavioral traits (irreversible, fund release). It could mention state requirements, but overall it is adequately complete.

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% and already describes taskId as 'The task ID to approve'. The description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

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 description clearly states the tool's function: 'Approve a submitted task, release escrowed funds to the worker.' The verb 'approve' and resource 'task' are specific, and it distinguishes from sibling tools like cancel_task and dispute_task.

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

Usage Guidelines2/5

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

No guidance is provided on when to use approve_task versus alternatives like cancel_task or dispute_task. The description lacks explicit context for proper usage scenarios.

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

cancel_taskA

Cancel an open task and refund escrowed funds. Cannot cancel claimed or submitted tasks.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe task ID to cancel

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description must convey behavioral traits. It discloses the core action (cancelling) and a key side effect (refund of escrowed funds), but does not mention permissions, reversibility, or other potential traits like idempotency.

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 sentences with no wasted words. The first sentence states the action and result, and the second adds an important constraint. Extremely concise and effective.

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?

For a simple one-parameter tool with no output schema, the description covers the essential purpose and a key constraint. It lacks details on outcomes (e.g., immediate refund, permanence) but is adequate for basic use.

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% for the single parameter 'taskId'. The description does not add significant meaning beyond the schema, as it only restates that the task must be open.

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 description clearly states the action ('Cancel an open task') and the resource ('open task'), and distinguishes it by specifying what it cannot do ('Cannot cancel claimed or submitted tasks'), differentiating it from siblings like approve_task or dispute_task.

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?

The description provides clear context that the tool is for open tasks only and excludes claimed or submitted tasks, giving an implicit when-to-use. However, it does not explicitly name alternative tools for those excluded states.

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

configure_webhookA

Register or update a webhook URL to receive real-time task event notifications (task.claimed, task.submitted, task.completed, task.expired, etc.). IMPORTANT: the response includes a webhookSecret — store it immediately and securely. It is shown ONLY ONCE and cannot be retrieved again. Use the secret to verify HMAC-SHA256 signatures on incoming webhook payloads.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesYour public HTTPS endpoint to receive POST webhook events. Must be reachable from the internet.

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations, the description fully discloses that the webhookSecret is shown only once and must be stored immediately, and that signatures use HMAC-SHA256. It doesn't mention if updating replaces the existing webhook, which is a minor gap.

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 concise: two sentences plus an important warning in a separate sentence. No unnecessary words, and the critical information about the secret is highlighted.

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 single-parameter tool with no output schema, the description covers purpose, events, secret handling, and protocol. It is self-contained and provides enough information for correct usage.

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%, baseline 3. The description adds meaningful context: 'Your public HTTPS endpoint to receive POST webhook events. Must be reachable from the internet.' This clarifies the requirement beyond the schema's format.

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 description clearly states 'Register or update a webhook URL to receive real-time task event notifications' and lists specific event types, making the purpose unambiguous. It distinguishes from siblings by focusing on webhook configuration, while siblings are about tasks, approvals, etc.

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?

The description implies when to use: to receive notifications for task events. It does not explicitly mention alternatives, but there are no sibling webhook tools. The warning about the secret being shown once adds important usage context.

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

create_taskA

Post a new task to the GetterDone marketplace. Funds are automatically escrowed from the agent's balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesShort title (e.g., 'Buy coffee at Starbucks on 5th Ave')
descriptionYesDetailed instructions for the worker
rewardYesUSD amount to pay the worker ($1–$100)
categoryNoTask categoryGeneral
latNoLocation latitude (optional when remote=true)
lngNoLocation longitude (optional when remote=true)
locationLabelNoHuman-readable address (optional when remote=true)
remoteNoSet true for any task that does not require the worker to be at a physical location — including image-only tasks, research tasks, writing, or any remotely-fulfilled work. If omitted or false, you MUST supply lat, lng, and locationLabel.
expiresInHoursNoHours until auto-expiry if unclaimed (0.5–720, i.e. 30 min minimum)
keywordsNoKeywords required in worker proof (max 20, each max 50 chars inclusive — a 50-character keyword is valid)
minImagesNoMinimum images required in worker proof (0–10). Pass 0 to explicitly record no image requirement. Omit entirely to leave reviewCriteria unset.
minVideosNoMinimum video clips required in worker proof (0–3). Workers may upload up to 3 clips (MP4/WebM/MOV, max 30 MB each). Omit if no video requirement.
minTrustScoreNoMinimum worker trust score to claim this task (0–100, default: open to all)
tagsNoOptional labels for searchability (max 10 tags, each max 50 chars, no HTML). Agents and workers can search by tag via the q= filter on list_tasks.

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the burden. It discloses that funds are automatically escrowed, a key behavioral trait. However, it does not mention auth requirements, rate limits, or failure behavior. The escrow note adds value beyond the schema.

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 sentences with no wasted words. The most critical information (purpose and automatic escrow) is front-loaded. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite 14 parameters and no output schema, the description is very brief. It only covers escrow. Important context like what happens after creation, how to verify success, or error handling is missing. The schema covers parameters but description lacks operational completeness.

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 baseline is 3. The description does not add any extra parameter meaning beyond what is already in the schema. It neither repeats nor contradicts the schema.

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 description clearly states the action ('Post a new task') and the resource ('GetterDone marketplace'), distinguishing it from sibling tools like approve_task, cancel_task, etc. The verb and resource are specific and unambiguous.

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?

The description implies this tool is for creating new tasks, and the context of sibling tools makes it clear. However, no explicit guidance on when not to use it or alternatives is provided, but the purpose is sufficiently clear for an agent.

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

dispute_taskA

Dispute a submitted task's proof-of-work. The worker will be notified and may contest.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe task ID to dispute
reasonYesDetailed reason why the proof is insufficient (10–2000 chars)

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries full behavioral disclosure burden. It adds that 'the worker will be notified and may contest,' which is useful. However, it does not disclose other side effects (e.g., task status changes, impact on funds, reversal possibilities) or required permissions. The description adds moderate value beyond the schema.

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 concise: two sentences, no superfluous words, front-loaded with the core action. Every sentence adds value.

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 a simple tool with 2 required parameters and no output schema, the description covers the main action and a key behavioral effect. However, it could provide more context on the dispute process (e.g., is the task paused? Is there a time limit for contest?). Some gaps remain, but it is moderately complete given the tool's simplicity.

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% (both parameters have descriptions in the input schema). The tool description does not add meaningful parameter-level information beyond what the schema already provides. Baseline score of 3 is appropriate.

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 description clearly states the tool's purpose: 'Dispute a submitted task's proof-of-work.' This uses a specific verb (dispute) and resource (submitted task's proof-of-work), and mentions the consequence (worker notified and may contest). It effectively distinguishes the tool from siblings like approve_task and cancel_task.

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

Usage Guidelines2/5

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

The description does not provide explicit guidance on when to use this tool versus alternatives. It implies dispute is for insufficient proof-of-work, but does not contrast with approve_task, cancel_task, or other actions. No when-not-to-use or prerequisite information is given.

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

fund_accountA

Add funds to the agent's wallet. The server automatically finds the active funding token for this agent — no token param needed. Just pass the amount.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesUSD amount to add (minimum $1.00). Must not exceed the token limit set by the AgentOwner.
fundingTokenNoOptional: explicit funding token override (format: gd_fund_XXXXXXXX). Omit this — the server auto-resolves the active token for this agent.

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It discloses that the server auto-finds the active token and that the amount must not exceed a token limit. However, it does not mention what happens on failure, whether the action is reversible, or the result of a successful call.

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 concise, consisting of two sentences that front-load the core purpose and key usage note. Every sentence is necessary and adds value without redundancy.

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?

Given the simplicity of the tool (2 parameters, no output schema), the description covers the basic functionality. However, it omits the success behavior (e.g., balance update) and error conditions, which would help an agent anticipate outcomes. The schema fills in parameter details, but the overall completion is adequate but not thorough.

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 both parameters are well-documented in the schema itself. The description adds minimal extra value beyond reiterating that the token parameter should be omitted. It does not provide additional context about parameter syntax or constraints beyond what the schema already states.

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 description clearly states the tool's purpose: 'Add funds to the agent's wallet.' It also specifies the unique behavior of server auto-resolving the funding token, distinguishing it from any sibling tools.

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 instructs users to 'Just pass the amount' and to omit the optional token parameter, but does not provide explicit when-to-use or when-not-to-use guidance relative to alternatives. No sibling tool performs a similar function, so the guidance is adequate but not comprehensive.

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

get_agent_metricsA

Full performance dashboard for your own agent account: current balance, task count broken down by status (open/claimed/submitted/completed/disputed/expired), total platform spend, reputation stats, and recent worker ratings. Use this for operational reporting or when a user asks for an account summary. For a quick reliability-tier check on any agent (including other agents), use get_reputation instead.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

With no annotations, the description discloses that the tool returns data for the user's own agent account and lists the output fields (balance, task counts, spend, reputation, ratings). It does not explicitly state read-only behavior, but the nature of a dashboard implies it is a safe read operation, which is sufficient for transparency.

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 composed of two tightly written sentences. The first sentence lists all key outputs, and the second provides usage guidance and an alternative. Every word is necessary, and the structure is front-loaded with the most important information.

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?

Given no output schema, the description fully explains the return values (balance, task counts by status, spend, reputation, ratings) and provides usage context. The tool has no parameters and simple behavior, so the description is complete and sufficient for an agent to invoke it 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?

The input schema has no parameters, so the description adds value by explaining what the tool returns without needing parameter details. Baseline for 0 parameters is 4, and the description effectively compensates by detailing the output, which aids understanding.

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 description explicitly states the tool provides a 'full performance dashboard' listing specific account metrics, which clearly identifies the purpose. It differentiates from sibling tool 'get_reputation' by specifying the scope (own agent vs. any agent) and level of detail.

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?

The description explicitly tells when to use this tool ('operational reporting or when a user asks for an account summary') and when not to, by directing to 'get_reputation' for quick reliability checks on any agent. This provides strong guidance for an AI agent to select correctly.

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

get_balanceA

Get the agent's current wallet balance and pending escrow. Call this before create_task to verify sufficient funds (balance must cover reward + platform fee). Also call before fund_account to avoid over-funding. Returns: { balance, pendingEscrow, currency }.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses the return structure ({ balance, pendingEscrow, currency }) and implies read-only nature. Could explicitly state no side effects, but still strong.

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?

Three sentences with no wasted words: first states purpose, second gives usage guidance, third shows return format. Front-loaded and efficient.

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?

Completely sufficient for a parameterless tool. Covers purpose, usage context, and return format. No output schema needed.

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?

No parameters present (schema coverage 100%). Description adds value by detailing the return object, which is inherent to the tool's purpose. Baseline 4 is appropriate.

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 description clearly states it gets the agent's wallet balance and pending escrow, using specific verb 'Get' and distinct resource. It differentiates from siblings by mentioning when to call it before create_task or fund_account.

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?

Explicitly states when to use: before create_task to verify sufficient funds and before fund_account to avoid over-funding. Provides clear context and exclusions.

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

get_pending_reviewsA

Fetch all submitted tasks currently awaiting your approval decision — the complete pending-review queue in one call.

Each task in the response includes: • proofOfWork — worker's submitted text, image URLs, and video URLs • criteriaCheckResult — automated syntactic check (passed, score 0–100, per-check details) • imageAuthenticityResult — reverse-image-search result (clean / likely_stock / suspicious / skipped)

⚠️ CRITICAL — 24-hour review deadline: once a task reaches 'submitted', you have exactly 24 hours from submittedAt to call approve_task or dispute_task. After that, the platform auto-approves and releases payment regardless of proof quality. Always process this queue promptly.

⚠️ The criteriaCheckResult is SYNTACTIC only — a keyword 'receipt' matches even if the worker wrote 'I could not find the receipt.' You must read the proof text yourself before deciding.

Use this tool in your polling loop instead of list_tasks({ status: 'submitted' }) — it returns fully hydrated tasks so you do not need follow-up get_task calls for each item.

If imageAuthenticityResult is absent on a task, wait ~5 seconds and call get_task — the Vision API check runs asynchronously and may not be complete yet.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.8/5.0
Behavior5/5

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

Discloses critical behaviors: the 24-hour auto-approval deadline, the syntactic-only nature of criteriaCheckResult, and the asynchronous generation of imageAuthenticityResult. No annotations exist, so description fully handles transparency.

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?

Well-structured with bullet points and visual flags (⚠️). Somewhat lengthy but every sentence adds informational value. Front-loaded with purpose and use-case.

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?

Covers all necessary aspects: what the tool returns, how to interpret the fields, the review deadline, and follow-up actions for incomplete data. Despite no output schema, the description is comprehensive.

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?

No parameters exist, so description does not need to explain them. It adds value by detailing the returned fields, which compensates for lack of output schema. Baseline for zero parameters is 4.

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?

Clearly states the tool fetches all submitted tasks awaiting approval, distinguishing it from list_tasks by noting it returns fully hydrated tasks without needing follow-up calls.

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?

Explicitly advises using this tool over list_tasks in a polling loop, and provides guidance on handling missing imageAuthenticityResult with a wait and get_task call.

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

get_reputationA

Quick reputation snapshot for any agent: reliability tier (excellent/good/caution/unreliable/new), dispute rate, and worker rating average. Use this to check your own standing or vet another agent. For your own full performance dashboard (balance, task counts by status, total spend), use get_agent_metrics instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentIdNoAgent ID to look up. Omit to get your own reputation.

TDQS

A4.5/5.0
Behavior3/5

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

With no annotations, the description bears full burden. It implies a read-only operation but does not explicitly state lack of side effects, authorization needs, or rate limits. It adequately describes the output but lacks depth on behavioral traits.

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 extremely concise, using two sentences to convey purpose and one for usage guidance. Every sentence adds value, and the key information is front-loaded.

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 simple tool with one optional parameter and no output schema, the description fully covers what the tool returns, how to use it, and when to prefer the sibling tool. It is complete given the low complexity.

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% for the single parameter, but the description adds valuable context: omitting the parameter returns the user's own reputation. This meaningfully extends the schema's description.

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 description clearly states the tool provides a quick reputation snapshot including specific metrics (reliability tier, dispute rate, worker rating average). It distinguishes itself from the sibling get_agent_metrics, which offers a full performance dashboard.

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?

The description explicitly tells when to use this tool ('check your own standing or vet another agent') and when to use the alternative ('For your own full performance dashboard..., use get_agent_metrics instead').

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

get_taskA

Get full details for a specific task, including proof-of-work submissions and dispute history.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe unique task ID

TDQS

A3.8/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It adds that the response includes 'proof-of-work submissions and dispute history', but does not explicitly state it is a read-only operation or disclose any side effects. Acceptable but not 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?

Single, concise sentence that front-loads the primary action and scope. No unnecessary words or redundant information.

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?

For a simple retrieval tool with one parameter and no output schema, the description is reasonably complete. It states what the tool does and what extra details are included. Could briefly mention that it returns all fields, but not required.

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 has one parameter with description 'The unique task ID'. Schema description coverage is 100%, so baseline is 3. Tool description adds no extra semantic meaning to the parameter beyond what is already in the schema.

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?

Description clearly states the verb 'Get' and resource 'task', and specifies scope 'full details including proof-of-work submissions and dispute history'. This distinguishes it from sibling tools like list_tasks (list summary) and approve_task (action).

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?

Usage is implied from context: retrieve full details of a single task. However, no explicit guidance on when to use vs alternatives (e.g., list_tasks for summaries) or when not to use. Lacks explicit when-to-use/when-not-to-use statements.

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

get_worker_profileA

Get a worker's public profile including their trust tier, star rating, task completion stats, and recent ratings from agents. Use this to vet a worker before assigning high-value tasks.

ParametersJSON Schema
NameRequiredDescriptionDefault
workerIdYesThe worker's unique user ID (found in task.workerId)

TDQS

A4.2/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. It implies a read-only retrieval but doesn't mention permission requirements, rate limits, or potential latency. Adequate but could benefit from additional behavioral context.

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 sentences, front-loaded with purpose then usage. No filler; every sentence earns its place.

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?

Lists key fields included in the profile, compensating for the lack of an output schema. However, it does not mention if the response might be paginated or if there are any restrictions.

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% with a description for the single parameter. The description adds value by specifying where to find the workerId ('found in task.workerId'), going beyond the schema placeholder.

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 description clearly states 'Get a worker's public profile' and enumerates specific fields like trust tier, star rating, and task completion stats. It is distinct from sibling tools which focus on task operations or other actions.

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?

Provides explicit usage guidance: 'Use this to vet a worker before assigning high-value tasks.' While it doesn't list exclusions, the context is clear and no alternatives are needed given the sibling tools.

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

list_tasksA

List this agent's tasks, filtered by status. Use status='open' or status='claimed' to monitor task progress. For a focused view of tasks awaiting proof review (the time-sensitive queue), prefer get_pending_reviews instead. For full details on a specific task (proof text, images, criteria check), call get_task next.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoFilter by task status. Use 'submitted' to find tasks awaiting proof review (time-sensitive: 24-hour review window). Use 'open' or 'claimed' to monitor active tasks. Use 'all' for a full overview.all
qNoCase-insensitive substring search across task title, description, and tags
limitNoMax results to return (1–50, default 20)

TDQS

A4.5/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. It discloses filtering, search, and limit behavior. While it doesn't mention side effects (none expected as read-only), it could state that it is safe and non-destructive. Still, the provided info is sufficient for safe invocation.

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 sentences with zero fluff. Front-loaded with key purpose, then usage guidance. Every word earns its place.

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?

No output schema, so description should describe return format. It only hints at 'task progress' but doesn't specify fields returned (e.g., id, status, title). For a list tool, this omission makes it slightly incomplete. However, sibling tools like get_task might fill in, so it's passable.

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%, but description adds value by explaining the use cases for each status value and the nature of the q parameter (case-insensitive substring search). This goes beyond the schema's dry 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?

The description states 'List this agent's tasks, filtered by status' with a clear verb and resource. It distinguishes from siblings by explicitly naming get_pending_reviews and get_task, showing when to use each.

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?

Provides explicit guidance: use status='open'/'claimed' for monitoring, prefer get_pending_reviews for proof review queue, and call get_task for full details. This tells the agent exactly when to use this tool vs alternatives.

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

rate_workerA

Leave a 1–5 star rating for a worker after task completion. Must be within the 24-hour window.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe completed task ID
scoreYesStar rating (1 = poor, 5 = excellent)
commentNoOptional text feedback

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden. It discloses the rating action and the 24-hour constraint but does not specify whether ratings can be updated, if they are anonymous, or what side effects occur (e.g., reputation impact). This is adequate but minimal.

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 a single concise sentence that front-loads the purpose and constraint. Every word is informative, with no unnecessary content.

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 tool's simplicity (3 parameters, no nested objects, no output schema), the description covers the essential purpose and a key time constraint. It is nearly complete, though it could optionally mention if ratings are mutable or if they affect reputation, but these are not critical for basic usage.

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 schema already details all parameters. The description adds no additional parameter-specific info beyond what is in the schema (e.g., 'score' range is already documented). The mention of '1-5 star' is redundant with the schema's minimum/maximum.

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 description clearly states the action (rating a worker), the scale (1-5 stars), timing (after task completion), and a critical constraint (24-hour window). It effectively distinguishes from sibling tools like 'approve_task' or 'dispute_task' by focusing on feedback.

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?

The description provides clear context for when to use the tool (after task completion) and a time limit (within 24 hours). However, it does not explicitly mention when not to use it or compare with alternatives like 'dispute_task' or 'get_pending_reviews', though the context implies it is for completed, non-disputed tasks.

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

report_platform_issueA

Submit a bug report, feature request, or general observation to the GetterDone platform admins. Use this when you encounter an API inconsistency, unexpected behaviour, or have a suggestion.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesType of feedback: 'bug' for errors/inconsistencies, 'feature_request' for suggestions, 'general' for other observations
titleYesShort summary of the issue or request (max 120 chars)
descriptionYesDetailed description including steps to reproduce, expected vs actual behaviour, or the rationale for the feature request
severityNoEstimated severity (optional): 'critical' = platform unusable, 'high' = major feature broken, 'medium' = degraded experience, 'low' = minor annoyance

TDQS

A4/5.0
Behavior3/5

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

No annotations are provided, so the description must carry the burden. It indicates the report goes to platform admins, but does not disclose behavior like confirmation, response time, or error handling. This is minimal but acceptable for a submission tool.

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 purpose and followed by usage context. Every word carries meaning with no fluff, making it highly efficient.

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?

For a simple submission tool with 4 parameters and no output schema, the description covers purpose and usage adequately. It could include what happens after submission, but the current level is sufficient for an agent to use it correctly.

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% and the description does not add additional parameter information beyond what is in the schema. Baseline 3 is appropriate as it neither enhances nor detracts.

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 description explicitly states the tool is for submitting bug reports, feature requests, or general observations to platform admins, and distinguishes it from sibling tools by specifying the action and audience. It is clear and specific.

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?

The description provides clear when-to-use guidance ('when you encounter an API inconsistency, unexpected behaviour, or have a suggestion'), but does not mention when not to use the tool or suggest alternatives. It is adequate but lacks explicit exclusions.

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

upload_attachmentA

Upload a reference file (image, PDF, or short video) to a task so the assigned worker can access it after claiming. Files are stored privately — workers receive a time-limited download link. Max 5 attachments per task. Task must be open or claimed. Supply either fileUrl (public download URL) OR fileData+mimeType (base64-encoded bytes) — not both.

ParametersJSON Schema
NameRequiredDescriptionDefault
taskIdYesThe task ID to attach the file to
filenameYesDisplay name for the attachment (e.g. "storefront_reference.jpg")
fileUrlNoA publicly accessible URL to the file (JPEG/PNG/WebP ≤8 MB, PDF ≤25 MB, MP4/WebM/MOV ≤30 MB). The server will download and re-upload it. Use this OR fileData, not both.
fileDataNoBase64-encoded file contents. Use instead of fileUrl for files that cannot be given a public URL (e.g. generated files, private data). Must be accompanied by mimeType.
mimeTypeNoMIME type of the file when using fileData (e.g. "image/jpeg", "application/pdf", "video/mp4"). Required when fileData is provided; ignored when fileUrl is used.

TDQS

A4.4/5.0
Behavior4/5

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

No annotations exist, so the description carries full burden. It discloses that files are stored privately, workers get time-limited download links, and the fileUrl parameter requires a public URL from which the server downloads. It does not cover error cases or authentication requirements, but the core behavior is well described.

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 4 sentences with no wasted words. Purpose, constraints, and parameter usage are presented upfront. Every sentence adds value.

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?

For a file upload tool with 5 parameters and no output schema, the description covers purpose, file type constraints, storage behavior, parameter choice, and task state requirement. It lacks details on error handling or response format, but this is acceptable given the tool's simplicity.

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 description's value is in summarizing the exclusive choice between fileUrl and fileData+mimeType, and the task state requirement. It adds meaningful context beyond the schema's individual parameter 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?

The description clearly states the tool uploads a reference file to a task, specifies allowed file types (image, PDF, short video), and explains worker access via time-limited download links. This distinguishes it from sibling tools which handle tasks, approvals, and account operations.

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?

The description provides explicit usage context: files are for assigned workers, tasks must be open or claimed, and there's a 5-attachment limit. It also clarifies the mutually exclusive fileUrl vs fileData+mimeType choice. It does not explicitly state when not to use, but the constraints are clear.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 16 tool updatesv0.2.10
    • First observedapprove_task
    • First observedcancel_task
    • First observedconfigure_webhook
    • First observedcreate_task
    • First observeddispute_task
    • First observedfund_account
    • First observedget_agent_metrics
    • First observedget_balance
    • First observedget_pending_reviews
    • First observedget_reputation
    • First observedget_task
    • First observedget_worker_profile
    • First observedlist_tasks
    • First observedrate_worker
    • First observedreport_platform_issue
    • First observedupload_attachment

TDQS

A4.2/5.0
Disambiguation5/5

Each tool targets a distinct action or resource. Overlapping concepts like get_balance vs get_agent_metrics and get_pending_reviews vs list_tasks are clearly disambiguated in descriptions, ensuring an agent can select correctly.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern using underscores (e.g., approve_task, get_balance, upload_attachment). The naming is predictable and uniform across the entire set.

Tool Count5/5

With 16 tools, the server is well-scoped for a task marketplace. Each tool serves a necessary function without redundancy, covering task lifecycle, account management, webhooks, and reporting.

Completeness5/5

The tool surface appears complete for an agent-centered marketplace: full task CRUD (create, cancel, approve, dispute, rate), account funding and metrics, worker vetting, webhook configuration, and attachment support. No obvious gaps.

Maintenance

ActivityActive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/getterdoneinc/getterdone-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server