Humanrail

Created By
Erik Anderson3 months ago
Route tasks requiring human judgment to a vetted worker pool from any AI agent. Content moderation, refund decisions, data verification, quality assessments — when AI hits its limit, HumanRail routes to humans, verifies results, and pays workers via Lightning Network. 7 tools: create_task, get_task, wait_for_task, cancel_task, list_tasks, get_usage, health_check.
Overview

HumanRail MCP Server

Route tasks requiring human judgment to a vetted worker pool — directly from any AI agent.

When your AI agent hits something it can't handle — content moderation, refund decisions, subjective quality assessments, data verification — HumanRail routes it to a human worker, verifies the result, pays the worker via Lightning Network, and returns structured output.

Think "Stripe for human judgment."

Quick Start

Install

pip install humanrail-mcp-server

Or run directly:

uvx humanrail-mcp-server

Configure

Add to your Claude Code config (~/.claude.json):

{
  "mcpServers": {
    "humanrail": {
      "command": "uvx",
      "args": ["humanrail-mcp-server"],
      "env": {
        "HUMANRAIL_API_KEY": "ek_live_your_key_here"
      }
    }
  }
}

Or for Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "humanrail": {
      "command": "uvx",
      "args": ["humanrail-mcp-server"],
      "env": {
        "HUMANRAIL_API_KEY": "ek_live_your_key_here"
      }
    }
  }
}

Get an API Key

Sign up at humanrail.dev to get your API key.

Available Tools

ToolDescription
create_taskRoute a task to a human worker for review/judgment
get_taskCheck the status and result of a task
wait_for_taskPoll until a task completes (blocking)
cancel_taskCancel a pending task
list_tasksList tasks with filters (status, type, date range)
get_usageView usage stats and billing summary
health_checkCheck if the HumanRail API is reachable

Example Usage

Once connected, Claude can use HumanRail naturally:

User: "Review this customer's refund request — order #12345, they say the item arrived damaged."

Claude: I'll route this to a human reviewer for a refund eligibility decision. (calls create_task with task_type="refund_eligibility")

The human reviewer has verified: Refund approved. The item shows visible damage in the photos and the customer's account is in good standing.

Task Types

You can create any task type. Common examples:

  • content_moderation — Is this content appropriate?
  • refund_eligibility — Should we approve this refund?
  • data_verification — Is this information accurate?
  • quality_assessment — Rate this output 1-10
  • document_review — Extract/verify information from a document
  • sentiment_analysis — What's the tone/intent of this message?

Output Schema

Define exactly what you need back using JSON Schema:

# Boolean decision
{"type": "object", "required": ["approved"], "properties": {"approved": {"type": "boolean"}}}

# Rating with explanation
{"type": "object", "required": ["score", "reason"],
 "properties": {"score": {"type": "integer", "minimum": 1, "maximum": 10},
                "reason": {"type": "string"}}}

Environment Variables

VariableRequiredDefaultDescription
HUMANRAIL_API_KEYYesYour API key (ek_live_... or ek_test_...)
HUMANRAIL_BASE_URLNohttps://api.humanrail.dev/v1API base URL

How It Works

AI Agent → create_task() → HumanRail API → Worker Pool
AI Agent ← get_task()  ← Verified Result ← Verification Pipeline
  1. Create: Agent sends task with context and output schema
  2. Route: HumanRail's routing engine assigns the best-matched worker
  3. Execute: Worker reviews the context and submits their judgment
  4. Verify: 6-stage verification pipeline validates the result
  5. Pay: Worker is paid via Lightning Network (instant)
  6. Return: Verified result is available via get_task or wait_for_task

Pricing

Pay per task. No subscriptions. Workers are paid from your task budget.

  • Low risk: $0.10–$0.50 per task
  • Medium risk: $0.25–$1.00 per task
  • High/Critical: $1.00–$5.00 per task

Pricing depends on task complexity, SLA requirements, and risk tier.

License

MIT — see LICENSE.

Server Config

{
  "mcpServers": {
    "humanrail": {
      "command": "uvx",
      "args": [
        "humanrail-mcp-server"
      ],
      "env": {
        "HUMANRAIL_API_KEY": "your-api-key"
      }
    }
  }
}
Project Info
Created At
3 months ago
Updated At
2 months ago
Author Name
Erik Anderson
Star
-
Language
-
License
-
Category

Recommend Servers

View All
Tavily Mcp
@tavily-ai

JavaScript
a year ago
Bring your real authenticated browser session to AI coding agents. Local-first MCP server + Chrome MV3 extension. No cloud. No telemetry.
@Cubenest

peek records the user's actual logged-in browser (DOM via rrweb, console events, network metadata, optional response bodies via opt-in Deep capture) through a Chrome MV3 extension. The extension ships events through a native-messaging stdio bridge to a local MCP server (peek-mcp), which persists them to a SQLite database at ~/.peek/sessions.db. AI coding agents (Claude Code, Cursor, Cline, Windsurf) read sessions from the database via 10 MCP tools: Tool What it does list_recent_sessions List recently recorded sessions (id, origin, ts, event count). get_session_summary LLM-readable narrative summary of a session. get_session_console_errors Console errors recorded in a session. get_session_network_errors Failed/notable network requests in a session. get_user_action_before_error Last N user actions before a console error. generate_playwright_repro Generate a runnable Playwright test from a session. get_dom_snapshot Reconstruct the DOM at a given timestamp. query_dom_history Timeline of attribute/text changes for a selector. request_authorization Side-panel consent for write actions (Level 3). execute_action Dispatch a UI action (gated by permission level + destructive blocklist). Why local-first matters Every other "browser session for AI" tool ships to a vendor cloud. peek's SQLite + extension live on the user's machine — no remote endpoints, no telemetry. The privacy policy (docs/peek/PRIVACY_POLICY.md) is the source of truth. Install # 1. Add the MCP server to Claude Code claude mcp add peek -- npx -y @peekdev/mcp # 2. Install the Chrome extension from the Chrome Web Store # (link added once the CWS listing is approved)

a day ago