addrbookFor publishers
← The evidence ledger

Evidence row 257309

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint e0c27cd4-06d2-425c-b109-f17f3e1e7d4c
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
1a19a10088944728660a88125e85acdf1b3ea26e2011cea18c59dd9de40ae341
Leaf
0x9e839f05d0ddca270309893c3bed19e68e44cf0cee38d464c625af577968df43

What was observed

{
  "count": 4,
  "tools": [
    {
      "description": "Given a topic, concept, or an existing kirupa.com tutorial URL/slug, find related kirupa.com tutorials with ready-to-use Markdown links and summaries.",
      "inputSchema": {
        "properties": {
          "limit": {
            "default": 6,
            "description": "Maximum number of related links to return (1 to 15, default 6).",
            "maximum": 15,
            "minimum": 1,
            "type": "integer"
          },
          "topic_or_url": {
            "description": "A topic phrase (e.g. \"graph traversal algorithms\") or an existing kirupa.com tutorial URL/slug to find neighbors for.",
            "type": "string"
          }
        },
        "required": [
          "topic_or_url"
        ],
        "type": "object"
      },
      "name": "find_related_links"
    },
    {
      "description": "Fetch the complete, clean Markdown text and extracted code blocks of a kirupa.com tutorial by its URL, section/slug identifier (e.g. \"javascript/closures_in_javascript\"), slug, or title.",
      "inputSchema": {
        "properties": {
          "code_only": {
            "default": false,
            "description": "When true, returns only the extracted fenced code snippets and metadata instead of the full tutorial text.",
            "type": "boolean"
          },
          "identifier": {
            "description": "Tutorial URL (e.g. \"https://www.kirupa.com/html5/animating_with_requestAnimationFrame.htm\"), section/slug (\"html5/animating_with_requestAnimationFrame\"), slug (\"animating_with_requestAnimationFrame\"), or title.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "get_tutorial"
    },
    {
      "description": "List all topic sections on kirupa.com with tutorial counts and sample articles, or list the tutorials inside a specific section.",
      "inputSchema": {
        "properties": {
          "limit": {
            "default": 25,
            "description": "Maximum number of tutorials to list when a section is specified (default 25, max 100).",
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "section": {
            "description": "Optional section slug (e.g. \"data_structures_algorithms\", \"canvas\", \"javascript\", \"animations\", \"html5\", \"react\") to list tutorials from.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "list_sections"
    },
    {
      "description": "Search hundreds of tutorials and articles on kirupa.com covering JavaScript, TypeScript, CSS, HTML5 Canvas, animations, React, and data structures & algorithms using full-text search (FTS5 + BM25). Returns matching tutorials with canonical URLs, clean Markdown URLs, matching section headings, and excerpts.",
      "inputSchema": {
        "properties": {
          "limit": {
            "default": 5,
            "description": "Maximum number of tutorials to return (1 to 15, default 5).",
            "maximum": 15,
            "minimum": 1,
            "type": "integer"
          },
          "query": {
            "description": "Keywords, concept, or technical question to search for (e.g. \"requestAnimationFrame delta time\", \"quicksort\", \"canvas starfield\", \"closures\").",
            "type": "string"
          },
          "section": {
            "description": "Optional section filter: data_structures_algorithms, javascript, html5, canvas, animations, react, codingexercises, ai, product_development, podcast, or hodgepodge.",
            "type": "string"
          }
        },
        "required": [
          "query"
        ],
        "type": "object"
      },
      "name": "search_tutorials"
    }
  ]
}

What the leaf hashes

{"body":"1a19a10088944728660a88125e85acdf1b3ea26e2011cea18c59dd9de40ae341","id":257309,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793029643450059,"prev":null,"subject":"e0c27cd4-06d2-425c-b109-f17f3e1e7d4c","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