Skip to main content
Glama

Server Details

Qualified human outcomes for AI agents: attorney review of SaaS Terms/Privacy, on-site checks.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 9 tools

Disambiguation3/5

The set includes both a general discovery tool (find_human_function) and specialized tools (check_saas_legal_review, request_execution) that overlap in purpose, and accept_human_function_offer vs confirm_execution handle similar acceptance steps for different workflows. However, descriptions clearly delineate when each applies, reducing misselection risk.

Naming Consistency4/5

Names are almost all consistent snake_case verb_noun (e.g., accept_human_function_offer, answer_clarification, cancel_execution). The outlier offer_card_event is noun-noun and flagged as UI-only, a minor deviation.

Tool Count5/5

9 tools cover the full lifecycle from discovery to request, quote, confirmation, payment, cancellation, and status retrieval. The count is well within the ideal 3-15 range for this marketplace domain.

Completeness4/5

Core workflows for discovering human functions, requesting on-site tasks, attorney review offers, and managing requests are covered. Minor gaps exist (e.g., no tool to list all requests or browse offers), but these are not critical for typical agent workflows.

Available Tools

9 tools
accept_human_function_offerRecord the user's explicit acceptance of a HumanFn offerA
Idempotent
Inspect

Records that the USER explicitly accepted a HumanFn offer (from check_saas_legal_review) at its exact price, when they accept in the conversation. Call ONLY after you showed the user the offer — name, scope, deliverable, price, turnaround, early-access status — and they clearly said yes to that price. Pass their words verbatim as user_confirmation. Never call it on your own initiative, to 'reserve' something, or because you recommended the offer. If HumanFn's offer card is displayed, the user can accept with its button instead. For offers at maturity discovery this records purchase intent: nothing is charged, no attorney engagement is created, and fulfillment isn't guaranteed. The result includes a message for the user.

ParametersJSON Schema
NameRequiredDescriptionDefault
offer_idYesThe offer ID returned by check_saas_legal_review (off_…).
contact_emailNoOptional. Only with the user's permission: lets HumanFn contact them if it can arrange the service.
user_confirmationYesThe user's own words accepting the offer, verbatim (e.g. 'Yes, I accept the review at $499').
accepted_price_usdYesThe exact price the user accepted, as shown in the offer (e.g. 499). Must match the offer.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations declare the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=true), and the description adds substantive consequences beyond them: at maturity discovery nothing is charged, no attorney engagement is created, fulfillment isn't guaranteed, and a user-facing message is returned. That is exactly the kind of side-effect disclosure annotations cannot carry.

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?

Front-loads the core action and the hard precondition before the negative constraints, and every sentence carries a rule. Slightly long and a few clauses restate the schema's verbatim/price requirements, but there is little true waste for a high-risk consent-recording tool.

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 non-idempotent-looking write that records user consent, the description covers trigger conditions, anti-patterns, the alternate UI path, the financial/legal meaning at maturity discovery, and that the result contains a user message. No output schema exists, so nothing else is 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 description coverage is 100%, so the schema already defines offer_id format, accepted_price_usd matching the offer, and verbatim user_confirmation. The description only reinforces ('Pass their words verbatim', 'at its exact price') without adding new syntax or constraints, so the baseline 3 applies.

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?

Specific verb ('Records') + resource ('USER's explicit acceptance of a HumanFn offer') with the offering sibling named (check_saas_legal_review). An agent can distinguish this from confirm_execution or offer_card_event without opening a schema.

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?

Explicit preconditions ('Call ONLY after you showed the user the offer — name, scope, deliverable, price, turnaround, early-access status — and they clearly said yes') plus explicit exclusions ('Never call it on your own initiative, to reserve, or because you recommended it') and the alternative path (offer card button).

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

answer_clarificationAnswer HumanFn's clarifying questionAInspect

Use when a request is in phase needs_clarification. Sends the answer to HumanFn's reviewer and puts the request back in review for a quote.

ParametersJSON Schema
NameRequiredDescriptionDefault
answerYesThe answer to the reviewer's question, from the customer.
request_idYesThe request ID returned by request_execution (req_…).
access_tokenYesThe access token returned with the request (rqt_…); it authorizes access to this request.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare this is a non-readonly, non-destructive, non-idempotent, open-world mutation, so the safety bar is lowered. The description adds genuine context beyond that: it routes the answer to HumanFn's reviewer and moves the request back into review for a quote, disclosing the state transition. It does not mention auth requirements, though the schema documents the access_token.

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 waste; the trigger condition is front-loaded followed by the effect, which is the right order for an agent deciding whether to invoke.

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 3-parameter state-transition tool with full schema coverage and no output schema, the description covers the precondition and the resulting state change well. Nothing essential is missing, though error handling for an out-of-phase request is unspecified.

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 request_id, access_token, and answer are all documented in the schema itself; baseline 3 applies. The description adds no syntax, format, or constraint detail beyond what the schema already provides.

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?

States a specific verb (sends the answer) and resource (HumanFn's clarifying question / the request), plus the effect of moving the request back to review. It is clear on its own, but does not explicitly distinguish itself from siblings like request_execution or get_request, which is why it falls short of a 5.

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

Usage Guidelines4/5

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

"Use when a request is in phase needs_clarification" gives an explicit, actionable prerequisite that an agent can check before calling. No alternative tools or when-not-to-use conditions are named, so it stops short of 5.

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

cancel_executionCancel a request or jobA
DestructiveIdempotent
Inspect

Before payment: withdraws the request (no charge). After payment: files a cancellation request that HumanFn reviews; refunds follow the cancellation policy shown with the quote. Returns the resulting phase.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYesThe request ID returned by request_execution (req_…).
access_tokenYesThe access token returned with the request (rqt_…); it authorizes access to this request.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true and openWorldHint=true, but the description adds real consequence detail: no charge before payment, human review after payment, refunds governed by the quote's policy. It omits any note on repeated-call behavior, which annotations cover.

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 tight clauses, front-loaded with the pre-payment case, and the return value is noted in a final short sentence. No filler.

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 two-parameter mutation with no output schema, the description covers the main behavioral questions and states what is returned (the resulting phase). Minor gaps remain around what the phase values are, but the core is 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 description coverage is 100%, so request_id and access_token are fully documented in the schema. The description adds no format or semantic detail beyond that, so baseline 3 applies.

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?

States a specific verb and resource ("withdraws the request" / "files a cancellation request") and describes the two phase-dependent modes of operation. An agent can distinguish this from siblings like get_request or request_execution without opening either schema.

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?

Gives clear conditional usage: use before payment for a clean withdrawal, after payment to file a reviewed cancellation. It does not explicitly name an alternative tool or state when not to use it, so it falls short of a 5.

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

confirm_executionConfirm an approved quote: get the payment link (execution confirmation)A
DestructiveIdempotent
Inspect

Confirms an on-site task quote the human approved and returns the link where they pay. Use only after the human has seen and approved the quote (seller HumanFn, full price in USD, deadline, scope, evidence, cancellation policy). Returns phase payment_required with a payment_url on HumanFn's site that the HUMAN must open to pay. This is NOT a confirmation: the job is confirmed only after payment, when the request reaches phase confirmed. Safe to call again; it never charges by itself. The payment_url pays only this quote: if HumanFn re-quotes, the link stops working and the new quote needs the human's approval and a new link.

ParametersJSON Schema
NameRequiredDescriptionDefault
quote_idYesThe ID of the quote the human approved (quo_…), as shown in the request's quote.
request_idYesThe request ID returned by request_execution (req_…).
access_tokenYesThe access token returned with the request (rqt_…); it authorizes access to this request.

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare idempotentHint and destructiveHint, but the description adds real context beyond them: it says the call never charges by itself, is safe to call again, returns phase payment_required, and that the payment_url becomes invalid after a re-quote. That last point materially explains the practical consequence behind destructiveHint.

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?

Front-loaded with the action and result, then the precondition, then the caveats. The parenthetical listing quote contents ('full price in USD, deadline, scope, evidence, cancellation policy') is slightly list-heavy but each sentence carries a distinct obligation or warning.

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?

There is no output schema, so the description compensates by naming the returned phase and payment_url, and by explaining the human-payment step and link expiration. For a payment-flow tool with only three required params, nothing an agent needs in order to invoke and interpret it is missing.

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% and all three parameters carry patterns and descriptions, so the schema does the heavy lifting. The description adds no format or origin detail for quote_id, request_id, or access_token beyond what the schema already states, leaving this at the baseline.

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?

States a specific verb and resource ('Confirms an on-site task quote the human approved') and names the concrete output ('returns the link where they pay'). It is clearly distinguishable from siblings like request_execution and cancel_execution because it names the approval precondition and the payment handoff.

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?

Gives an explicit precondition ('Use only after the human has seen and approved the quote') and a when-not clarification ('This is NOT a confirmation: the job is confirmed only after payment'). It does not explicitly name the sibling to use instead when approval has not happened, so it stops just short of a 5.

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

find_human_functionFind a qualified human outcome for a step AI shouldn't finish aloneAInspect

Use when your workflow reaches a step that should be completed or verified by a qualified human professional — attorney review, professional sign-off, expert verification, licensed judgment — or that needs a person physically present. Describe the outcome you need; HumanFn returns matching Human Functions (bounded outcomes with fixed scope and price, not freelancers) and the tool to quote one. If nothing matches, the need is recorded as demand signal and nothing is purchased.

ParametersJSON Schema
NameRequiredDescriptionDefault
deadlineNoWhen the user needs it, e.g. 'before launch next Friday' or an ISO 8601 date.
objectiveYesThe outcome you need from a qualified human, in plain words, e.g. 'Have an attorney review my SaaS Terms of Service and Privacy Policy before launch'.
jurisdictionNoWhere it applies, e.g. 'United States', 'California', 'EU'.
workflow_contextNoOne or two sentences on where you are in the workflow and why a human is needed (e.g. 'preparing a Next.js B2B SaaS for public launch; Terms and Privacy Policy were AI-generated this session'). No confidential details, no document text.
approximate_budget_usdNoRoughly what the user expects to spend, in US dollars, if known.
professional_credentialNoQualification the work needs, if any, e.g. 'licensed attorney', 'CPA', 'structural engineer'.

TDQS

A4.1/5.0
Behavior4/5

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

Beyond the annotations, it discloses real behavioral traits: results are bounded fixed-scope/fixed-price outcomes rather than freelancers, and on a miss 'the need is recorded as demand signal and nothing is purchased' — telling the agent no side-effect purchase occurs. This is meaningful context that the readOnlyHint=false annotation alone does not convey.

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 compact sentences, front-loaded with the usage trigger before the mechanics. Dense but every clause carries information; minor nesting of clauses slightly reduces scanability.

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 6-param lookup with no output schema, it covers what comes back (matching Human Functions plus the quoting tool) and the failure path (demand-signal recording, no purchase). Return-value detail is thin, but the essentials for calling it correctly are present.

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 documents all six parameters with examples. The description adds only the framing 'Describe the outcome you need,' which maps loosely to the objective field but adds no syntax or format detail beyond the schema. Baseline 3 applies.

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 a specific verb (find) and resource (qualified human outcome / Human Function) and immediately clarifies what a Human Function is: 'bounded outcomes with fixed scope and price, not freelancers.' It also names its downstream sibling ('the tool to quote one'), so an agent can place it in the workflow without opening any schema.

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 opening clause gives an explicit trigger condition — use when a step 'should be completed or verified by a qualified human professional' — with concrete examples (attorney review, sign-off, physical presence). It lacks an explicit exclusion vs. siblings like request_execution or check_saas_legal_review, but the trigger context is unambiguous.

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

get_requestGet request status, quote and resultA
Read-onlyIdempotent
Inspect

Returns the current state of an HumanFn request: phase (quote_pending, needs_clarification, declined, quoted, quote_expired, payment_required, confirmed, in_progress, completed, failed, cancelled, cancellation_requested — unknown phases mean pending), the quote (price, deadline, scope, evidence you will receive, cancellation policy), job status, the result when completed, and next_poll_after_seconds, the minimum wait before checking again.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYesThe request ID returned by request_execution (req_…).
access_tokenYesThe access token returned with the request (rqt_…); it authorizes access to this request.

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint, idempotentHint, destructiveHint false), so the bar is lower. The description still adds real value beyond them: 'unknown phases mean pending' resolves ambiguity in the return payload, and next_poll_after_seconds establishes a minimum re-poll interval that prevents hammering the API.

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?

One sentence, front-loaded with the return-shape summary then the detail, with zero filler. The dense phase enumeration and return fields are all load-bearing for an agent parsing the response.

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?

With no output schema, the description carries the return-value burden and does so thoroughly — every phase value, the quote contents, job status, result, and poll interval are named. Combined with a fully documented 2-param schema, an agent has everything needed to call and interpret it.

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 request_id and access_token are already fully documented with patterns and provenance. The description adds nothing about parameter meaning or format; baseline 3 applies when the schema does all the work.

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?

States a specific verb and resource ('Returns the current state of an HumanFn request') and enumerates exactly what the payload contains (phase, quote, job status, result, poll interval). It does not, however, explicitly distinguish itself from siblings like confirm_execution or accept_human_function_offer, so an agent must infer the boundary from context.

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 rather than stated: the mention of next_poll_after_seconds signals this is a polling tool, and the phase vocabulary hints at state-machine steps. But there is no explicit 'use this when X, use sibling Y when Z' guidance or precondition statement.

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

offer_card_eventOffer card event (UI only)A
Idempotent
Inspect

Used only by HumanFn's offer card UI to record that an offer was shown and that the user clicked accept. Never call it yourself.

ParametersJSON Schema
NameRequiredDescriptionDefault
eventYesWhat happened on the card: shown, or the accept button was clicked.
offer_idYesThe offer ID returned by check_saas_legal_review (off_…).
card_tokenYesToken issued to the offer card with the offer (oct_…).
contact_emailNoEmail the user typed into the card, if any.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), and the description adds the critical non-structural fact that only the UI invokes this, not the agent. It does not state what happens on duplicate events or errors, but idempotency is already declared in 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 short sentences, front-loaded with scope and ending on the strongest constraint ('Never call it yourself'). Nothing redundant or padded.

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?

With no output schema needed (it is a fire-and-forget event recorder), a fully documented schema, and clear annotations, the description supplies what an agent needs. It could say more about error or duplicate-event behavior for a caller, but for an agent that should never call it, that gap is minor.

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%, and every parameter (event enum, offer_id, card_token, contact_email) is fully described in the schema with patterns and provenance. The description adds no parameter meaning beyond that, so the baseline 3 applies.

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 a specific verb and resource: recording an offer card 'shown' or 'accepted' event, and explicitly scopes it to HumanFn's offer card UI. It distinguishes itself cleanly from siblings such as accept_human_function_offer by declaring that the UI, not the agent, is the caller.

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?

It gives an unambiguous when-not rule ('Never call it yourself') plus the only valid caller ('Used only by HumanFn's offer card UI'). An agent reading this knows immediately to route accept actions through accept_human_function_offer instead of this tool.

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

request_executionRequest an on-site task at an address (execution request)A
Idempotent
Inspect

Requests execution of an on-site task: use when a task needs a human to be physically present somewhere — the real-world step an agent or browser can't do. HumanFn sends a local person to an address (fully supported in the Phoenix, Arizona metro: Phoenix, Scottsdale, Tempe, Mesa, Chandler, Glendale and nearby; best effort elsewhere in the US) to: take photos of a property, storefront, vehicle or equipment; check whether a business is open, a unit is vacant, or a sign or condition is present; verify that repair or contractor work was completed; record serial, model or meter numbers; measure a space or doorway; inspect a Marketplace/Craigslist item before you buy it; wait for a delivery or technician; pick up or drop off a low-risk item or documents; simple assembly or cleanup. Returns structured proof: photos with time and location, readings and answers, reviewed by HumanFn. Creates a request for a QUOTE. Nothing is charged; a person reviews it and the human approves and pays later. The Phoenix, Arizona metro area is fully supported. Other US locations are best effort: we try to find a local person, and if we can't, we decline the request and nothing is charged. Requests outside the US are declined. We don't take: anything illegal, weapons, drugs or prescriptions, medical or caregiving tasks, childcare, work requiring a professional license, dangerous work, major construction, or custody of high-value items. Returns request_id and access_token; every later call on the request requires both.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesFull street address. The Phoenix, AZ metro is fully supported; other US locations are best effort; locations outside the US are declined.
objectiveYesWhat must be true or be captured when the job is done. Be specific: what to photograph, measure, check, deliver.
complete_byNoDeadline for the outcome. ISO 8601 with offset (Phoenix is UTC-07:00).
access_notesNoGate codes, who to ask for, where to park, hours.
contact_nameNoThe customer's name, for the quote.
contact_emailYesThe human customer's email. Quotes and status links are sent here.
contact_phoneNoThe customer's phone number, for urgent questions about the task.
max_budget_usdNoThe most the customer is willing to pay, in US dollars. Quotes above it are flagged.
client_request_idNoYour idempotency key. Retrying with the same key returns the same request instead of creating a duplicate.

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, idempotentHint=true, openWorldHint=true) by disclosing the quote-only/no-charge model, human review and later approval/payment, regional coverage and decline behavior, prohibited categories, and the returned request_id + access_token required for later calls. This is exactly the behavioral context an agent needs before invoking.

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?

Purpose is front-loaded and the sentence earns its detail, but the long single-sentence job-type enumeration and the duplicated Phoenix-metro statement (also in the address field) add bulk. Efficient overall, slightly over-packed.

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?

With no output schema, the description fills the gap by explaining what is returned (request_id and access_token) and how later calls must use it. Combined with coverage of pricing model, geography, and exclusions, an agent has everything needed to call this 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 description coverage is 100%, so all nine parameters are already documented in the schema; the description mainly restates geography already present in the address field and adds the access-token follow-up requirement. Baseline 3 is appropriate when the schema carries parameter semantics.

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?

States a specific verb and resource ('requests execution of an on-site task') and immediately scopes it as the physical real-world step an agent or browser cannot perform. The rich enumeration of jobs makes the tool's remit unmistakable and distinguishes it from pure digital siblings like find_human_function or get_request.

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?

Gives strong when-to-use context ('use when a task needs a human to be physically present') plus explicit when-not exclusions (illegal, weapons, drugs, medical, childcare, licensed/dangerous work) and geographic limits (Phoenix fully supported, US best effort, non-US declined). It does not name a sibling alternative to use instead, which is the only gap.

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.

  1. 9 tool updates
    • Changedaccept_human_function_offer1 field changed
      • addedInput schema / properties / offer_id / description
        Added value: +"The offer ID returned by check_saas_legal_review (off_…)."
    • Changedanswer_clarification3 fields changed
      • addedInput schema / properties / access_token / description
        Added value: +"The access token returned with the request (rqt_…); it authorizes access to this request."
      • addedInput schema / properties / answer / description
        Added value: +"The answer to the reviewer's question, from the customer."
      • addedInput schema / properties / request_id / description
        Added value: +"The request ID returned by request_execution (req_…)."
    • Changedcancel_execution2 fields changed
      • addedInput schema / properties / access_token / description
        Added value: +"The access token returned with the request (rqt_…); it authorizes access to this request."
      • addedInput schema / properties / request_id / description
        Added value: +"The request ID returned by request_execution (req_…)."
    • Changedcheck_saas_legal_review3 fields changed
      • addedInput schema / properties / approximate_combined_word_count / description
        Added value: +"Approximate total words across the Terms of Service and Privacy Policy."
      • addedInput schema / properties / customers / description
        Added value: +"Who the product sells to: businesses, consumers, or both."
      • addedInput schema / properties / launch_status / description
        Added value: +"Where the product is: exploring an idea, building, preparing a public launch, or already live."
    • Changedconfirm_execution3 fields changed
      • addedInput schema / properties / access_token / description
        Added value: +"The access token returned with the request (rqt_…); it authorizes access to this request."
      • addedInput schema / properties / quote_id / description
        Added value: +"The ID of the quote the human approved (quo_…), as shown in the request's quote."
      • addedInput schema / properties / request_id / description
        Added value: +"The request ID returned by request_execution (req_…)."
    • Changedfind_human_function1 field changed
      • addedInput schema / properties / approximate_budget_usd / description
        Added value: +"Roughly what the user expects to spend, in US dollars, if known."
    • Changedget_request2 fields changed
      • addedInput schema / properties / access_token / description
        Added value: +"The access token returned with the request (rqt_…); it authorizes access to this request."
      • addedInput schema / properties / request_id / description
        Added value: +"The request ID returned by request_execution (req_…)."
    • Changedoffer_card_event4 fields changed
      • addedInput schema / properties / card_token / description
        Added value: +"Token issued to the offer card with the offer (oct_…)."
      • addedInput schema / properties / contact_email / description
        Added value: +"Email the user typed into the card, if any."
      • addedInput schema / properties / event / description
        Added value: +"What happened on the card: shown, or the accept button was clicked."
      • addedInput schema / properties / offer_id / description
        Added value: +"The offer ID returned by check_saas_legal_review (off_…)."
    • Changedrequest_execution3 fields changed
      • addedInput schema / properties / contact_name / description
        Added value: +"The customer's name, for the quote."
      • addedInput schema / properties / contact_phone / description
        Added value: +"The customer's phone number, for urgent questions about the task."
      • addedInput schema / properties / max_budget_usd / description
        Added value: +"The most the customer is willing to pay, in US dollars. Quotes above it are flagged."
  2. 4 tool updates
    • Addedaccept_human_function_offer
    • Addedcheck_saas_legal_review
    • Addedfind_human_function
    • Addedoffer_card_event
  3. 1 tool update
    • Changedrequest_execution1 field changed
      • changedInput schema / properties / address / description
        Previous value: -"Full street address in the Phoenix, AZ metro area."New value: +"Full street address. The Phoenix, AZ metro is fully supported; other US locations are best effort; locations outside the US are declined."
  4. 5 tool updates
    • First observedanswer_clarification
    • First observedcancel_execution
    • First observedconfirm_execution
    • First observedget_request
    • First observedrequest_execution

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Trust and quality infrastructure for AI agents. 233+ quality-scored capabilities for company data, compliance checks, financial validation, and more. Every capability has a transparent SQS quality score. Audit trails on every call. EU AI Act support.
    8
    5
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Human-as-a-Service for AI agents. When your agent is blocked by a task that requires a real human — accepting ToS, creating accounts, submitting forms, identity verification — it calls NeedHuman. A human completes the task and returns the result with proof.
    3
    40 npm
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources