addrbookFor publishers
← The evidence ledger

Evidence row 265156

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 71e1d0d4-c48d-4a2a-be6c-6161fa514207
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
f95a7e90709162244f45abe953056ef386cc63a42898b998c49c5e9b61dbc02b
Leaf
0x4438114ffe031dd74761f2566c43435ffc43e2f8a0dde450a97eb8ead9ee3eb2

What was observed

{
  "count": 9,
  "tools": [
    {
      "description": "Spend HanoLab credits to submit the prepared conversion ONLY after the user confirms its cost and budget. Reuse the exact quote_id after interruption: repeated calls return the original task without another debit. A failed task needs a separate user decision before a new quote.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "confirmed": {
            "const": true,
            "type": "boolean"
          },
          "max_credits": {
            "maximum": 1000,
            "minimum": 1,
            "type": "integer"
          },
          "quote_id": {
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "quote_id",
          "max_credits",
          "confirmed"
        ],
        "type": "object"
      },
      "name": "convert_voice"
    },
    {
      "description": "Create a private one-hour browser upload link. Ask the user to open it, choose an audio file or MP4 and return here. Requires the same HanoLab account; no credits are spent. This tool cannot read local paths or ChatGPT attachments directly.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "create_upload_link"
    },
    {
      "description": "Read the connected account’s plan and available credits. Does not purchase credits.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_credits"
    },
    {
      "description": "Identify the HanoLab account connected to these tools.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "get_profile"
    },
    {
      "description": "Check an owned task and return completed audio links. Refreshes worker status and may persist completion or a failure refund. Poll about every 10 seconds; do not submit a new paid task while waiting.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "task_id": {
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "task_id"
        ],
        "type": "object"
      },
      "name": "get_task"
    },
    {
      "description": "List recent audio uploaded through this connection. Use the exact audio_id, never a local path or an arbitrary URL.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "list_audio"
    },
    {
      "description": "Find recent conversions submitted with this connection. Use get_task to refresh a task. This does not start new tasks.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "list_conversions"
    },
    {
      "description": "List the connected user’s own saved voices and whether they are ready. If none are ready, open voicelab to create one.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {},
        "type": "object"
      },
      "name": "list_voices"
    },
    {
      "description": "Prepare a fixed quote for uploaded audio and a ready owned voice. No credits are spent. Explain estimated_credits, obtain the user’s budget and explicit confirmation, then use convert_voice with this exact quote_id.",
      "inputSchema": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "additionalProperties": false,
        "properties": {
          "audio_id": {
            "format": "uuid",
            "type": "string"
          },
          "full_song": {
            "default": true,
            "type": "boolean"
          },
          "voice_id": {
            "format": "uuid",
            "type": "string"
          }
        },
        "required": [
          "audio_id",
          "voice_id"
        ],
        "type": "object"
      },
      "name": "prepare_voice_conversion"
    }
  ]
}

What the leaf hashes

{"body":"f95a7e90709162244f45abe953056ef386cc63a42898b998c49c5e9b61dbc02b","id":265156,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793034644719953,"prev":null,"subject":"71e1d0d4-c48d-4a2a-be6c-6161fa514207","subject_kind":"endpoint"}

Proof

Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.

How to check it · This row as JSON