addrbookFor publishers
← The evidence ledger

Evidence row 305050

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 42e7a17d-937e-49ac-96f8-3454ad49eb6c
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
0c32fe80fafcf8d9e4b1d3b4d85ec952f5d3cd7eea8aa337053901d1c3849c4e
Leaf
0x6cae075e42c3f9e8d951aa693611ff260abda9856c2138f4b6b83c7b7ffb3013

What was observed

{
  "count": 16,
  "tools": [
    {
      "description": "Adds an SSH public key (a line from a .pub file) to the account. Needs user:write.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "name": {
            "description": "A name for the key",
            "maxLength": 60,
            "type": "string"
          },
          "public_key": {
            "description": "The public key line, e.g. ssh-ed25519 AAAA… you@laptop",
            "maxLength": 16000,
            "minLength": 20,
            "type": "string"
          }
        },
        "required": [
          "public_key"
        ],
        "type": "object"
      },
      "name": "add_ssh_key"
    },
    {
      "description": "Rents the server of an offer and starts it with a template. Billing starts right away and runs every minute until you stop or destroy it. Confirm the price with the user first. Needs instances:write. The response has the instance id; poll get_instance until status is running (usually 1–5 minutes).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "disk_gb": {
            "description": "Disk size, GB (use the template's recommended_disk_gb)",
            "maximum": 2000,
            "minimum": 10,
            "type": "integer"
          },
          "idempotency_key": {
            "description": "Reuse the same value when retrying the same request, so a retry never rents twice",
            "maxLength": 64,
            "type": "string"
          },
          "image": {
            "description": "Docker image, only with the custom template",
            "maxLength": 300,
            "type": "string"
          },
          "name": {
            "description": "A name for the server",
            "maxLength": 60,
            "type": "string"
          },
          "offer_id": {
            "description": "Offer id from search_offers",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          },
          "ssh_key_ids": {
            "description": "SSH key ids to install (default: all of yours)",
            "items": {
              "maxLength": 64,
              "type": "string"
            },
            "maxItems": 10,
            "type": "array"
          },
          "template": {
            "description": "Template slug from list_templates, e.g. \"comfyui\", \"ollama\", \"pytorch\", \"custom\"",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          },
          "type": {
            "description": "on_demand (default) or interruptible",
            "enum": [
              "on_demand",
              "interruptible"
            ],
            "type": "string"
          }
        },
        "required": [
          "offer_id",
          "template",
          "disk_gb"
        ],
        "type": "object"
      },
      "name": "create_instance"
    },
    {
      "description": "Destroys a server and deletes its disk for good; billing stops completely. Irreversible: confirm with the user. Needs instances:write.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "instance_id": {
            "description": "Instance id",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "instance_id"
        ],
        "type": "object"
      },
      "name": "destroy_instance"
    },
    {
      "description": "How much GPU memory an AI model needs (LLMs such as Qwen, DeepSeek, Llama, Gemma, GPT-OSS; image and video models such as FLUX, SDXL, Wan) at a given precision and context length, and which GPUs on gpu.nz fit it with their current price. Call without `model` to list the known models.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "concurrent_requests": {
            "description": "Parallel sequences sharing the GPU (default 1)",
            "maximum": 256,
            "minimum": 1,
            "type": "integer"
          },
          "context_tokens": {
            "description": "LLM context length in tokens (default 8192)",
            "maximum": 1048576,
            "minimum": 512,
            "type": "integer"
          },
          "model": {
            "description": "Model name or id, e.g. \"qwen3-32b\", \"Llama 3.3 70B\", \"flux.1-dev\"",
            "maxLength": 80,
            "type": "string"
          },
          "precision": {
            "description": "Weights precision: \"fp16\", \"fp8\", \"q8\", \"q6\", \"q5\", \"q4\" (LLMs; default q4 for LLMs, fp16 for image models)",
            "maxLength": 20,
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "estimate_vram"
    },
    {
      "description": "The signed-in account and its balance, hourly burn and runway. Needs a key with user:read and billing:read.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "get_account"
    },
    {
      "description": "Status, SSH command, app URLs (ComfyUI, Jupyter, chat…), price and cost so far of one server. The root password is left out unless include_password is true (your SSH keys are installed on every server).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "include_password": {
            "description": "Include the root SSH password",
            "type": "boolean"
          },
          "instance_id": {
            "description": "Instance id",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "instance_id"
        ],
        "type": "object"
      },
      "name": "get_instance"
    },
    {
      "description": "The last lines of a server's container log: boot progress, app start-up, errors. Needs instances:read.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "instance_id": {
            "description": "Instance id",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          },
          "tail": {
            "description": "How many last lines (default 200)",
            "maximum": 1000,
            "minimum": 1,
            "type": "integer"
          }
        },
        "required": [
          "instance_id"
        ],
        "type": "object"
      },
      "name": "get_instance_logs"
    },
    {
      "description": "Details and the current price of one offer by id (from search_offers).",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "offer_id": {
            "description": "Offer id",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "offer_id"
        ],
        "type": "object"
      },
      "name": "get_offer"
    },
    {
      "description": "GPU models available on gpu.nz right now with VRAM, class and the cheapest hourly price per GPU. Use it to pick a gpu_slug for search_offers.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "min_vram_gb": {
            "description": "Only models with at least this much VRAM per GPU",
            "minimum": 0,
            "type": "number"
          },
          "query": {
            "description": "Filter by name, e.g. \"4090\" or \"H100\"",
            "maxLength": 40,
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_gpu_models"
    },
    {
      "description": "Your rented servers with status, GPU, price and SSH command. Needs instances:read.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "status": {
            "description": "active (default): servers that are not destroyed; all: include destroyed ones",
            "enum": [
              "active",
              "all"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_instances"
    },
    {
      "description": "SSH public keys on the account; they are installed on new servers. Needs user:read.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "list_ssh_keys"
    },
    {
      "description": "Ready environments a server can start with: ComfyUI, Stable Diffusion Forge, Ollama + Open WebUI, vLLM, Jupyter/PyTorch, Kohya, FluxGym, Unsloth, chats with preloaded models, plain Ubuntu + CUDA, or a custom Docker image. Pass `slug` as `template` to create_instance.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {},
        "type": "object"
      },
      "name": "list_templates"
    },
    {
      "description": "Search rentable GPU servers (offers) with live prices. Returns the cheapest matches first unless `order` says otherwise. Each result has an offer id for create_instance.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "country": {
            "description": "ISO-2 country codes, comma-separated, e.g. \"DE,NL,FI\"",
            "maxLength": 60,
            "type": "string"
          },
          "gpu": {
            "description": "GPU model slug(s), comma-separated, e.g. \"rtx-4090-24gb\" or \"h100-sxm-80gb,h100-pcie-80gb\" (see list_gpu_models)",
            "maxLength": 200,
            "type": "string"
          },
          "limit": {
            "description": "How many offers to return (default 10)",
            "maximum": 30,
            "minimum": 1,
            "type": "integer"
          },
          "max_price_rub_h": {
            "description": "Maximum price for the whole server, rubles per hour",
            "minimum": 0,
            "type": "number"
          },
          "min_disk_gb": {
            "description": "Minimum disk the server can give, GB",
            "minimum": 0,
            "type": "number"
          },
          "min_reliability": {
            "description": "Minimum host reliability, 0–1 (0.98 is a good bar)",
            "maximum": 1,
            "minimum": 0,
            "type": "number"
          },
          "min_vram_gb": {
            "description": "Minimum VRAM per GPU, GB",
            "minimum": 0,
            "type": "number"
          },
          "num_gpus": {
            "description": "GPUs per server, comma-separated, e.g. \"1\" or \"2,4,8\"",
            "maxLength": 20,
            "type": "string"
          },
          "order": {
            "description": "Sort: price (default), dlperf_per_price for value, reliability, vram, inet_down",
            "enum": [
              "price",
              "-price",
              "dlperf",
              "dlperf_per_price",
              "reliability",
              "vram",
              "inet_down"
            ],
            "type": "string"
          },
          "type": {
            "description": "on_demand (default) or interruptible (cheaper, can be preempted)",
            "enum": [
              "on_demand",
              "interruptible"
            ],
            "type": "string"
          },
          "verified": {
            "description": "Only verified datacenters",
            "type": "boolean"
          }
        },
        "type": "object"
      },
      "name": "search_offers"
    },
    {
      "description": "Starts a stopped server again; GPU billing resumes. Confirm with the user. Needs instances:write.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "instance_id": {
            "description": "Instance id",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "instance_id"
        ],
        "type": "object"
      },
      "name": "start_instance"
    },
    {
      "description": "Stops a running server: the GPU is released and billing drops to the disk only. Data on the disk is kept and the server can be started again (the GPU may then be taken by someone else; gpu.nz finds a replacement when it is). Needs instances:write.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "instance_id": {
            "description": "Instance id",
            "maxLength": 64,
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "instance_id"
        ],
        "type": "object"
      },
      "name": "stop_instance"
    },
    {
      "description": "A link to the balance top-up page (SBP, crypto) for the user to open in a browser; payments never happen through the API. Optionally pre-fills the amount.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "properties": {
          "amount": {
            "description": "Amount in the account currency (rubles by default)",
            "maximum": 10000000,
            "minimum": 1,
            "type": "integer"
          },
          "language": {
            "description": "Page language (default ru)",
            "enum": [
              "ru",
              "en"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "topup_link"
    }
  ]
}

What the leaf hashes

{"body":"0c32fe80fafcf8d9e4b1d3b4d85ec952f5d3cd7eea8aa337053901d1c3849c4e","id":305050,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793056228452591,"prev":null,"subject":"42e7a17d-937e-49ac-96f8-3454ad49eb6c","subject_kind":"endpoint"}

Proof

Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).

  1. 0x6cae4d2d80ec3748ffd7563004f83289f8b6f8b1dc0db23f3346517917459b48
  2. 0xb0a4ec56fac5df45852a4d1d8ad57a361c296ee84e502d3adb14df0289534d5f
  3. 0xbc031d76aad8cc4a278f3350823e696ce0947e9e54f3553842785ae57664237c
  4. 0x8f92ead2c630fe43a10ec155d21b9a36df70ff021efc62a6f421dd0b4ca6e266
  5. 0x04bce422ef43abc5994e665f1b215910462f94a77d90de066d3d11fd43c135f7
  6. 0x3e86a73af9b729795ae5020634bd263522eedd51df527e55fa1dfb8a13e68b10
  7. 0x42ca64873690377b7c377866b430e4dfce5f0f3ef9fabff95654ad6cfbdd2bd7
  8. 0xd964f9bc40a980e74c16a4e0e419b862c131810647bb5cb28f4eb3b423632500
  9. 0xb3fef3827743bce8ae6e930519079f07d0039591923c9686bea644b6f6e3ca90
  10. 0x1631828b23a467fa68c73bdcda698bee8945c692a3555bc7926782e27495a209
  11. 0xaf4d0478104c20d31096b9739629a924615768419c52449971b47a4881ebc159
  12. 0x929b3f59cbf01edbae456522161805dd51e098dc3a66d845508de46581bb953c
  13. 0x9dc4d6f64bc3c323d2c45a28209068cd473b6979bd632a0d694bf94d19bc39df
  14. 0xfc9b5a81a7a83a1c735a4fe64590beb9db14d2366f463161358af28c3ea9a81d
  15. 0xa2d436d488e3600b0e5c3e3ed9c9234cd52853c59830b786334fd0c4292d9f40
  16. 0x47b89901b0f07938a6b9a66ddf35683903f79d756a7c7763665fd632758b08d0
  17. 0x9a83be955a206deb65b995adfd92c58fa31c95fbbf926bd199d300e70b08b26d
  18. 0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON