addrbookFor publishers
← The evidence ledger

Evidence row 1378621

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint a576b9d9-3ad5-4845-965d-f6e5985cbe45
Recorded
Previous row
#1252313
Body SHA-256
34d4ffbf54e72c10f92b3088e7bbfd1b5a9e2e075500fd196f4464f01ff507a1
Leaf
0x85deb3425f91527bf5842793f969cfa1f59c0d48dd7f93578e4fb40183110bd6

What was observed

{
  "count": 15,
  "tools": [
    {
      "description": "Use this to add a file the person gave you to a fax: a PDF, or a photo saved as JPG, PNG, WEBP or HEIC, up to 20 MB. Call it once per file, before create_fax, in the order the files should be faxed. It returns document_id, upload_url and upload_headers: PUT the file's exact bytes to upload_url with those headers within 5 minutes, then pass document_id to create_fax within an hour. Nothing is faxed or charged. If you can't read the file's bytes, don't use this: call create_fax without document_ids, and the person adds the file on the status page.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "byte_size": {
            "description": "The file's exact size in bytes.",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "checksum": {
            "description": "The file's MD5 digest, base64-encoded, as printed by: openssl md5 -binary <file> | base64",
            "minLength": 1,
            "type": "string"
          },
          "content_type": {
            "description": "The file's media type. It must match the file's contents.",
            "enum": [
              "application/pdf",
              "image/jpeg",
              "image/png",
              "image/webp",
              "image/heic",
              "image/heif"
            ],
            "type": "string"
          },
          "fax_number": {
            "description": "The fax number the file will be faxed to, in international format, like +31201234567. Numbers in the EU, the UK, Switzerland, Norway, Iceland, Liechtenstein, Monaco, Montenegro, Ukraine and the Isle of Man only. Use the same number in create_fax.",
            "type": "string"
          },
          "filename": {
            "description": "The file's name with its extension, like referral.pdf.",
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "fax_number",
          "filename",
          "byte_size",
          "checksum",
          "content_type"
        ],
        "type": "object"
      },
      "name": "create_document"
    },
    {
      "description": "Use this once the person has confirmed the fax number, and given you their email if they aren't signed in. It creates the fax and returns status_url, the page where the person checks the fax number, documents and price, and pays to send it. Nothing is sent or charged until they pay there. Pass the document_ids from create_document. Without them, the fax waits on the status page for the person to add their files. Choose a private random idempotency_key for each intentional new fax. Reuse the exact same key and request after a timeout or request_in_progress; never change the key just to retry. The key is retained for 24 hours. To check a fax, use get_fax_status or get_fax.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "content": {
            "description": "Text approved by the person, rendered as a PDF before the uploaded documents. Markdown supports headings, lists, tables and links as printed text. Images, raw HTML and remote assets are refused. Always show the generated proof before sending.",
            "properties": {
              "format": {
                "enum": [
                  "text",
                  "markdown"
                ],
                "type": "string"
              },
              "text": {
                "maxLength": 50000,
                "minLength": 1,
                "type": "string"
              }
            },
            "required": [
              "text",
              "format"
            ],
            "type": "object"
          },
          "cover_page": {
            "description": "An optional cover page. Confirm its wording with the person first. It counts toward the total pages; omit if not requested.",
            "properties": {
              "message": {
                "maxLength": 2000,
                "type": "string"
              },
              "recipient": {
                "maxLength": 120,
                "type": "string"
              },
              "sender": {
                "maxLength": 120,
                "type": "string"
              },
              "subject": {
                "maxLength": 200,
                "type": "string"
              }
            },
            "type": "object"
          },
          "document_ids": {
            "description": "The document_id of each file from create_document, in the order they're faxed. Up to 10. Leave it out to let the person add files on the status page.",
            "items": {
              "type": "string"
            },
            "maxItems": 10,
            "type": "array"
          },
          "email": {
            "description": "The person's email address, where Faxette sends the receipt and updates. Ask the person for it. Leave it out when they're signed in: their account's email is used.",
            "format": "email",
            "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
            "type": "string"
          },
          "fax_number": {
            "description": "The fax number the fax goes to, in international format, like +31201234567. Numbers in the EU, the UK, Switzerland, Norway, Iceland, Liechtenstein, Monaco, Montenegro, Ukraine and the Isle of Man only.",
            "type": "string"
          },
          "idempotency_key": {
            "description": "A private random UUID for this intentional new fax. Keep it unchanged for retries of the same request within 24 hours.",
            "pattern": "^[A-Za-z0-9_.-]{32,128}$",
            "type": "string"
          },
          "language": {
            "description": "The language the person chooses for the fax page, checkout and emails. Check get_capabilities for this region. Omit to use the account preference or regional default.",
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "idempotency_key",
          "fax_number"
        ],
        "type": "object"
      },
      "name": "create_fax"
    },
    {
      "description": "Use this to see which Faxette account the person signed in with: their name, email, credit, and whether it's the US or EU copy. Needs the person to sign in to Faxette; calling it while they aren't asks the app to sign them in. It changes nothing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "get_account"
    },
    {
      "description": "Use this before preparing a fax to check this region's supported countries, languages, file limits and current retail and credit pricing rules. Prices are before tax; the exact total is confirmed after document processing and at checkout. It changes nothing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "get_capabilities"
    },
    {
      "description": "Use this for one fax from the person's Faxette account: its status, price, payment, documents' file names and history. Pass the id from get_faxes or create_fax. While a fax is sending, call it at most once a minute. Needs the person to sign in to Faxette; calling it while they aren't asks the app to sign them in. It changes nothing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "id": {
            "description": "The fax's id, from get_faxes or create_fax.",
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "get_fax"
    },
    {
      "description": "Use this when the person asks for a delivery report or the transmitted document. Returns the destination, page count, delivery result, timestamps and attempts. A report URL is available after delivery, failure or cancellation. Document links are only returned for the signed-in owner of an account fax while its files are retained. Report and document links expire after five minutes. A delivered fax does not establish that the recipient read it. It changes nothing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "id": {
            "description": "An account fax ID; requires sign-in. Pass this or status_url, not both.",
            "minLength": 1,
            "type": "string"
          },
          "status_url": {
            "description": "The original status link, including its token for a guest fax.",
            "format": "uri",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "get_fax_report"
    },
    {
      "description": null,
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "id": {
            "minLength": 1,
            "type": "string"
          },
          "review_token": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id",
          "review_token"
        ],
        "type": "object"
      },
      "name": "get_fax_review"
    },
    {
      "description": "Use this when the person asks how their fax is doing, or to see whether it's ready to pay. It reads the fax from its status_url and returns its status, page count, price, payment and attempts. checkout_available is true once the person can pay on the status page. It changes nothing. While a fax is sending, call it at most once a minute.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "status_url": {
            "description": "The status_url create_fax returned, like https://eu.faxette.com/f/abc123?token=xyz.",
            "format": "uri",
            "type": "string"
          }
        },
        "required": [
          "status_url"
        ],
        "type": "object"
      },
      "name": "get_fax_status"
    },
    {
      "description": "Use this when the person asks about faxes they've sent from their Faxette account, like what they sent last week or which faxes failed. Returns 25 at a time, newest first. Pass next_page back as page for the next 25. Filter with status, for example [\"failed\"] or [\"delivered\"]. Use get_fax for one fax's details. Needs the person to sign in to Faxette; calling it while they aren't asks the app to sign them in. It changes nothing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "page": {
            "description": "The next_page from the previous call.",
            "type": "string"
          },
          "status": {
            "description": "Only faxes in these states.",
            "items": {
              "enum": [
                "draft",
                "processing_documents",
                "documents_ready",
                "awaiting_payment",
                "scheduled",
                "sending",
                "delivered",
                "failed",
                "canceled"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "name": "get_faxes"
    },
    {
      "description": "Search Faxette's catalog by agency, form number or purpose. Returns only numbers supported by this connector, with the official source and verification date. An empty result means we have no current match, not that the office has no fax number. Show the source and have the person confirm the right office before creating a fax. It changes nothing.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "query": {
            "maxLength": 100,
            "minLength": 2,
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "lookup_fax_number"
    },
    {
      "description": "Open the private upload and PDF review interface for an account fax before approving payment. Requires sign-in. The browser review link works when the client cannot show MCP Apps.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "id": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      },
      "name": "open_fax_review"
    },
    {
      "description": null,
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "byte_size": {
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "checksum": {
            "minLength": 1,
            "type": "string"
          },
          "content_type": {
            "minLength": 1,
            "type": "string"
          },
          "filename": {
            "minLength": 1,
            "type": "string"
          },
          "id": {
            "minLength": 1,
            "type": "string"
          },
          "review_token": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id",
          "review_token",
          "filename",
          "byte_size",
          "checksum",
          "content_type"
        ],
        "type": "object"
      },
      "name": "prepare_fax_upload"
    },
    {
      "description": "Use this only after the person asks to resend a failed fax and confirms its destination, including any corrected number. Check get_fax or get_fax_status first. Reuses the existing fax, payment hold and resend rules; it does not create a new paid fax. Faxette refuses expired resend windows and exhausted retries. If a call is interrupted, check the existing fax before calling again.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "fax_number": {
            "description": "A corrected number explicitly confirmed by the person. Omit to use the existing destination.",
            "type": "string"
          },
          "id": {
            "description": "An account fax ID; requires sign-in. Pass this or status_url, not both.",
            "minLength": 1,
            "type": "string"
          },
          "status_url": {
            "description": "The original fax status link, including its token for a guest fax.",
            "format": "uri",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "resend_fax"
    },
    {
      "description": "Use this to send a fax from the person's Faxette credit. Only for a fax in their account that's ready to pay for: call get_fax first. Show the prepared PDF with open_fax_review or its review_url. Have the person confirm the destination, documents and credit_price, explain that it comes from their credit, and call this only once they clearly agree. If get_account shows their credit doesn't cover it, give them the status page instead, where they can pay for this fax by card. For the EU connector, also explain that sending starts immediately and the person's right to cancel ends once the fax is delivered. Obtain their explicit agreement before setting immediate_sending_consent to true. Needs the person to sign in to Faxette; calling it while they aren't asks the app to sign them in.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "amount_cents": {
            "description": "The credit_price amount_cents from get_fax that the person agreed to. If the fax's documents changed since, Faxette refuses with price_changed: call get_fax and confirm the new price.",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "id": {
            "description": "The fax's id, from create_fax, get_faxes or get_fax.",
            "minLength": 1,
            "type": "string"
          },
          "immediate_sending_consent": {
            "description": "Required as true for EU credit sends, only after the person explicitly agrees to immediate sending and acknowledges that their right to cancel ends on delivery. Never infer this from agreement to the price alone.",
            "type": "boolean"
          },
          "quote": {
            "description": "The credit_quote returned by get_fax for the exact destination, PDF and price the person reviewed and approved. After quote_changed or quote_required, show the new proof and obtain fresh approval.",
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "quote",
          "id",
          "amount_cents"
        ],
        "type": "object"
      },
      "name": "send_fax"
    },
    {
      "description": null,
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "document_ids": {
            "items": {
              "type": "string"
            },
            "maxItems": 10,
            "minItems": 1,
            "type": "array"
          },
          "id": {
            "minLength": 1,
            "type": "string"
          },
          "review_token": {
            "minLength": 1,
            "type": "string"
          }
        },
        "required": [
          "id",
          "review_token",
          "document_ids"
        ],
        "type": "object"
      },
      "name": "update_fax_review"
    }
  ]
}

What the leaf hashes

{"body":"34d4ffbf54e72c10f92b3088e7bbfd1b5a9e2e075500fd196f4464f01ff507a1","id":1378621,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793406040908198,"prev":1252313,"subject":"a576b9d9-3ad5-4845-965d-f6e5985cbe45","subject_kind":"endpoint"}

Proof

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

  1. 0x85df3dbf8db84cd413dfea671cb90f0f1459ba5222b40d5976f9ff318ec6f624
  2. 0x04fad0df53584368463c52a0c5269ab2aa3f60b84be9dd36f701f6ef18bc84e4
  3. 0x9bd7e489f9599396be59cf6d5363ef068718688d1232e8d78283b08a5770afe3
  4. 0x02ab8ca25d47d24e56f37f3b0acc7637e3aa76eec811d0bec5f88e02b0c2625f
  5. 0x651ce4b34acd7020ca0f490ea82e565ad8176fbf9ccf69657ca46ec00366d5b1
  6. 0x116a3708de9f79919fd985c1c87a35b9c7831811cab247f9050da50bd4c9c8b2
  7. 0xc6f216babfbeebb2125a0b92f2d9d6ec08c75541fee441425f4e680d2407ddae
  8. 0x5afde5b5198c980a807850f8f5d1f9893048f848944fabcf28f2d1f6d869f616
  9. 0x83ae2a1c1988a8091ec7bec9ade889479623fb9a310343856d5dc2df1d293412
  10. 0x6d0d8c6903cd92b709eb14a79a4f531a716f2967d447a7f9c09ffea9b03b4264
  11. 0xf49a9f9616d42406eaf8c6e28bf88666edc505c0bc4c8584072de18a304b1867
  12. 0xfafb97a1e78b1178204f2aa3ec355bd0798084ee2e6893e58ea0011ab04d48c7
  13. 0xcad3c97cf166a2798df8342c196596fa38be5970e65d8bdb79bbec9bde84fdf5
  14. 0xa59dc4109e7747a67ff1c74b854a6a84d4177b254204f0623f549d72e4be7445
  15. 0xb553c856ad5fb96dd995dd0c40f65a2d8efc7b7f254a1ac0f2c104350e544985
  16. 0x919f237dec4df392868ab95f1d4300b185479ae64464cbc2e7385ad1fd6ab390
  17. 0xa00a931d72706fa2402bfc9b441a12eb7c6a61ff42a542916106e3637177f101
  18. 0x59f83f7228f07febe2780660e422e171b0359b8aa031ee3be07e991118130c15
Day root
0x24463725d1c0d9894bd6123691d532547aaa79f0762c0e45aa6a68acf1fd71ab
Chained
0x7d4824ff313dee7252a46f9d5c37b452851deb6c9f24a40c2f74ee0e53c82980
Published
On Arc Testnet, block 70093156: 0xedb7b832f4ebf6781b5ecd2ed241c435b862f4d3761541fa31adc1831b8c44a0

How to check it · This row as JSON