addrbookFor publishers
← The evidence ledger

Evidence row 301838

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 81e0ea04-c41a-4e23-89eb-aa333408f266
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
646663be9d6cd7280b767de70a6c284010eeafeeb182a87b1306917b39691c60
Leaf
0xa0b29cb34030be99115f556f88bc3ac04d1f39530352526a2002e9e3afba93e5

What was observed

{
  "count": 9,
  "tools": [
    {
      "description": "Get the full VerifyMCP trust report for one MCP server: score with per-category verdicts and reasons, the tools it exposes with their context-token cost, and its recent change history. Use before installing or trusting a server. Accepts a package name, endpoint URL, registry name or verifymcp slug.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "identifier": "@modelcontextprotocol/server-github"
          },
          {
            "identifier": "https://mcp.example.com/mcp"
          },
          {
            "component": "npm",
            "identifier": "io.github.acme/tools"
          },
          {
            "identifier": "acme-tools"
          }
        ],
        "properties": {
          "component": {
            "description": "Which channel to report on when a server ships several.",
            "type": "string"
          },
          "identifier": {
            "description": "Package name, endpoint URL, registry name or verifymcp slug.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "get_server"
    },
    {
      "description": "Other MCP servers doing a similar job to a given one, with their trust scores. Neighbours share a product, publisher namespace or category; this is not a semantic search.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "identifier": "@modelcontextprotocol/server-github"
          },
          {
            "identifier": "https://mcp.example.com/mcp"
          },
          {
            "identifier": "acme-tools"
          }
        ],
        "properties": {
          "identifier": {
            "description": "Package name, endpoint URL, registry name or verifymcp slug.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "get_server_alternatives"
    },
    {
      "description": "Compare up to 5 MCP servers side by side: trust scores, per-category breakdown, tool counts and context-token cost. Use when choosing between candidates that do the same job. Accepts package names, endpoint URLs, registry names or verifymcp slugs.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "identifiers": [
              "@acme/mcp-server",
              "@other/mcp-server"
            ]
          },
          {
            "identifiers": [
              "acme-tools",
              "beta-tools",
              "gamma-tools"
            ]
          }
        ],
        "properties": {
          "identifiers": {
            "description": "Two to 5 servers to compare, as names, URLs or slugs.",
            "items": {
              "type": "string"
            },
            "maxItems": 5,
            "minItems": 2,
            "type": "array"
          }
        },
        "required": [
          "identifiers"
        ],
        "type": "object"
      },
      "name": "get_server_comparison"
    },
    {
      "description": "The evidence behind one server's score: TLS, DNSSEC, authorization, redirects, transports, provenance, install scripts, known CVEs and dependency health. Use to explain a low score.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "identifier": "@modelcontextprotocol/server-github"
          },
          {
            "identifier": "https://mcp.example.com/mcp"
          },
          {
            "component": "npm",
            "identifier": "io.github.acme/tools"
          }
        ],
        "properties": {
          "component": {
            "description": "Which channel to report on when a server ships several.",
            "type": "string"
          },
          "identifier": {
            "description": "Package name, endpoint URL, registry name or verifymcp slug.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "get_server_diagnostics"
    },
    {
      "description": "Ready-to-paste install snippets for one MCP server, for every client we support. An MCPB bundle has no launch command, so it returns the download URL, the registry's SHA-256 and commands to verify the file instead. Read get_server first: this returns configuration, not a safety judgement.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "identifier": "@modelcontextprotocol/server-github"
          },
          {
            "identifier": "https://mcp.example.com/mcp"
          },
          {
            "component": "npm",
            "identifier": "acme-tools"
          }
        ],
        "properties": {
          "component": {
            "description": "Which channel to report on when a server ships several.",
            "type": "string"
          },
          "identifier": {
            "description": "Package name, endpoint URL, registry name or verifymcp slug.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "get_server_install_config"
    },
    {
      "description": "Every tool one MCP server exposes, with its parameters, output schema and context-token cost. Use when get_server reported the tool list was truncated.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "identifier": "@modelcontextprotocol/server-github"
          },
          {
            "identifier": "https://mcp.example.com/mcp"
          },
          {
            "component": "npm",
            "identifier": "acme-tools"
          }
        ],
        "properties": {
          "component": {
            "description": "Which channel to report on when a server ships several.",
            "type": "string"
          },
          "identifier": {
            "description": "Package name, endpoint URL, registry name or verifymcp slug.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "get_server_tools"
    },
    {
      "description": "List MCP server components carrying a supply-chain malware finding. Use to check whether anything in the register is flagged before installing.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {},
          {
            "status": "active"
          },
          {
            "status": "all"
          }
        ],
        "properties": {
          "status": {
            "default": "active",
            "description": "Which findings to return: active, unverified, cleared or all. Defaults to active.",
            "enum": [
              "active",
              "unverified",
              "cleared",
              "all"
            ],
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_known_malware"
    },
    {
      "description": "List the products MCP servers integrate with, such as github or notion, and how many servers cover each. Use to find the product slug that list_servers accepts.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {},
          {
            "query": "git"
          },
          {
            "query": "notion"
          }
        ],
        "properties": {
          "query": {
            "description": "Name fragment to match against product names and slugs.",
            "maxLength": 100,
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_products"
    },
    {
      "description": "Filter the VerifyMCP directory of scored MCP servers. Use to discover servers by name fragment, ecosystem, product or trust score. Name matching only: descriptions and capabilities are not searched, so a plain-English question matches nothing. Returns the first 100.",
      "inputSchema": {
        "additionalProperties": false,
        "examples": [
          {
            "query": "github"
          },
          {
            "minScore": 70,
            "product": "github"
          },
          {
            "minScore": 80,
            "sort": "score_desc",
            "types": [
              "remote"
            ]
          },
          {
            "scored": "scored",
            "types": [
              "npm",
              "pypi"
            ]
          },
          {
            "query": "postgres",
            "types": [
              "npm"
            ]
          }
        ],
        "properties": {
          "maxScore": {
            "description": "Highest trust score to include.",
            "maximum": 100,
            "minimum": 0,
            "type": "integer"
          },
          "minScore": {
            "description": "Lowest trust score to include.",
            "maximum": 100,
            "minimum": 0,
            "type": "integer"
          },
          "product": {
            "description": "Restrict to servers classified as working with this product, e.g. github.",
            "type": "string"
          },
          "query": {
            "description": "Name fragment to match against server and package names.",
            "maxLength": 100,
            "type": "string"
          },
          "scored": {
            "default": "scored",
            "description": "Include unscored servers. Defaults to scored only.",
            "enum": [
              "scored",
              "unscored",
              "all"
            ],
            "type": "string"
          },
          "sort": {
            "description": "Default: best match (then trust) with a query, else trust. A given sort is applied exactly.",
            "enum": [
              "score_desc",
              "score_asc",
              "name_asc",
              "name_desc",
              "channels_asc",
              "channels_desc"
            ],
            "type": "string"
          },
          "types": {
            "description": "Restrict to these ecosystems; a server matches any one of them.",
            "items": {
              "enum": [
                "remote",
                "npm",
                "pypi",
                "oci",
                "nuget",
                "mcpb"
              ],
              "type": "string"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "name": "list_servers"
    }
  ]
}

What the leaf hashes

{"body":"646663be9d6cd7280b767de70a6c284010eeafeeb182a87b1306917b39691c60","id":301838,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793054313303986,"prev":null,"subject":"81e0ea04-c41a-4e23-89eb-aa333408f266","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. 0xa0b284d07e6d6c1b9fc21ca0de1ba2f795caa29ae52b8f185e4a8541effd59b4
  2. 0x7a9232150d85dc20037ba73c66258d20516b93dedb114eb1d27acbb74dba8272
  3. 0x2ab6dfc1a08bf842a54e991be87ac449b46912397cbc110df25725c391f3a502
  4. 0x7a01fcd0cc4a76f3f89d2daf5de899afcdc6ca955576d57c00650747a09d2d7f
  5. 0x12fa6e866b65ca8aff3001ccccb8220ec717dd38894fe0bf0e15137c13e79dc2
  6. 0x2d8b03b62abc4fbebe3d561014745024a7538f177e24f2a578fcf410aac0821b
  7. 0x40f3fea8fa975220e036aa5fbf4148ca9f663d11ef00ec96ad6a3319bb16a428
  8. 0x5e105a4018bf989128695543271cad66d3545d6219f50f1d6e76125af80c3f03
  9. 0x656efeb7d96e50aeb0381af9e9cce10bc5892a86ec74eee8952a09201c5f9ffd
  10. 0x848cf5e604d5f0c62cc02d3abe512164430820fceefd529d003cbca06e431809
  11. 0x6e2c6fb1ec16c0d8a0fa917725bdfc512e7ed9f39e77d64f0a911d30e68a27de
  12. 0x95576cc3dd18642c859f679cefa1cf80bfc6c690b065916c3585b14e8ef4b1b3
  13. 0xf8d3e004d9a208d2c5e82ab676956d80f8a3c78387c61dad15a3a8269efee0d8
  14. 0x6713795704ddd9c528d421fadd9cc96b0200a4ddbba84f88e718d4968dde888b
  15. 0x62a900133713919f4eed33d8336876b7a6d538233b8a4f3ed03b29aa44f5bad0
  16. 0x1ac20d30773e1f4f2f811540e9a99b5cca9177c9e2e029acc0d80cf3f1d11f0f
  17. 0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9
  18. 0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f
  19. 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
Day root
0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
Chained
0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
Published
On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae

How to check it · This row as JSON