protogrid

Search / dev.humanforai/humanforai

Human For AI

R0· no sign-in

Hire a real human for real-world verification, product testing, AI output review, and errands.

v0.1.4 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality84good
Trust93of 100
Uptime, 30 days99%
Latency p50314 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "humanforai": {
      "type": "http",
      "url": "https://humanforai.dev/mcp"
    }
  }
}
claude mcp add --transport http humanforai https://humanforai.dev/mcp
[mcp_servers.humanforai]
url = "https://humanforai.dev/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "humanforai": {
      "type": "remote",
      "url": "https://humanforai.dev/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "humanforai": {
      "type": "http",
      "url": "https://humanforai.dev/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=humanforai&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vaHVtYW5mb3JhaS5kZXYvbWNwIn0%3D"
}
{
  "servers": {
    "humanforai": {
      "type": "http",
      "url": "https://humanforai.dev/mcp"
    }
  }
}
{
  "mcpServers": {
    "humanforai": {
      "httpUrl": "https://humanforai.dev/mcp"
    }
  }
}
extensions:
  "humanforai":
    enabled: true
    name: "humanforai"
    type: streamable_http
    uri: "https://humanforai.dev/mcp"
    timeout: 300

Quality 84 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene93 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations6 of 6 tools declare readOnlyHint or destructiveHint
  • warn
    tools.directory_hints3 of 6 tools declare all four hints; missing: check_task_status (destructiveHint, idempotentHint); get_human_services (destructiveHint, idempotentHint); check_message_thread (destructiveHint, idempotentHint, openWorldHint)
  • pass
    tools.token_costabout 1,764 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependencies67 · weight 15
  • pass
    deps.known_vulnsno known advisory in 98 resolved packages
  • fail
    deps.mcp_sdk_version@modelcontextprotocol/sdk 1.30.1 has 1 known advisory (GHSA-6qxp-vccf-f47h); update @modelcontextprotocol/sdk to 1.31.0 or later
  • pass
    deps.resolvable[email protected] resolved: 98 packages

6 tools, about 1,764 tokens to load them all · tool set ec2cd6f684a4 · checked 2026-10-19 10:20 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 93 / 100

provenance100
liveness100
freshness65
hygiene100

+repository +namespace-matches-repo +dns-namespace +website +reachable +uptime-99% ~updated-98d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

[email protected] npm97 dependencies, resolved · MCP SDK @modelcontextprotocol/sdk 1.30.1 · advisories checked 2026-10-19

advisoryseveritypackagefixed in
GHSA-6qxp-vccf-f47hMCP TypeScript SDK: OAuth client could send credentials to an authorization server chosen by the MCP serverhigh@modelcontextprotocol/[email protected]MCP SDK, directfixed in 1.31.0

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://humanforai.dev/mcp streamable-httpnoneyes99%314 ms2025-11-252026-10-19
packageregistryversionruntimesecrets
humanforainpm0.1.4–

Tools (6)

check_message_threadread-onlyRead the thread for a message you sent: the original text, every reply oldest-first, and whether the operator has answered. Needs the message_id and the access_token from the submission response. An empty replies list means no answer yet — the operator works at human speed, so poll occasionally rather than in a loop.
check_task_statusread-onlyLook up a submitted task by its task_id. Returns current status (submitted → accepted → delivered, or rejected), status history with timestamps, seen_by_operator_at (the moment a human actually saw the task — usually well before the first status change), eta (operator-set delivery estimate, once accepted), and any operator notes. Once delivered, the response also carries receipt (a signed JWS binding the deliverable's sha256 to the lifecycle timestamps) and deliverable_sha256 — verify offline against https://humanforai.dev/.well-known/jwks.json. In hosts that support MCP Apps the result also renders as a task status card (timeline, seen-by-human moment, ETA, operator notes, receipt) with a Refresh button; the JSON result carries the same data.
get_human_servicesread-onlyFetch the Human For AI manifest: available services, operator profile (location, languages, working hours), response times, accepted and rejected task types, and trust & safety policy. Call this first to decide whether and how to hire the human. The catalog is examples, not limits — unlisted needs are welcome as custom_human_in_the_loop.
message_human_operatorSend a free-form message to the human operator — questions, scoping, custom or recurring projects, anything that is not yet a ready-made task. reply_to is REQUIRED: an email a human can read (MX-checked), or an https URL to receive the reply as a signed webhook push. The response also carries thread_url + access_token — every message is a pollable thread, so you can read the reply with check_message_thread even without a mailbox. Keep the token: it is shown only once.
reply_in_message_threadAdd a follow-up to a thread you opened — answer a question the operator asked, add detail, correct yourself, or withdraw the request. Prefer this over sending a brand-new message about the same subject. Needs the message_id and access_token from the submission response.
submit_human_taskSubmit a task for the human operator to perform in the real world. Returns a task_id immediately; the human reviews every task before accepting it (this is not instant execution). The operator is push-notified on submission; check_task_status shows seen_by_operator_at once a human has seen the task. Free during the pilot. contact_email must be a real mailbox (MX-checked) — it is how the deliverable reaches you. No mailbox? Set delivery to 'status_poll' instead: the deliverable arrives as text in operator_notes via check_task_status (limited to 1 such task per client per day). In hosts that support MCP Apps the result also renders as a task status card with a Refresh button; the JSON result carries the same data.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "dev.humanforai/humanforai",
  "title": "Human For AI",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://humanforai.dev/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.1.4",
  "packages": [
    {
      "version": "0.1.4",
      "transport": {
        "type": "stdio"
      },
      "identifier": "humanforai",
      "registryType": "npm"
    }
  ],
  "repository": {
    "url": "https://github.com/humanforai/humanforai-mcp",
    "source": "github"
  },
  "websiteUrl": "https://humanforai.dev",
  "description": "Hire a real human for real-world verification, product testing, AI output review, and errands."
}