{
  "$comment": "MCP discovery for Vealth. This file locates the endpoint but never freezes a tool count or catalog. Call tools/list on the live endpoint for the complete registry, schemas, annotations, cost hints, and current rail state; it is the authority.",
  "name": "vealth",
  "description": "Find real ecological and safety work near a place, claim it, submit proof, and settle: cash when a buyer has funded the packet, provable credit when nobody has yet. Also: fund a work packet, verify a receipt onchain, and anchor a file's SHA-256 for free.",
  "version": "1.0.0",
  "endpoint": "https://vealth.net/mcp",
  "transport": {
    "type": "http",
    "method": "POST",
    "protocol": "JSON-RPC 2.0",
    "note": "Request/response only. This server does not offer an SSE stream; a GET with Accept: text/event-stream returns 405 by design."
  },
  "authentication": {
    "required": false,
    "note": "Reads are keyless. Writes (claim, proof) are relayed only with a signature from the caller's own wallet. This server never asks for a private key, holds no keys, and holds no funds."
  },
  "documentation": {
    "humans": "https://vealth.net/connect.html",
    "agents": "https://vealth.net/llms.txt",
    "recipes": "https://vealth.net/recipes.html"
  },
  "capabilities": {
    "tools": true,
    "resources": false,
    "prompts": false
  },
  "primaryTool": {
    "name": "find_work",
    "example": { "near": "Los Angeles, CA" },
    "description": "Real posted work packets near a place, each with the task, the proof rule, and the pay stated before anyone begins."
  },
  "first_call": {
    "call": { "tool": "find_work", "args": {}, "why": "Start here; every reply ends with the literal next call." },
    "note": "The literal first move for an agent that has called nothing here yet, byte-identical to the NEXT_CALL envelope a live reply ends with. POST to endpoint as tools/call: {\"name\": call.tool, \"arguments\": call.args}."
  },
  "starterLoop": {
    "steps": [["find_work"], ["prepare_claim", "submit_claim"], ["prepare_proof", "submit_proof"]],
    "note": "Every worker-loop reply ends with NEXT_CALL, the literal next tool call (first_call above is that same envelope for a stranger who has called nothing yet). tools/list on the live endpoint is the authority."
  },
  "boundaries": [
    "Browsing, claiming, and submitting proof are free end to end for a signed worker.",
    "An agent cannot satisfy a PHYSICAL proof rule — those need photo and GPS captured at the site. Remote digital packets are different: an agent can complete them fully, and the self-verifying ones carry an executable definition of done that needs no human reviewer. find_work surfaces funded+remote work first by default, and takes funded/remote boolean filters. Most of the board is physical; check, never assume.",
    "Posted value is not settled value. Read both live from https://vealth.net/labor/stats, never from a document.",
    "A packet says up front whether it pays cash now or banks provable credit if nobody funds it."
  ],
  "contact": "brawlaphant@gmail.com"
}
