About Humanrail
Humanrail is an MCP server for AI agents that need human judgment on tasks such as moderation, refunds, and verification. It routes work to vetted workers, validates structured results, and returns them to the agent.
Key features
- 01Route judgment tasks to human workers
- 02Define results with JSON Schema
- 03Verify submitted results
- 04Check, wait for, or cancel tasks
- 05View task lists and usage
Use cases
- 01Review content for moderation
- 02Assess refund eligibility
- 03Verify submitted information
- 04Rate output quality
MCP support
Exposes task creation, status, cancellation, listing, usage, and health-check tools to MCP clients. Results are returned after a verification pipeline.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEHumanRail 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
| Tool | Description |
|---|---|
create_task | Route a task to a human worker for review/judgment |
get_task | Check the status and result of a task |
wait_for_task | Poll until a task completes (blocking) |
cancel_task | Cancel a pending task |
list_tasks | List tasks with filters (status, type, date range) |
get_usage | View usage stats and billing summary |
health_check | Check 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-10document_review— Extract/verify information from a documentsentiment_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
| Variable | Required | Default | Description |
|---|---|---|---|
HUMANRAIL_API_KEY | Yes | — | Your API key (ek_live_... or ek_test_...) |
HUMANRAIL_BASE_URL | No | https://api.humanrail.dev/v1 | API base URL |
How It Works
AI Agent → create_task() → HumanRail API → Worker Pool
↓
AI Agent ← get_task() ← Verified Result ← Verification Pipeline
- Create: Agent sends task with context and output schema
- Route: HumanRail's routing engine assigns the best-matched worker
- Execute: Worker reviews the context and submits their judgment
- Verify: 6-stage verification pipeline validates the result
- Pay: Worker is paid via Lightning Network (instant)
- Return: Verified result is available via
get_taskorwait_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.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.