addrbookFor publishers
← The evidence ledger

Evidence row 300627

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint da06cffd-046d-4b2d-a5d9-78984cdd28d0
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
28344c1e2a1918967415259f867d85ba9b13ec105d3fda62de1637ad0795f736
Leaf
0xb8d55a0fa8b9d5a562fd3c3e07f78de0529abb7630fe15637dbe4ec738e0f560

What was observed

{
  "count": 20,
  "tools": [
    {
      "description": "Create a client or supplier contact. Give either organisation_name, or first_name and last_name. FreeAgent: POST /v2/contacts.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "address1": {
            "description": "Address line 1.",
            "type": "string"
          },
          "address2": {
            "description": "Address line 2.",
            "type": "string"
          },
          "address3": {
            "description": "Address line 3.",
            "type": "string"
          },
          "billing_email": {
            "description": "Email address invoices are sent to.",
            "type": "string"
          },
          "charge_sales_tax": {
            "description": "Whether to charge VAT/sales tax.",
            "enum": [
              "Auto",
              "Always",
              "Never"
            ],
            "type": "string"
          },
          "contact_name_on_invoices": {
            "description": "Show the contact's name on invoices.",
            "type": "boolean"
          },
          "country": {
            "description": "Country name, e.g. United Kingdom.",
            "type": "string"
          },
          "default_payment_terms_in_days": {
            "description": "Default payment terms for invoices to this contact.",
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          "email": {
            "description": "Email address.",
            "type": "string"
          },
          "first_name": {
            "description": "Contact first name.",
            "type": "string"
          },
          "last_name": {
            "description": "Contact last name.",
            "type": "string"
          },
          "locale": {
            "description": "Invoice language locale, e.g. en.",
            "type": "string"
          },
          "mobile": {
            "description": "Mobile number.",
            "type": "string"
          },
          "organisation_name": {
            "description": "Organisation / company name.",
            "type": "string"
          },
          "phone_number": {
            "description": "Phone number.",
            "type": "string"
          },
          "postcode": {
            "description": "Postcode.",
            "type": "string"
          },
          "region": {
            "description": "Region / county.",
            "type": "string"
          },
          "sales_tax_registration_number": {
            "description": "The contact's VAT registration number.",
            "type": "string"
          },
          "town": {
            "description": "Town or city.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_create_contact"
    },
    {
      "description": "Create a sales invoice in DRAFT status. Nothing is sent to the customer and nothing is posted as income until it is marked sent in FreeAgent; a draft can be edited or discarded there. FreeAgent: POST /v2/invoices.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "comments": {
            "description": "Comments printed on the invoice.",
            "type": "string"
          },
          "contact": {
            "description": "The contact being invoiced's numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "currency": {
            "description": "ISO currency code, e.g. GBP (defaults to the company currency).",
            "maxLength": 3,
            "minLength": 3,
            "type": "string"
          },
          "dated_on": {
            "description": "Invoice date (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "discount_percent": {
            "description": "Whole-invoice discount percentage.",
            "maximum": 100,
            "minimum": 0,
            "type": "number"
          },
          "due_on": {
            "description": "Explicit due date, if not derived from payment terms (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "exchange_rate": {
            "description": "Exchange rate for a foreign-currency invoice.",
            "exclusiveMinimum": 0,
            "type": "number"
          },
          "invoice_items": {
            "description": "The invoice lines.",
            "items": {
              "properties": {
                "description": {
                  "description": "Line description.",
                  "type": "string"
                },
                "item_type": {
                  "description": "Unit type of the line (e.g. Hours, Days, Services, Products).",
                  "enum": [
                    "Hours",
                    "Days",
                    "Weeks",
                    "Months",
                    "Years",
                    "Products",
                    "Services",
                    "Training",
                    "Expenses",
                    "Comment",
                    "Bills",
                    "Discount",
                    "Credit",
                    "VAT",
                    "Stock"
                  ],
                  "type": "string"
                },
                "price": {
                  "description": "Unit price, in the invoice currency (required for non time-based items).",
                  "type": "number"
                },
                "quantity": {
                  "description": "Quantity (default 0).",
                  "type": "number"
                },
                "sales_tax_rate": {
                  "description": "VAT rate percentage for this line, e.g. 20.",
                  "minimum": 0,
                  "type": "number"
                }
              },
              "required": [
                "description"
              ],
              "type": "object"
            },
            "minItems": 1,
            "type": "array"
          },
          "payment_terms_in_days": {
            "description": "Payment terms in days; 0 = due on receipt.",
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          "po_reference": {
            "description": "The customer's purchase-order reference.",
            "type": "string"
          },
          "project": {
            "description": "The project's numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "reference": {
            "description": "Invoice reference/number; omit to use the next in sequence.",
            "type": "string"
          }
        },
        "required": [
          "contact",
          "dated_on",
          "payment_terms_in_days",
          "invoice_items"
        ],
        "type": "object"
      },
      "name": "freeagent_create_draft_invoice"
    },
    {
      "description": "Log time against a project task for a user. Get the user from freeagent_get_current_user and the task from freeagent_list_tasks. Editable or removable in FreeAgent afterwards. FreeAgent: POST /v2/timeslips.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "comment": {
            "description": "What the time was spent on.",
            "type": "string"
          },
          "dated_on": {
            "description": "Day the work was done (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "hours": {
            "description": "Hours worked, e.g. 1.5.",
            "exclusiveMinimum": 0,
            "maximum": 24,
            "type": "number"
          },
          "project": {
            "description": "The project's numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "task": {
            "description": "The task's numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "user": {
            "description": "The user's numeric id or full FreeAgent URL.",
            "type": "string"
          }
        },
        "required": [
          "user",
          "project",
          "task",
          "dated_on",
          "hours"
        ],
        "type": "object"
      },
      "name": "freeagent_create_timeslip"
    },
    {
      "description": "Balance sheet — capital and current assets, liabilities and owners' equity — as at a date (default today). FreeAgent: GET /v2/accounting/balance_sheet.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "as_at_date": {
            "description": "Balance sheet date (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_get_balance_sheet"
    },
    {
      "description": "Fetch the FreeAgent company these credentials belong to — name, type (e.g. UkLimitedCompany), currency, start date and VAT registration status. A cheap way to confirm the setup works. FreeAgent: GET /v2/company.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "freeagent_get_company"
    },
    {
      "description": "Fetch a single contact by id or URL. FreeAgent: GET /v2/contacts/:id.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "contact": {
            "description": "The contact's numeric id or full FreeAgent URL.",
            "type": "string"
          }
        },
        "required": [
          "contact"
        ],
        "type": "object"
      },
      "name": "freeagent_get_contact"
    },
    {
      "description": "Fetch the FreeAgent user the token acts as, including their URL (needed for freeagent_create_timeslip) and permission level. FreeAgent: GET /v2/users/me.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "freeagent_get_current_user"
    },
    {
      "description": "Fetch a single invoice by id or URL, with its line items, totals, due and paid values. FreeAgent: GET /v2/invoices/:id.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "invoice": {
            "description": "The invoice's numeric id or full FreeAgent URL.",
            "type": "string"
          }
        },
        "required": [
          "invoice"
        ],
        "type": "object"
      },
      "name": "freeagent_get_invoice"
    },
    {
      "description": "Profit and loss summary — income, expenses, operating and retained profit — for a date range or an accounting period (defaults to the current year to date). FreeAgent: GET /v2/accounting/profit_and_loss/summary.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "accounting_period": {
            "description": "An accounting year instead of dates, e.g. 2025/26.",
            "pattern": "^\\d{4}\\/\\d{2}$",
            "type": "string"
          },
          "from_date": {
            "description": "Period start (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "to_date": {
            "description": "Period end (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_get_profit_and_loss"
    },
    {
      "description": "List upcoming tax deadlines and amounts due — VAT returns, corporation tax, self assessment and so on. FreeAgent: GET /v2/company/tax_timeline.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {},
        "type": "object"
      },
      "name": "freeagent_get_tax_timeline"
    },
    {
      "description": "List bank, credit-card and PayPal accounts with their current balances. Use an account's URL with freeagent_list_bank_transactions. FreeAgent: GET /v2/bank_accounts.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "view": {
            "description": "Only one kind of account.",
            "enum": [
              "standard_bank_accounts",
              "credit_card_accounts",
              "paypal_accounts"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_bank_accounts"
    },
    {
      "description": "List the transactions on one bank account, e.g. view=unexplained for what still needs reconciling. FreeAgent: GET /v2/bank_transactions?bank_account=….",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "bank_account": {
            "description": "The bank account's numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "from_date": {
            "description": "Transactions dated on or after (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "last_uploaded": {
            "description": "Only transactions from the latest statement upload.",
            "type": "boolean"
          },
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "to_date": {
            "description": "Transactions dated on or before (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "view": {
            "description": "Filter (default all). unexplained = not yet reconciled.",
            "enum": [
              "all",
              "unexplained",
              "explained",
              "manual",
              "imported",
              "marked_for_review"
            ],
            "type": "string"
          }
        },
        "required": [
          "bank_account"
        ],
        "type": "object"
      },
      "name": "freeagent_list_bank_transactions"
    },
    {
      "description": "List supplier bills (purchases), optionally by date range, contact or project, filtered by status. FreeAgent: GET /v2/bills.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "contact": {
            "description": "Only for this contact — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "from_date": {
            "description": "Bills dated on or after (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "nested_bill_items": {
            "description": "Include each bill's line items.",
            "type": "boolean"
          },
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "project": {
            "description": "Only for this project — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "to_date": {
            "description": "Bills dated on or before (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "view": {
            "description": "Filter by status.",
            "enum": [
              "all",
              "open",
              "overdue",
              "open_or_overdue",
              "open_or_overdue_payments",
              "open_or_overdue_refunds",
              "paid",
              "recurring",
              "hire_purchase",
              "cis"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_bills"
    },
    {
      "description": "List contacts (clients and suppliers), with their account balance. FreeAgent: GET /v2/contacts.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "sort": {
            "description": "Sort order; a leading - means descending.",
            "enum": [
              "name",
              "-name",
              "created_at",
              "-created_at",
              "updated_at",
              "-updated_at"
            ],
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "view": {
            "description": "Filter (default active). open_clients = clients with unpaid invoices.",
            "enum": [
              "all",
              "active",
              "clients",
              "suppliers",
              "active_projects",
              "completed_projects",
              "open_clients",
              "open_suppliers",
              "hidden"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_contacts"
    },
    {
      "description": "List expense claims (out-of-pocket spending and mileage), optionally by date range or project. FreeAgent: GET /v2/expenses.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "from_date": {
            "description": "Expenses dated on or after (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "project": {
            "description": "Only for this project — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "to_date": {
            "description": "Expenses dated on or before (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "view": {
            "description": "recent or recurring expenses.",
            "enum": [
              "recent",
              "recurring"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_expenses"
    },
    {
      "description": "List sales invoices, optionally for one contact or project, filtered by status. FreeAgent: GET /v2/invoices.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "contact": {
            "description": "Only for this contact — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "nested_invoice_items": {
            "description": "Include each invoice's line items.",
            "type": "boolean"
          },
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "project": {
            "description": "Only for this project — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "sort": {
            "description": "Sort order (default created_at); a leading - means descending.",
            "enum": [
              "created_at",
              "-created_at",
              "updated_at",
              "-updated_at"
            ],
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "view": {
            "description": "Filter: all, recent_open_or_overdue, open, overdue, open_or_overdue, draft, paid, scheduled_to_email, thank_you_emails, reminder_emails, or last_N_months (e.g. last_3_months).",
            "pattern": "^(all|recent_open_or_overdue|open|overdue|open_or_overdue|draft|paid|scheduled_to_email|thank_you_emails|reminder_emails|last_\\d+_months)$",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_invoices"
    },
    {
      "description": "List projects, optionally for one contact. FreeAgent: GET /v2/projects.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "contact": {
            "description": "Only for this contact — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "nested": {
            "description": "Embed the related contact instead of its URL.",
            "type": "boolean"
          },
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "sort": {
            "description": "Sort order; a leading - means descending.",
            "enum": [
              "name",
              "-name",
              "contact_name",
              "-contact_name",
              "contact_display_name",
              "-contact_display_name",
              "created_at",
              "-created_at",
              "updated_at",
              "-updated_at"
            ],
            "type": "string"
          },
          "view": {
            "description": "Filter by status.",
            "enum": [
              "active",
              "completed",
              "cancelled",
              "hidden"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_projects"
    },
    {
      "description": "List project tasks with their billing rates, optionally for one project. A task's URL is needed for freeagent_create_timeslip. FreeAgent: GET /v2/tasks.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "project": {
            "description": "Only for this project — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "sort": {
            "description": "Sort order (default name).",
            "enum": [
              "name",
              "project",
              "billing_rate",
              "created_at",
              "updated_at"
            ],
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "view": {
            "description": "Filter by status (default all).",
            "enum": [
              "all",
              "active",
              "completed",
              "hidden"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_tasks"
    },
    {
      "description": "List logged time, optionally by date range, user, task or project; view=unbilled for time not yet invoiced. FreeAgent: GET /v2/timeslips.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "from_date": {
            "description": "Timeslips dated on or after (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "nested": {
            "description": "Embed related user, task and project instead of URLs.",
            "type": "boolean"
          },
          "page": {
            "description": "Page number, starting at 1.",
            "maximum": 9007199254740991,
            "minimum": 1,
            "type": "integer"
          },
          "per_page": {
            "description": "Items per page, 1-100 (default 25).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "project": {
            "description": "Only for this project — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "task": {
            "description": "Only for this task — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "to_date": {
            "description": "Timeslips dated on or before (YYYY-MM-DD).",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
            "type": "string"
          },
          "updated_since": {
            "description": "Only records updated since this ISO 8601 timestamp, e.g. 2026-01-01T00:00:00Z.",
            "type": "string"
          },
          "user": {
            "description": "Only for this user — its numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "view": {
            "description": "Filter (default all).",
            "enum": [
              "all",
              "unbilled",
              "running"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "freeagent_list_timeslips"
    },
    {
      "description": "Update fields on an existing contact; only the fields you pass change. status=Hidden hides it (reversible with Active). FreeAgent: PUT /v2/contacts/:id.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "address1": {
            "description": "Address line 1.",
            "type": "string"
          },
          "address2": {
            "description": "Address line 2.",
            "type": "string"
          },
          "address3": {
            "description": "Address line 3.",
            "type": "string"
          },
          "billing_email": {
            "description": "Email address invoices are sent to.",
            "type": "string"
          },
          "charge_sales_tax": {
            "description": "Whether to charge VAT/sales tax.",
            "enum": [
              "Auto",
              "Always",
              "Never"
            ],
            "type": "string"
          },
          "contact": {
            "description": "The contact's numeric id or full FreeAgent URL.",
            "type": "string"
          },
          "contact_name_on_invoices": {
            "description": "Show the contact's name on invoices.",
            "type": "boolean"
          },
          "country": {
            "description": "Country name, e.g. United Kingdom.",
            "type": "string"
          },
          "default_payment_terms_in_days": {
            "description": "Default payment terms for invoices to this contact.",
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          "email": {
            "description": "Email address.",
            "type": "string"
          },
          "first_name": {
            "description": "Contact first name.",
            "type": "string"
          },
          "last_name": {
            "description": "Contact last name.",
            "type": "string"
          },
          "locale": {
            "description": "Invoice language locale, e.g. en.",
            "type": "string"
          },
          "mobile": {
            "description": "Mobile number.",
            "type": "string"
          },
          "organisation_name": {
            "description": "Organisation / company name.",
            "type": "string"
          },
          "phone_number": {
            "description": "Phone number.",
            "type": "string"
          },
          "postcode": {
            "description": "Postcode.",
            "type": "string"
          },
          "region": {
            "description": "Region / county.",
            "type": "string"
          },
          "sales_tax_registration_number": {
            "description": "The contact's VAT registration number.",
            "type": "string"
          },
          "status": {
            "description": "Hide or unhide the contact.",
            "enum": [
              "Active",
              "Hidden"
            ],
            "type": "string"
          },
          "town": {
            "description": "Town or city.",
            "type": "string"
          }
        },
        "required": [
          "contact"
        ],
        "type": "object"
      },
      "name": "freeagent_update_contact"
    }
  ]
}

What the leaf hashes

{"body":"28344c1e2a1918967415259f867d85ba9b13ec105d3fda62de1637ad0795f736","id":300627,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793053560980012,"prev":null,"subject":"da06cffd-046d-4b2d-a5d9-78984cdd28d0","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. 0xb8d4db7c2d56c075b19226cb12afdf0c1627d5894ffb464e9900f1ba41ebad08
  2. 0x6c58f15a874d8058ea220bf877ecad4d2582feb9186eeea9e54a52d34b8ae2ab
  3. 0x516cddfa606e01d95cbf98848c5bc3927d4ff96e54655406e8df9eefcd2e9c32
  4. 0x0a76b22d0f05f4b57c39ba3f286ff7d6f492cbf8a0b3bec151f414c7a7037860
  5. 0xa3a18301470b7031d0b16f39c3fcbd356ebefcb167f528b27249c1a4d0b77b46
  6. 0x18987ac066ce5db8c276ab1b332e98c2d86f218cef63c9826804087b9e43a127
  7. 0x043b303a86320cc4fc6e5c8a97657fbd32da8ea8e97b11d2697098d7e5c38061
  8. 0xcfb0029c40c5ac7d0cc542853a144b9b134585d3dd58d2ae9a35beeeca4af4e4
  9. 0x37e517ac81eae3b7334c27f90ebc74468b578b4dcd792ca4638218e0f7f6daa2
  10. 0x258835beede438ebebc963b639363480e6d4ea3839ccb62aeaaad82cefc2fe04
  11. 0xcf50b54d8921f0c22877e0b8d6b8393a1954218f000f7cac374e9f40a024f700
  12. 0xb6efd79902cac6d5a402ebecb8069402f00961ab80cd71b4d647fbc686d975ec
  13. 0x2f43fe2b2533a5f40c107c114e458e226102f5f8ae91f097e964345880e30928
  14. 0xf692ce2b0a640ec9f75aa960e5fb1c2c7091a04e24881798735752c19014e519
  15. 0x9f68b5e15459cb62b8c0cd4c124fa61c74147b4a5755a200fbecd21a581635d1
  16. 0x123ec8bee20ddc55223eeef5a4f4d6c4b6416515adbb911c56759f5cde56e452
  17. 0xd0651cb9bc8155eb52b5247d506e74b8a935057dc190ba52091702ac25ed3a40
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON