addrbookFor publishers
← The evidence ledger

Evidence row 1737763

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint 6a4b20d4-5516-4b7b-8fb9-ac94e769e08b
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
768862fc5f77a1b576abdf4d8addeaa230e412822de827cd60f737c6a078ba92
Leaf
0x274357995bf181679fc9917e399bd0c2d0716d5bd5f4421c2a43e121fc6d9375

What was observed

{
  "count": 4,
  "tools": [
    {
      "description": "Look up the verdict the public catalogue has published for an MCP server package on npm or PyPI. Returns found:false when the catalogue has no published verdict for that name; that is not a clean result. Nothing is downloaded or scanned. This request names the package to the server; to match without naming it, download /api/reputation-feed.json and match on your side.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "ecosystem": {
            "description": "The package registry",
            "enum": [
              "npm",
              "pypi"
            ],
            "type": "string"
          },
          "name": {
            "description": "The package name",
            "maxLength": 214,
            "type": "string"
          },
          "version": {
            "description": "Optional: the version you plan to install; the reply says whether the published verdict is for it",
            "maxLength": 100,
            "type": "string"
          }
        },
        "required": [
          "ecosystem",
          "name"
        ],
        "type": "object"
      },
      "name": "lookup_verdict"
    },
    {
      "description": "Check a pasted MCP client config (.mcp.json, claude_desktop_config.json, mcp.json, Codex config.toml). Reports each npm or PyPI launch by its position and how its version is pinned (exact, @latest, a tag or range, none), flags releases on the known-compromised list, and runs static analysis over the text. Server names, package names, arguments, env and header values are never returned or stored; remove secrets before sending anyway. Static analysis only; nothing is run or fetched. Returns a verdict (CLEAN, CAUTION, REVIEW, DO-NOT-INSTALL or NAME-NOT-PUBLISHED), the pinning advice and a permalink.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "filename": {
            "description": "The config's filename, ending in .json or .toml (default .mcp.json)",
            "maxLength": 100,
            "type": "string"
          },
          "text": {
            "description": "The config file's text",
            "maxLength": 1000000,
            "type": "string"
          }
        },
        "required": [
          "text"
        ],
        "type": "object"
      },
      "name": "scan_mcp_config"
    },
    {
      "description": "Download one published package and run static analysis on its code with MoorAI's open-source engine. npm and PyPI packages also get ten MCP pre-install checks on their registry metadata, a reputation score and a known-compromised release check. Static analysis only: the package is never installed and the server is never run. Returns a verdict (CLEAN, CAUTION, REVIEW, DO-NOT-INSTALL or NAME-NOT-PUBLISHED), content-free findings (threat ids, categories, file paths, hashes; never file contents) and a permalink. The package name and version are sent to its registry. A completed analysis is reused for 24 hours; a new one can take a minute and runs one at a time.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "ref": {
            "description": "npm:<name>[@version], pypi:<name>[==version] or github:<owner>/<repo>/<path>[@ref] (a folder, not a whole repository)",
            "maxLength": 300,
            "type": "string"
          }
        },
        "required": [
          "ref"
        ],
        "type": "object"
      },
      "name": "scan_package"
    },
    {
      "description": "Scan one agent skill or instruction file (SKILL.md, AGENTS.md, a tool.json, any text file) with MoorAI's open-source engine. Static analysis only; nothing is run. The text is written to a temporary directory, scanned and deleted; only its hash, the verdict and content-free findings are kept. Returns a verdict (CLEAN, CAUTION, REVIEW, DO-NOT-INSTALL or NAME-NOT-PUBLISHED), the findings and a permalink.",
      "inputSchema": {
        "additionalProperties": false,
        "properties": {
          "filename": {
            "description": "The file's name, which sets how it is analysed (default SKILL.md)",
            "maxLength": 100,
            "type": "string"
          },
          "text": {
            "description": "The file's text",
            "maxLength": 1000000,
            "type": "string"
          }
        },
        "required": [
          "text"
        ],
        "type": "object"
      },
      "name": "scan_skill"
    }
  ]
}

What the leaf hashes

{"body":"768862fc5f77a1b576abdf4d8addeaa230e412822de827cd60f737c6a078ba92","id":1737763,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793507645899832,"prev":null,"subject":"6a4b20d4-5516-4b7b-8fb9-ac94e769e08b","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