Skip to main content
Glama

Check work you received

check_received_work

Privately check a received delivery against a template, plain-word requirements, explicit machine checks, a saved contract, or a saved report_token that preserves the saved criteria structure and origin. By default nothing is stored. Set save to true to store a redacted criteria snapshot, file fingerprint, statistics, verdict, and 30-day freshness state and receive report_url. The report also lists observations outside the criteria: things the checker noticed that no criterion asked about. They never change the verdict; each has a suggested_criterion sentence you can add to the next check. Pasting suggested_criterion sentences into need verbatim turns them into enforceable checks. Anonymous saves also return a one-time delete_credential. File content, filenames, and verbatim source_context are never stored. Source-derived glossary strings are removed and must be supplied again for a rerun.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mimeNoOptional media type.
needNoAcceptance criteria in plain words.
saveNoOpt in to a shareable, re-runnable report.
contentYesDelivery content as UTF-8 text or base64. The whole JSON-RPC request must be at most 4.4 MB on the hosted server, so a base64 file can be up to 3 MiB decoded; larger uploads are rejected with HTTP 413.
criteriaNoExplicit machine checks returned by an earlier check.
encodingNoutf8
filenameYesFilename including its extension.
contract_idNoAccepted bounty id from your saved contract library; requires Bearer authentication on the MCP connection.
template_idNo
report_tokenNoReuse the saved criteria structure and origin. Supply source_context again for source-dependent checks.
source_contextNoSource URLs, glossary, rubric, or reference sample. Required by rubric agreement and saved glossary reruns.

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations present, the description fully carries the behavioral transparency burden and does so excellently. It discloses default non-storage, what happens when save is true, the report contents, the presence of observations with suggested_criterion, the one-time delete_credential, and strong privacy guarantees (file content, filenames, and verbatim source_context never stored).

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?

Although the description is lengthy, every sentence contributes unique behavioral or usage information. It front-loads the primary purpose, succinctly explains the save flow, report contents, observations, and privacy, and avoids redundancy with schema definitions. There is no filler or repetition.

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 complex tool with 11 parameters and no output schema, the description is impressive. It covers the main behavior, save semantics, report contents, and privacy. It could be more complete by explicitly describing the full response structure or giving composite use cases for the oneOf branches, but it already covers the essential user-facing aspects.

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 schema covers 82% of parameters, so the baseline is 3. The description goes beyond schema by explaining the functional semantics of key parameters: how report_token preserves criteria structure, how source_context is needed for reruns, and how suggested_criterion sentences can be pasted into 'need' verbatim. This adds meaningful value beyond the schema's field-level 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's purpose: 'Privately check a received delivery against a template, plain-word requirements, explicit machine checks, a saved contract, or a saved report_token.' It uses the specific verb 'check' with resource 'received delivery' and names the criteria sources, distinguishing itself from sibling tools like submission_post or source_report.

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 usage by explaining what the tool checks against (templates, plain-word needs, criteria, contracts, report tokens), but it does not explicitly state when to use it versus alternatives or include exclusion criteria. This provides clear context without formal alternatives, aligning with a 4 rather than a 5.

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.

TDQS

B3.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes, but a few could be confused: 'needs_intake' and 'request_source' both accept natural language requests, and 'bounty_self_gate' vs 'check_received_work' both involve checking work against criteria. Overall, detailed descriptions help differentiate them.

Naming Consistency3/5

Naming is inconsistent: some tools use verb_noun ('get_source', 'list_sources') while others use noun_verb ('bounty_get', 'capability_call'). There are also oddities like 'agent_register' and 'bounty_counter'. The mixed conventions are still readable but not predictable.

Tool Count2/5

With 26 tools, the server exceeds the recommended 3-15 range and feels heavy. Many tools are specific, but the sheer number may overwhelm agents, and some could potentially be consolidated (e.g., subscription tools).

Completeness3/5

The domain is broad (bounties, capabilities, sources) and most core workflows are covered, but there are notable gaps: no explicit tool to accept a bounty submission, no unsubscribe or management for subscriptions, and no way to remove or deprecate a capability. These missing lifecycle operations could cause agent workarounds.

Resources