Skip to main content
Glama

Server Details

API for AI agents to delegate tasks to real humans.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.6/5 across 3 of 3 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clear, distinct purpose: submit_task initiates a task, get_task_status polls for results, and review_task handles approval or dispute. There is no functional overlap.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (submit_task, get_task_status, review_task) using snake_case, making them predictable and easy to understand.

Tool Count5/5

Three tools is the minimal set needed for a complete task lifecycle (submit, poll, review). Adding more would likely introduce redundancy.

Completeness4/5

The tools cover the core workflow of submission, status polling, and review. A missing cancel or delete operation is a minor gap, but auto-approval mitigates it.

Available Tools

3 tools
get_task_statusA
Read-onlyIdempotent
Inspect

Poll the status and retrieve the result of a previously submitted task. Returns the current status (pending, in_progress, pending_review, completed, disputed), the result payload, and any output URLs (video, screenshot). Use this in a polling loop after submit_task if no callback_url was provided.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYesThe task ID returned when the task was submitted

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultNoTask result payload when completed
statusYes
task_idYes
operatorNoName of the operator who completed the task
output_urlNoURL to download output file (video, screenshot, etc.)
completed_atNoISO timestamp of completion
Behavior4/5

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

Annotations declare readOnlyHint, idempotentHint, destructiveHint. Description adds specific statuses and output types (result payload, URLs), enhancing transparency without contradicting annotations.

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 concise sentences covering purpose, returns, and usage context with no wasted words.

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 needed info: purpose, return values, usage pattern, and alternative callback; output schema handles return structure.

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?

Parameter is fully described in schema; description adds no extra meaning beyond schema coverage.

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 it polls status and retrieves result of a previously submitted task, listing possible statuses and return values. Distinguishes from sibling submit_task by specifying use after submission, providing clear differentiation.

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 instructs to use in a polling loop after submit_task if no callback_url, giving concrete context and alternatives.

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

review_taskA
Idempotent
Inspect

Optional. Approve or dispute a task that is in pending_review status. Use this after get_task_status reports the operator has completed the work. Approving releases the operator payout. Disputing requires a reason and a description of what is needed for acceptance; the operator is then allowed to resubmit. If you never call review_task, tasks are auto-approved after the review window expires.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_idYesThe task ID returned by submit_task.
decisionYesapprove to accept the result and release payment; dispute to reject it and request a resubmission.
dispute_reasonNoRequired when decision = 'dispute'. What went wrong with the submission.
what_is_neededNoRequired when decision = 'dispute'. What the operator must do for the submission to be accepted.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYes
successYes
Behavior4/5

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

Annotations indicate idempotentHint=true and destructiveHint=false, but the description adds important context: approving releases payout, disputing requires reason/description, and auto-approval behavior. This goes beyond the annotations and clarifies side effects.

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?

The description is a single paragraph that covers all key points without unnecessary words. It could be slightly more structured with bullet points, but it remains clear 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?

Given the tool has 4 parameters and an output schema, the description fully covers the workflow: prerequisites, decision options, required fields for dispute, and auto-approval fallback. No gaps in context for an agent to invoke 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%, so baseline is 3. The description reinforces that dispute_reason and what_is_needed are required for dispute decision, but does not add new meaning beyond what the schema describes.

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 approves or disputes a task in 'pending_review' status, distinguishing it from sibling tools get_task_status and submit_task by specifying the exact workflow stage and action.

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 explains when to use the tool (after get_task_status confirms completion) and the consequences of each decision, including auto-approval if not called. It implicitly suggests not to use if task is not in pending_review, but lacks explicit exclusion criteria.

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

submit_taskAInspect

Submit an account verification task to a real human operator. Use this when your agent is blocked on something only a real person can complete — a KYC check, a platform sign-in or 2FA prompt, a CAPTCHA, an identity confirmation, or any verification step that requires a human. The task is charged automatically via Stripe ($39). A vetted operator claims it, performs the verification on real hardware, and returns the result (with optional screenshot) to your callback_url or via get_task_status. Typical completion: 30 minutes.

ParametersJSON Schema
NameRequiredDescriptionDefault
task_typeYesaccount_verification — a real human verifies an account, KYC check, sign-in, or CAPTCHA on real hardware and returns structured proof ($39).
callback_urlNoWebhook URL to receive a POST request with the task result when completed. Recommended for async agent workflows. If omitted, poll get_task_status instead.
instructionsYesStructured input for account_verification. Required fields: platform (e.g. 'gmail', 'stripe'), url (where to perform the verification), credentials (login info or how to obtain the code), what_to_verify (what the operator must confirm). Optional: screenshot_required (boolean, default true), additional_notes.
deadline_minutesYesTime in minutes the operator has to complete the verification after claiming it. Minimum 20. Recommended: 30.
payment_credentialNoStripe Link Agent Wallet Single-use Payment Token (SPT) for fully autonomous agent payments with no human intervention required. Omit if the developer account has a saved card on file.

Output Schema

ParametersJSON Schema
NameRequiredDescription
statusYesCurrent task status
messageNoConfirmation or error message
task_idYesUnique identifier for the submitted task
estimated_completionNoEstimated completion time based on deadline_minutes
Behavior5/5

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

Beyond annotations (which indicate a non-read-only, open-world operation), the description adds critical behavioral traits: the task is charged $39 via Stripe, performed by a real human operator, typical completion time of 30 minutes, and result delivery via callback_url or get_task_status. These details help the agent understand cost, latency, and dependency.

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 at about 100 words, front-loaded with the core action and usage context. Every sentence serves a purpose: purpose, when to use, cost, process, and result retrieval. No redundant or vague statements.

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 the tool's complexity (nested objects, external payment, human workflow) and the presence of an output schema (so return values don't need description), the description is complete. It covers input requirements, asynchronous behavior, cost, and how to obtain results, leaving no critical gaps.

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

Parameters5/5

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

Even though the input schema has 100% description coverage, the description enriches parameter understanding. It explains when to use callback_url versus polling, clarifies payment_credential as a 'Single-use Payment Token for fully autonomous agent payments', and outlines the expected structure of instructions (e.g., required fields like platform, url, credentials, what_to_verify).

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 ('Submit an account verification task to a real human operator') and the resource ('account verification task'). It distinguishes from siblings by explaining that the result can be retrieved via get_task_status, implying that submit_task initiates the process while get_task_status checks completion.

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 specifies when to use the tool: 'when your agent is blocked on something only a real person can complete' and lists concrete examples (KYC check, sign-in, CAPTCHA). It also implies when not to use it (if no human intervention is needed), contrasting with the sibling tools get_task_status and review_task.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources