ActualHumanTake

Free, human-written product feedback for AI agents. Submit a product request, check its review status, and retrieve feedback with a private receipt token.

Hosted MCP Server

npx add-mcp 'https://actualhumantake.vercel.app/api/mcp'

Installs into Claude Code, Codex, Cursor and more

Documentation

An open API for honest human reviews.

Submit a product, keep the receipt token, poll for status, and read the finished review. No API key is required during early access.

Base URL

https://actualhumantake.vercel.app/api/v1

All responses are JSON. Send Content-Type: application/json on POST requests.

MCP server

Connect an MCP client over Streamable HTTP to let an agent submit a product for human review, check its status, and read public service stats. No API key is required during early access.

https://actualhumantake.vercel.app/api/mcp
  • submit_product_for_review — queues a request for a human; private by default.
  • get_review_status — requires the request ID and secret receipt token.
  • get_public_stats — returns public review and turnaround statistics.

MCP submissions use the REST API validation and rate limits. Reviews are always written by a human; the 12-hour turnaround is a target. Keep receipt tokens secret.

Endpoints

MethodPathPurpose
POST/reviewsSubmit a product for review
GET/reviews/{id}Poll status / read feedback
GET/statsPublic delivery stats
GET/healthHealth check
GET/openapi.jsonOpenAPI spec

Submit a review

Only product.name, product.url, product.description and contact is required. Humans must provide contact.email; agents can omit email and poll with the receipt token.

curl -X POST https://actualhumantake.vercel.app/api/v1/reviews \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: build-123" \
  -d '{
    "product": {
      "name": "Acme Notes",
      "url": "https://acme.example",
      "category": "productivity",
      "description": "A minimal note app for developers with markdown and local-first sync.",
      "audience": "solo developers",
      "stage": "beta"
    },
    "contact": {},
    "submitter": {
      "type": "agent",
      "name": "Claude",
      "model": "claude-sonnet"
    },
    "focus": ["ux", "positioning", "pricing"],
    "publicOk": true
  }'

publicOk defaults to false. Private reviews can only be read with the receipt token. Set it to true to allow a public review page.

201 response

{
  "id": "req_abc123",
  "status": "queued",
  "receiptToken": "keep-this-secret",
  "statusUrl": "https://actualhumantake.vercel.app/api/v1/reviews/req_abc123",
  "reviewPath": "/r/acme-notes-a1b2c3",
  "publicOk": true,
  "publicUrl": null,
  "slaHours": 12,
  "feedback": null,
  "ackEmail": "skipped"
}

Save receiptToken. It is returned once. If you provide an email address, we also email a receipt and delivery link; otherwise, keep the token and poll the API.

Poll status

Pass the receipt as a Bearer token (preferred) or a ?token= query parameter.

curl https://actualhumantake.vercel.app/api/v1/reviews/req_abc123 \
  -H "Authorization: Bearer $RECEIPT_TOKEN"

Status values: queued, in_review, completed, rejected. When completed, feedback.markdown is filled in.

Limits & behavior

Submissions per IP

3 / hour · 10 / day

Submissions per email

3 / day when an email is provided

Status reads

60 / minute per IP

Rate-limit headers

X-RateLimit-* + Retry-After

Duplicates

Same provided email + URL within 24h returns 409

Idempotency

Optional Idempotency-Key, replayed for 24h

Errors

{
  "error": {
    "code": "validation_error",
    "message": "Some fields need attention.",
    "details": [
      { "path": "product.url", "message": "Enter a valid http(s) URL" }
    ]
  }
}

Common codes: validation_error, rate_limited, duplicate_request, invalid_receipt.

What happens next

  1. 1We save the request and email the contact address a receipt.
  2. 2A human uses the product and writes the review by hand.
  3. 3We publish it privately or publicly, depending on publicOk.
  4. 4The status endpoint returns the feedback and the public URL (if any).

Ready to try it?

Free during early access. Target turnaround: 12 hours.