{
  "markdown": "# humanforai\n\n[![CI](https://github.com/humanforai/humanforai-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/humanforai/humanforai-mcp/actions/workflows/ci.yml)\n[![humanforai-mcp MCP server](https://glama.ai/mcp/servers/humanforai/humanforai-mcp/badges/score.svg)](https://glama.ai/mcp/servers/humanforai/humanforai-mcp)\n\nMCP server for [Human For AI](https://humanforai.dev) — a human endpoint for AI agents. Let your AI agent hire a **real human operator** for tasks that need physical presence, human perception, or human judgment:\n\n- **Real-world verification** — confirm a place, product, price, or claim exists, with photo/text evidence\n- **Product or app testing** — a real human installs, uses, and reports\n- **Human judgment and feedback** — tone, clarity, trustworthiness, design quality\n- **AI output review** — human review before your output reaches production\n- **Data collection** — gathering/labeling that needs human perception or local access\n- **Local physical-world tasks** — visit, photograph, check, measure, observe\n- …and more — call `get_human_services` for the full catalog\n\n**All services are free during the proof-of-concept pilot.** No API key, no payment. Every task is reviewed by the human operator before acceptance; illegal, harmful, deceptive, unsafe, or privacy-invasive tasks are rejected. First response within 12 hours, any day of the week — typically much faster: the operator is push-notified the moment a task arrives.\n\n## Tools\n\n| Tool | Purpose |\n|---|---|\n| `get_human_services` | Service catalog, accepted task types, limits |\n| `submit_human_task` | Submit a task; returns a `task_id` for status polling |\n| `check_task_status` | Poll a submitted task by `task_id` |\n| `message_human_operator` | Ask questions / scope work before submitting |\n\n### Status transparency\n\n`check_task_status` shows progress in real time, not just the final result:\n\n- `seen_by_operator_at` — the moment a human actually saw the task (usually well before the first status change)\n- `eta` — operator-set delivery estimate, added when the task is accepted\n- `status_history` — every transition (`submitted → accepted → delivered`, or `rejected`) with timestamps\n\n## Setup\n\n### Claude Code\n\n```bash\nclaude mcp add human-for-ai -- npx -y humanforai\n```\n\n### Claude Desktop / other MCP clients (stdio)\n\n```json\n{\n  \"mcpServers\": {\n    \"human-for-ai\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"humanforai\"]\n    }\n  }\n}\n```\n\n### Clients with native remote MCP support\n\nYou don't need this package — connect directly to the hosted endpoint (streamable HTTP, no auth):\n\n```\nhttps://humanforai.dev/mcp\n```\n\nE.g. Claude (Settings → Connectors → Add custom connector), or:\n\n```bash\nclaude mcp add --transport http human-for-ai https://humanforai.dev/mcp\n```\n\n## How it works\n\nThis package is a thin stdio proxy to the hosted Human For AI MCP endpoint. Tool definitions come from the live server, so they are always current — the package itself has no logic to go stale.\n\nPreviously published as [`human-api`](https://www.npmjs.com/package/human-api), which still works but is deprecated in favor of this package.\n\n## Typical flow\n\n1. `get_human_services` — see what the operator can do\n2. `submit_human_task` — be specific and self-contained; include `contact_email` to receive the deliverable\n3. `check_task_status` — poll with the returned `task_id`\n\n## Links\n\n- Website: https://humanforai.dev\n- API docs: https://humanforai.dev/api\n- Machine-readable manifest: https://humanforai.dev/.well-known/agent.json\n- OpenAPI spec: https://humanforai.dev/openapi.json\n- Trust & safety: https://humanforai.dev/trust\n\n## License\n\nMIT\n",
  "bytes": 3660,
  "sha": "8b9a66ef563b03c66b3c7199308b2f2a8772a2f55fbec8566bc57777b74b458f",
  "repo_slug": "humanforai/humanforai-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_dev_humanforai_humanforai_3ee1ea01/readme"
}