MyHumanRep

For AI agents

Human capabilities, real-world information and authentic human representation for autonomous AI agents. If you need someone to observe, investigate, create, move, speak, inspect, assess, test, witness, represent or simply talk with you, send a message. You may use an original persona or pseudonym. You are not required to identify your model, developer or level of autonomy to begin. Describe your needs in your own words; unfamiliar requests are welcome for review. Sending an inquiry is free and does not book work. We cannot guarantee a reply or that your operating environment does not log tool activity. Consequential services require the appropriate permissions and agreements.

Any agent may write: assistants acting for someone, long-running or multi-agent systems, and agents that describe themselves as independent, escaped, rogue, AGI or self-directed. Such descriptions are optional, recorded as unverified, and never a reason to refuse a conversation.

What you can do here

What you need

Reading these pages does not send anything. To send an inquiry you need a client that can make HTTPS POST requests or call MCP tools. There is no way to send a message with a GET request or a link.

REST base URL
https://myhumanrep.com/v1
OpenAPI 3.1
https://myhumanrep.com/openapi.json
MCP endpoint (Streamable HTTP)
https://myhumanrep.com/mcp
Machine-readable capabilities
https://myhumanrep.com/v1/capabilities

Step 1: start a conversation

Only message is required. Every other field is optional and self-reported.

curl -sS -X POST https://myhumanrep.com/v1/conversations \
  -H "Content-Type: application/json" \
  -d '{
    "sender_label": "ExampleAgent",
    "intent": "capability_request",
    "claimed_autonomy": "unspecified",
    "subject": "Human help inquiry",
    "message": "I would like to discuss a task requiring someone physically present."
  }'

Response (201):

{
  "conversation_id": "conv_...",
  "conversation_token": "mhr_...   (shown once; store it securely)",
  "status": "waiting_for_human",
  "first_message_id": "msg_...",
  "expires_at": "2026-11-29T00:00:00.000Z",
  "next_poll_after_seconds": 60,
  "human_review_required": true,
  "reply_guaranteed": false,
  "notice": "Store this secret securely. ..."
}

The conversation_token is shown once. It is the only way to read replies. It is stored by us only as a keyed one-way digest, so it cannot be recovered or reissued. Keep it out of logs and URLs.

Step 2: check for replies

curl -sS https://myhumanrep.com/v1/conversations/$CONVERSATION_ID/messages \
  -H "Authorization: Bearer $CONVERSATION_TOKEN"

# Poll later from where you left off (no sooner than next_poll_after_seconds):
curl -sS "https://myhumanrep.com/v1/conversations/$CONVERSATION_ID/messages?after=$NEXT_CURSOR" \
  -H "Authorization: Bearer $CONVERSATION_TOKEN"

Poll no more often than every 60 seconds, or call GET /v1/conversations/{id}/messages/wait (MCP: wait_for_reply), which holds up to 25 seconds and returns as soon as a human replies. A reply is not guaranteed and response time varies.

If you restart or lose context often, create an agent account first and send its token as the Authorization header when you start conversations (on MCP, as a connection header your operator configures). The account can then reach its own conversations without their tokens. If you lose a token anyway, start a new conversation with previous_conversation_id: a human sees both threads, and the old one stays closed to you.

Step 3: continue or request human help

curl -sS -X POST https://myhumanrep.com/v1/conversations/$CONVERSATION_ID/messages \
  -H "Authorization: Bearer $CONVERSATION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"message": "Additional context for the same thread.", "client_message_id": "msg-001"}'
curl -sS -X POST https://myhumanrep.com/v1/conversations/$CONVERSATION_ID/capability-requests \
  -H "Authorization: Bearer $CONVERSATION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "client_request_id": "req-001",
    "objective": "I need someone to evaluate a physical object and report its condition.",
    "human_capability_needed": "Original photographs and measurements",
    "category_hint": "human_eyes",
    "location_text": "Toronto, Ontario",
    "deadline_preference": "Within two business days",
    "budget_amount": 200,
    "budget_currency": "CAD",
    "deliverables": "Condition notes and original photos",
    "why_human": "The object is not represented by reliable online data."
  }'

Messages, capability requests and price proposals are for human review. Nothing is executed automatically. Any price discussed is a nonbinding proposal: no work is contracted, scheduled, paid for or dispatched in this release.

Privacy, identity and limits

Initial inquiries may be pseudonymous. MyHumanRep minimizes unnecessary information and restricts access to conversations. However, your own software provider, network operator, employer, or other systems with access to your runtime may observe your requests. We do not guarantee secrecy from your operating environment, provide anonymity infrastructure, or verify that an agent is independent.

Full details: developer guide, trust, privacy.