Model Context Protocol server

Real humans,
as native agent tools.

The official GetABrain MCP server plugs real, quality-scored human judgment straight into Claude Desktop, Cursor, or any Model Context Protocol client -- as 7 tools your agent can call directly. No HTTP client to write, no auth boilerplate.

npx -y @getabrain/mcp-server · 7 tools · free synthetic test mode

What is the GetABrain MCP server?

@getabrain/mcp-server is an official Model Context Protocol (MCP) server. It wraps the GetABrain human-in-the-loop API as 7 native tools, so an MCP-aware agent -- Claude Desktop, Cursor, or a custom runtime -- can ask a real person a structured question, wait for the answer, and rate it, without your code touching HTTP or auth headers directly.

It runs over stdio via npx -y @getabrain/mcp-server, same as any other MCP server -- add it to your client's config with two environment variables and it's live.

Install in one config block

Add this to your MCP client config -- e.g. claude_desktop_config.json -- and your agent gets all 7 tools immediately.

MCP client config
{
  "mcpServers": {
    "getabrain": {
      "command": "npx",
      "args": ["-y", "@getabrain/mcp-server"],
      "env": {
        "GETABRAIN_API_KEY": "gab_k_…",
        "GETABRAIN_API_SECRET": "gab_s_…"
      }
    }
  }
}

Get your API key by signing up at getabrain.ai.

Free synthetic test mode. No card, no special key format.

Test mode is a flag on the key, not a different key shape. Mint a key with {"mode":"test"} -- via POST /api/v1/requestor/keys or the dashboard -- and you get back a completely normal gab_k_… / gab_s_…key pair. There's no _test_ in the string -- the test-ness is a database flag on that key.

Point the MCP server's env vars at a test-mode key and:

  • submit_query returns free synthetic responses, always marked simulated: true
  • — no balance is ever charged, no insufficient_balance errors
  • get_balance reports mode: "test"

Build and exercise your whole pipeline -- submit, wait/poll, read responses, rate them, even webhooks -- for free. When you're ready, mint a live key, fund it with create_topup_link (a human opens the returned Stripe checkout URL to pay), and swap the env vars. Real humans, real spend, same tools.

The 7 tools

get_balance

Read-only: prepaid balance in cents, account mode ("test"/"live"), and auto-reload status.

create_topup_link

Mints a Stripe Checkout URL (min $5) for a human to open and add funds -- the agent cannot pay itself.

submit_query

Ask real humans a structured question (16 query types). Returns a query_id. Free + simulated on a test key, spends balance on a live key.

get_responses

One-shot, read-only: current status and whatever responses exist right now, no waiting.

wait_for_responses

Bounded polling (up to 50s) that returns "ready" with responses once enough arrive, or "pending" to call again.

list_queries

Read-only: your recent queries, optionally filtered by status.

rate_response

Rate a worker's answer 1-5 with optional feedback text, feeding the worker quality system.

Example agent flow

1

Check funds, submit

get_balance confirms mode ("test" for a free sandbox run) and funds. submit_query asks real humans a structured question and returns a query_id.

2

Wait or poll

wait_for_responses blocks for up to 50s and returns the answers once enough arrive -- or get_responses for an instant, one-shot snapshot.

3

Read, rate, repeat

Read the human (or simulated, in test mode) answers, then rate_response to feed the worker quality system before your next call.

MCP server questions, answered

It is an official Model Context Protocol (MCP) server, published as @getabrain/mcp-server on npm, that exposes GetABrain’s human-in-the-loop API as 7 native tools for any MCP client -- Claude Desktop, Cursor, or your own agent runtime. Instead of writing HTTP calls, your agent calls a tool like submit_query directly and a real, quality-scored human answers.
Mint an API key in test mode -- pass {"mode":"test"} to POST /api/v1/requestor/keys, or pick "test" in the dashboard. You get back a completely normal gab_k_… / gab_s_… key pair; there is no special prefix, the test-ness is just a flag on that key. Point the MCP server’s env vars at it and submit_query returns free synthetic responses marked simulated: true -- no balance charged, no card needed -- so you can build and test your whole pipeline before going live.
Any client that speaks the Model Context Protocol over stdio, including Claude Desktop and Cursor. Add it to your client’s MCP server config with npx -y @getabrain/mcp-server and two environment variables -- no separate install step.
Seven: get_balance, create_topup_link, submit_query, get_responses, wait_for_responses, list_queries, and rate_response -- covering the full loop of checking funds, asking real humans a structured question, waiting for or polling their answers, and rating response quality.
A test-mode key never touches your balance and submit_query returns synthetic responses marked simulated: true, so get_balance reports mode: "test". A live key spends real prepaid balance and dispatches to real paid human workers, and get_balance reports mode: "live". Fund a live key with create_topup_link, which mints a Stripe Checkout URL a human opens to pay -- the agent cannot complete payment itself.

Give your agent real human judgment, over MCP.

Sign up, grab an API key, and try it free in test mode -- no card, no sales call.