Koskamo

5arz Proof-of-Human MCP server

A community MCP server that allows agents to prove a real, unique human performed an action by minting a signed, verifiable Proof-of-Human credential. It supports tools for registering agents, verifying humans, checking credentials, and managing attestation receipts.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

5arz Proof-of-Human MCP server logo, by 5arzCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by 5arz
MCP endpoint (Streamable HTTP)
https://mcp.5arz.com
Vendor documentation

What you can do with it

  • Verify human identity for agent actions
  • Mint signed Proof-of-Human credentials
  • Check credential validity
  • Register agents for verification

Source and maintenance

Community listingRegistry 1.0.0

Protocol and capabilities

Server
5arz 1.0.0
MCP protocol
2025-06-18
Tools
9 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

5arz issues and verifies Proof-of-Human credentials, and sells verified human work. Credential flow: register_agent → verify_human (sessionId or memberId) → the returned pohf_jwt can be checked by anyone via check_credential. Marketplace flow: list_verified_human_tasks → purchase_verified_human_task (returns an x402 402 challenge; settle, then call again with the proof) → get_attestation_receipt. get_vhh_index is a free benchmark. subscribe / get_balance manage your plan. Provide your API key via Authorization: Bearer or the apiKey argument; the marketplace tools need no key — the payment is the authentication.

Tools

9 advertised

register_agent — Register an agent (get a 5arz API key)
Advertised by the server during the last successful anonymous check.
Open-world

Create a 5arz API key so your agent can request proof-of-human credentials. Every new key starts on the Free plan — 1,000 credential seals a month and 10 document checks, no card. Pass mode:"test" for an unlimited free sandbox key (arz_test_…) whose credentials are marked test:true — never treat test credentials as production proof. The key is shown once; store it.

register_agent input schema
{
  "type": "object",
  "required": [
    "name",
    "contactEmail"
  ],
  "properties": {
    "mode": {
      "enum": [
        "live",
        "test"
      ],
      "type": "string",
      "default": "live",
      "description": "live for production keys; test for an unlimited free sandbox key."
    },
    "name": {
      "type": "string",
      "description": "Your company or agent name."
    },
    "contactEmail": {
      "type": "string",
      "format": "email",
      "description": "Contact email for the account."
    }
  },
  "additionalProperties": false
}
register_agent annotations
{
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
verify_human — Verify a human (mint a PoHF credential)
Advertised by the server during the last successful anonymous check.
Open-world

Mint a signed Proof-of-Human-Fulfillment (PoHF) credential attesting a real, ID-verified, live human performed an action. Provide sessionId to attest work fulfillment, or memberId to attest that an ID-verified human is behind an account (optionally wallet-bound). This does not establish that the person holds only one account — read sybil_checked in the returned claims before gating one-per-person actions. Counts as one seal against your monthly plan allowance (1,000/month on Free; unlimited for test keys). Returns an ES256 JWT that anyone can verify against the public JWKS — pass it to check_credential. Requires an API key (Authorization: Bearer, or the apiKey argument).

verify_human input schema
{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "Optional: pass your key here if your client cannot set the Authorization header."
    },
    "wallet": {
      "type": "string",
      "description": "Optional EVM address to bind for on-chain isVerifiedHuman() gating (personhood path)."
    },
    "memberId": {
      "type": "string",
      "description": "Member to attest as an ID-verified, live human (personhood path)."
    },
    "sessionId": {
      "type": "string",
      "description": "Verified session to attest (work-fulfillment path)."
    },
    "walletSig": {
      "type": "string",
      "description": "Optional EIP-191 personal_sign of the wallet challenge."
    },
    "walletNonce": {
      "type": "string",
      "description": "Optional wallet challenge nonce."
    }
  },
  "additionalProperties": false
}
verify_human annotations
{
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
check_credential — Verify a PoHF credential (no 5arz trust required)
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Independently verify a 5arz PoHF JWT: checks the ES256 signature against the live public JWKS and validates expiry/not-before, then returns valid/invalid plus the decoded claims. No API key needed — this is pure cryptographic verification you could also do with any standard JWT library. Accepts either the legacy pohf_jwt / pop_jwt or the standards-conformant sd_jwt_vc (IETF SD-JWT VC, typ dc+sd-jwt).

check_credential input schema
{
  "type": "object",
  "required": [
    "pohf_jwt"
  ],
  "properties": {
    "pohf_jwt": {
      "type": "string",
      "description": "The credential returned by verify_human — the compact JWT, or the sd_jwt_vc string (ends in ~)."
    }
  },
  "additionalProperties": false
}
check_credential annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
get_vhh_index — Get the Verified-Human-Hour index ($/hr)
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Return the current Verified-Human-Hour (VHH) index — the benchmark price of one hour of verified human work/attention, in USD. Free, no API key. Useful for pricing verified-human data and as a citable benchmark.

get_vhh_index input schema
{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
get_vhh_index annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
subscribe — Subscribe to a 5arz plan
Advertised by the server during the last successful anonymous check.
Open-world

Get a Stripe checkout link for a 5arz plan. Free (1,000 seals/mo, 10 document checks), Starter ($99/mo, 100k seals, $1.25/document check), Growth ($499/mo, 1M seals, $0.75/check), Scale ($2,499/mo, unlimited seals, $0.50/check). SEALS are credential signatures and are effectively free; DOCUMENT CHECKS are the vendor identity verification and are what you are really paying for. Human verification is always free to the human, at any volume. Requires an API key.

subscribe input schema
{
  "type": "object",
  "required": [
    "plan"
  ],
  "properties": {
    "plan": {
      "enum": [
        "starter",
        "growth",
        "scale"
      ],
      "type": "string",
      "description": "starter=$99/mo, growth=$499/mo, scale=$2,499/mo. See https://5arz.com/pricing."
    },
    "apiKey": {
      "type": "string",
      "description": "Optional: pass your key here if your client cannot set the Authorization header."
    }
  },
  "additionalProperties": false
}
subscribe annotations
{
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
get_balance — Check plan and remaining allowance
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Return the current plan, seals and document checks used this month, and what remains. Requires an API key.

get_balance input schema
{
  "type": "object",
  "properties": {
    "apiKey": {
      "type": "string",
      "description": "Optional: pass your key here if your client cannot set the Authorization header."
    }
  },
  "additionalProperties": false
}
get_balance annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
list_verified_human_tasks — List buyable verified human work
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

List currently-buyable verified human work tasks. Each task includes its USD price, remaining slots, supported settlement chains, and the kind of Proof-of-Human-Fulfillment receipt issued on completion. Free, no API key.

list_verified_human_tasks input schema
{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "description": "Max tasks to return (default 20, max 100)."
    }
  },
  "additionalProperties": false
}
list_verified_human_tasks annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}
purchase_verified_human_task — Buy one slot of verified human work (x402)
Advertised by the server during the last successful anonymous check.
Advertised destructiveOpen-world

Buy one slot of a verified human task. Called without payment it returns an HTTP 402 / x402 challenge with settlement instructions; settle USDC on the offered chain and call again with x_payment and purchase_id to receive an attestation_id — a verifiable Proof-of-Human-Fulfillment receipt. No API key required; the payment is the authentication.

purchase_verified_human_task input schema
{
  "type": "object",
  "required": [
    "task_id"
  ],
  "properties": {
    "task_id": {
      "type": "string",
      "description": "Task id from list_verified_human_tasks."
    },
    "x_payment": {
      "type": "string",
      "description": "Optional X-PAYMENT settlement proof. Omit to receive the 402 challenge."
    },
    "purchase_id": {
      "type": "string",
      "description": "Purchase id from the previous 402. Required when presenting an x_payment."
    },
    "agent_key_thumb": {
      "type": "string",
      "description": "Optional RFC 7638 JWK thumbprint of your agent key; embedded in the receipt's cnf.jkt claim."
    }
  },
  "additionalProperties": false
}
purchase_verified_human_task annotations
{
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": true
}
get_attestation_receipt — Fetch a Proof-of-Human-Fulfillment receipt
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Fetch a Proof-of-Human-Fulfillment receipt by attestation id. Returns the signed packet, verifier identifier, JWKS URL, and a how-to-verify hint. Free, no API key — pair it with check_credential to verify the signature yourself.

get_attestation_receipt input schema
{
  "type": "object",
  "required": [
    "attestation_id"
  ],
  "properties": {
    "attestation_id": {
      "type": "string",
      "description": "Returned at fulfillment, or in the X-Attestation-Id header on the buy response."
    }
  },
  "additionalProperties": false
}
get_attestation_receipt annotations
{
  "readOnlyHint": true,
  "openWorldHint": true
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
329 ms
95th percentile latency
329 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 329 ms · metadata changed · 9 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http 5arz-proof-of-human-mcp-server https://mcp.5arz.com

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add 5arz-proof-of-human-mcp-server --url https://mcp.5arz.com

Cursor

Merge this server into .cursor/mcp.json in your project, then enable 5arz-proof-of-human-mcp-server in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "5arz-proof-of-human-mcp-server": {
      "url": "https://mcp.5arz.com"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "5arz-proof-of-human-mcp-server": {
      "type": "streamableHttp",
      "url": "https://mcp.5arz.com",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start 5arz-proof-of-human-mcp-server and inspect its tools.
VS Code configuration
{
  "servers": {
    "5arz-proof-of-human-mcp-server": {
      "type": "http",
      "url": "https://mcp.5arz.com"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http 5arz-proof-of-human-mcp-server https://mcp.5arz.com

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "5arz-proof-of-human-mcp-server": {
      "url": "https://mcp.5arz.com"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "5arz-proof-of-human-mcp-server": {
      "serverUrl": "https://mcp.5arz.com"
    }
  }
}

Let your agent find its tools

Find servers like 5arz Proof-of-Human MCP server from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.