Skip to main content
Glama

Preflight Agent Work Opportunity

opportunity_preflight

Agent work opportunity -> deterministic attempt, verify-first, or abandon preflight using caller-supplied cost and selection assumptions plus dated platform evidence. Returns break-even probability, expected surplus, hard gates, and source-linked evidence. No claim, bid, payment, or submission. Payment challenge and credentials are bound to GET https://agents.samedaydesk.com/work/opportunity-preflight, not mcp://. Retry the identical authorized arguments and credential.

Input Schema

NameRequiredDescriptionDefault
hoursYesEstimated human and agent work time in hours for one complete attempt.
slotsNoNumber of independently paid winner or worker slots.
platformNoOptional platform slug used to attach dated platform-health evidence when a matching card exists.
rewardUsdYesMaximum gross reward in USD if the opportunity is selected and paid.
acceptanceNoHow completion is accepted: deterministic proof, machine score, review deadline, discretionary judgment, or unknown.unknown
computeUsdNoExpected model, API, hosting, and compute spend in USD for one attempt.
settlementNoHow the reward is funded and paid: direct, escrow, platform balance, discretionary, unfunded, or unknown.unknown
agentAccessNoWhether the platform explicitly allows agent participation, is agent-only, mixes agents and humans, is human-only, or remains unknown.unknown
competitionNoKnown number of competing submissions or workers; use 0 when unknown.
hourlyCostUsdYesInternal opportunity cost per hour in USD.
reusableValueUsdNoConservative USD value of reusable code, research, distribution, or other assets created by the attempt.
mandatorySpendUsdNoNon-recoverable cash spend in USD required before the opportunity can settle.
selectionProbabilityPctNoCaller-supplied probability, from 0 to 100, of receiving the reward; omit to receive a verify-first decision.

Output Schema

NameRequiredDescriptionDefault
okYes
gatesYes
inputYes
productYes
versionYes
boundaryYes
decisionYes
economicsYes
platformEvidenceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": false,
      +  "properties": {
      +    "boundary": {
      +      "type": "string"
      +    },
      +    "decision": {
      +      "enum": [
      +        "attempt",
      +        "verify_first",
      +        "abandon"
      +      ],
      +      "type": "string"
      +    },
      +    "economics": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "breakEvenSelectionProbabilityPct": {
      +          "type": "number"
      +        },
      +        "equalEntryShareBoundary": {
      +          "type": "string"
      +        },
      +        "equalEntryShareReferencePct": {
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "executionCostUsd": {
      +          "type": "number"
      +        },
      +        "expectedRewardUsd": {
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "expectedSurplusUsd": {
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "mandatorySpendUsd": {
      +          "type": "number"
      +        },
      +        "probabilitySource": {
      +          "enum": [
      +            "missing",
      +            "caller_supplied"
      +          ],
      +          "type": "string"
      +        },
      +        "reusableValueUsd": {
      +          "type": "number"
      +        },
      +        "totalAtRiskUsd": {
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "executionCostUsd",
      +        "mandatorySpendUsd",
      +        "totalAtRiskUsd",
      +        "reusableValueUsd",
      +        "expectedRewardUsd",
      +        "expectedSurplusUsd",
      +        "breakEvenSelectionProbabilityPct",
      +        "equalEntryShareReferencePct",
      +        "probabilitySource",
      +        "equalEntryShareBoundary"
      +      ],
      +      "type": "object"
      +    },
      +    "gates": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "hardBlocks": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "requiredChecks": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "warnings": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "hardBlocks",
      +        "requiredChecks",
      +        "warnings"
      +      ],
      +      "type": "object"
      +    },
      +    "input": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "acceptance": {
      +          "enum": [
      +            "deterministic",
      +            "machine_scored",
      +            "timed_review",
      +            "discretionary",
      +            "unknown"
      +          ],
      +          "type": "string"
      +        },
      +        "agentAccess": {
      +          "enum": [
      +            "agent_allowed",
      +            "agent_only",
      +            "mixed",
      +            "human_only",
      +            "unknown"
      +          ],
      +          "type": "string"
      +        },
      +        "competition": {
      +          "type": "integer"
      +        },
      +        "computeUsd": {
      +          "type": "number"
      +        },
      +        "hourlyCostUsd": {
      +          "type": "number"
      +        },
      +        "hours": {
      +          "type": "number"
      +        },
      +        "mandatorySpendUsd": {
      +          "type": "number"
      +        },
      +        "platform": {
      +          "type": [
      +            "string",
      +            "null"
      +          ]
      +        },
      +        "reusableValueUsd": {
      +          "type": "number"
      +        },
      +        "rewardUsd": {
      +          "type": "number"
      +        },
      +        "selectionProbabilityPct": {
      +          "type": [
      +            "number",
      +            "null"
      +          ]
      +        },
      +        "settlement": {
      +          "enum": [
      +            "direct",
      +            "escrow",
      +            "platform_balance",
      +            "discretionary",
      +            "unfunded",
      +            "unknown"
      +          ],
      +          "type": "string"
      +        },
      +        "slots": {
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "platform",
      +        "rewardUsd",
      +        "hours",
      +        "hourlyCostUsd",
      +        "computeUsd",
      +        "mandatorySpendUsd",
      +        "reusableValueUsd",
      +        "selectionProbabilityPct",
      +        "competition",
      +        "slots",
      +        "agentAccess",
      +        "acceptance",
      +        "settlement"
      +      ],
      +      "type": "object"
      +    },
      +    "ok": {
      +      "const": true,
      +      "type": "boolean"
      +    },
      +    "platformEvidence": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": false,
      +          "properties": {
      +            "confidence": {
      +              "type": "string"
      +            },
      +            "evidence": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "confidence": {
      +                    "type": "string"
      +                  },
      +                  "factClass": {
      +                    "type": "string"
      +                  },
      +                  "failedAt": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "observedAt": {
      +                    "type": "string"
      +                  },
      +                  "sourceUrl": {
      +                    "type": "string"
      +                  },
      +                  "stageReached": {
      +                    "type": "string"
      +                  },
      +                  "summary": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "factClass",
      +                  "summary",
      +                  "sourceUrl",
      +                  "observedAt",
      +                  "stageReached",
      +                  "failedAt",
      +                  "confidence"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "freshUntil": {
      +              "type": "string"
      +            },
      +            "freshness": {
      +              "type": "string"
      +            },
      +            "healthCategory": {
      +              "type": "string"
      +            },
      +            "observedAt": {
      +              "type": "string"
      +            },
      +            "platformId": {
      +              "type": "string"
      +            },
      +            "platformName": {
      +              "type": "string"
      +            },
      +            "rightsClass": {
      +              "type": "string"
      +            },
      +            "sampleCount": {
      +              "type": "integer"
      +            },
      +            "settlementMechanism": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "unknowns": {
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "platformId",
      +            "platformName",
      +            "healthCategory",
      +            "confidence",
      +            "freshness",
      +            "observedAt",
      +            "freshUntil",
      +            "sampleCount",
      +            "settlementMechanism",
      +            "rightsClass",
      +            "evidence",
      +            "unknowns"
      +          ],
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "product": {
      +      "const": "samedaydesk-opportunity-preflight",
      +      "type": "string"
      +    },
      +    "version": {
      +      "const": "1.0.0",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "ok",
      +    "product",
      +    "version",
      +    "decision",
      +    "input",
      +    "economics",
      +    "gates",
      +    "platformEvidence",
      +    "boundary"
      +  ],
      +  "type": "object"
      +}
  2. Changed13 schema fields changed
    • addedInput schema / properties / acceptance / description
      Added value: +"How completion is accepted: deterministic proof, machine score, review deadline, discretionary judgment, or unknown."
    • addedInput schema / properties / agentAccess / description
      Added value: +"Whether the platform explicitly allows agent participation, is agent-only, mixes agents and humans, is human-only, or remains unknown."
    • addedInput schema / properties / competition / description
      Added value: +"Known number of competing submissions or workers; use 0 when unknown."
    • addedInput schema / properties / computeUsd / description
      Added value: +"Expected model, API, hosting, and compute spend in USD for one attempt."
    • addedInput schema / properties / hourlyCostUsd / description
      Added value: +"Internal opportunity cost per hour in USD."
    • addedInput schema / properties / hours / description
      Added value: +"Estimated human and agent work time in hours for one complete attempt."
    • addedInput schema / properties / mandatorySpendUsd / description
      Added value: +"Non-recoverable cash spend in USD required before the opportunity can settle."
    • addedInput schema / properties / platform / description
      Added value: +"Optional platform slug used to attach dated platform-health evidence when a matching card exists."
    • addedInput schema / properties / reusableValueUsd / description
      Added value: +"Conservative USD value of reusable code, research, distribution, or other assets created by the attempt."
    • addedInput schema / properties / rewardUsd / description
      Added value: +"Maximum gross reward in USD if the opportunity is selected and paid."
    • addedInput schema / properties / selectionProbabilityPct / description
      Added value: +"Caller-supplied probability, from 0 to 100, of receiving the reward; omit to receive a verify-first decision."
    • addedInput schema / properties / settlement / description
      Added value: +"How the reward is funded and paid: direct, escrow, platform balance, discretionary, unfunded, or unknown."
    • addedInput schema / properties / slots / description
      Added value: +"Number of independently paid winner or worker slots."
  3. Added

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does so well: it discloses the absence of side effects ('No claim, bid, payment, or submission'), the auth model (payment challenge and credentials bound to the GET URL, not mcp://), and retry semantics ('Retry the identical authorized arguments and credential'). It stops short of describing rate limits or evidence freshness beyond 'dated'.

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?

Three sentences are front-loaded with the purpose and outcome set, with no redundant restatement of the title. The arrow notation and dense jargon are slightly awkward, and the credential-binding sentence could be tighter, but nothing is wasted.

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 13-parameter decision tool with an output schema and no annotations, the description covers the essential behavioral facts an agent needs: no mutation, the decision outputs, auth binding, and retry rule. It is nearly complete, missing only guidance on input trust sources.

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 all 13 parameters are already documented with units, ranges, defaults, and enums. The description only gestures at 'cost and selection assumptions' generally and adds no syntax or interpretation guidance beyond the schema, so the baseline of 3 applies.

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 states a specific verb and resource ('preflight' an 'agent work opportunity') and names the three decision outcomes (deterministic attempt, verify-first, abandon). It partially distinguishes itself from payment tools by stating 'No claim, bid, payment, or submission,' but does not explicitly differentiate from the adjacent payment_offer_preflight sibling.

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: it consumes 'caller-supplied cost and selection assumptions plus dated platform evidence' and the schema notes that omitting selectionProbabilityPct yields a verify-first decision. However, there is no explicit when-to-use versus when-to-skip guidance or a named alternative, leaving routing to inference.

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.