addrbookFor publishers
← The evidence ledger

Evidence row 579944

Observed , by probe.mcp/1.

Kind
mcp.tools
About
endpoint a1783fce-fce6-452d-ab69-dd6e17155988
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
bca58fc05bed86e6768acd1b04cd36560bd2c801746875e95b585f5b4f3542f4
Leaf
0x580c3b0e29083bb72c39b526b837f975c21249e017dc2f94892e896555dfe92a

What was observed

{
  "count": 7,
  "tools": [
    {
      "description": "Filter Pokémon by generation, type, regional pokédex, or egg group. Returns names and PokéAPI IDs; every returned name works as a pokeapi_get_pokemon identifier, where a species name resolves to its default variety. At least one of generation, type, pokedex, or egg_group is required; the ones provided are combined with AND logic, and query adds strict token matching on name within them. A call with no category filter, with or without query, returns an empty result and a notice naming the requirement.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "egg_group": {
            "description": "Egg group name (e.g. \"monster\", \"fairy\", \"dragon\"). Filters to Pokémon in this egg group.",
            "type": "string"
          },
          "generation": {
            "description": "Generation name (e.g. \"generation-i\", \"generation-iii\"). Filters to Pokémon introduced in this generation.",
            "type": "string"
          },
          "limit": {
            "default": 50,
            "description": "Maximum results to return. Positive integer; defaults to 50.",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991,
            "type": "integer"
          },
          "offset": {
            "default": 0,
            "description": "Offset into the filtered result set for pagination. Non-negative integer; defaults to 0.",
            "maximum": 9007199254740991,
            "minimum": 0,
            "type": "integer"
          },
          "pokedex": {
            "description": "Regional pokédex name (e.g. \"kanto\", \"hoenn\", \"galar\"). Filters to entries in that dex.",
            "type": "string"
          },
          "query": {
            "description": "Strict token match on name. \"chu\" matches \"pikachu\" and \"raichu\". Case-insensitive. At most 100 characters; whitespace separates tokens, and every token must match.",
            "maxLength": 100,
            "type": "string"
          },
          "type": {
            "description": "Type name (e.g. \"fire\", \"psychic\"). Filters to Pokémon of this type.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "pokeapi_find_pokemon"
    },
    {
      "description": "Get ability details by name or numeric ID — full English effect text, short effect text, generation introduced, and the list of Pokémon that have the ability (including hidden-ability flag and slot). Ability names are returned by pokeapi_get_pokemon in the abilities array.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "identifier": {
            "description": "Ability name in lowercase hyphenated form (e.g. \"overgrow\", \"speed-boost\") or numeric ID as a string.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "pokeapi_get_ability"
    },
    {
      "description": "Get item details by name or numeric ID — effect text, category, versioned purchase and sell prices, fling power, item attributes (holdable, consumable, etc.), sprite URL, and Pokémon that commonly hold it.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "identifier": {
            "description": "Item name in lowercase hyphenated form (e.g. \"choice-specs\", \"leftovers\") or numeric ID as a string.",
            "type": "string"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "pokeapi_get_item"
    },
    {
      "description": "Get move details by name or numeric ID — type, damage class, power, accuracy, PP, priority, target, stat changes, status-effect chance, and full English effect text. Set include_learners=true to include the list of Pokémon that can learn the move. Move names are available from pokeapi_get_pokemon when include_moves=true.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "identifier": {
            "description": "Move name in lowercase hyphenated form (e.g. \"flamethrower\", \"close-combat\") or numeric ID as a string.",
            "type": "string"
          },
          "include_learners": {
            "default": false,
            "description": "Include the list of Pokémon that can learn this move. Defaults to false as the list can be large.",
            "type": "boolean"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "pokeapi_get_move"
    },
    {
      "description": "Get nature details — the stat boosted (+10%), stat reduced (-10%), and preferred/disliked berry flavors. Omit the identifier to list all 25 natures at once. Natures are critical for competitive team-building: every non-neutral nature modifies two stats by ±10%.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "identifier": {
            "description": "Nature name (e.g. \"modest\", \"jolly\") or ID 1–25 as a string. Omit to list all 25 natures.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "pokeapi_get_nature"
    },
    {
      "description": "Get a fully denormalized Pokémon dossier in a single call — base stats, types, abilities (with full English effect text), height/weight, resolved evolution chain, sprite URLs including official artwork, species flavor text, variety list, capture rate, growth rate, gender rate, legendary/mythical flags, egg groups, and (optionally) a summarized learnable-move list. Accepts a name (lowercase, hyphens for spaces, e.g. \"bulbasaur\", \"mr-mime\") or PokéAPI Pokémon-record ID. A species name with no Pokémon record of its own (e.g. \"deoxys\") resolves to the default variety of that species (\"deoxys-normal\"), reported in resolvedFromSpecies. Set include_moves=true to include the move summary (large); defaults to false. Use game_version to select flavor text from a specific game (e.g. \"sword\", \"red\"); falls back to the most recent English entry when the version is not found. Use pokeapi_find_pokemon to discover Pokémon by type, generation, or egg group before calling this tool.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "game_version": {
            "description": "PokéAPI version name to filter flavor text (e.g. \"sword\", \"red\", \"scarlet\"). Falls back to the most recent English entry when the version is not found.",
            "type": "string"
          },
          "identifier": {
            "description": "Pokémon name (lowercase hyphenated, e.g. \"bulbasaur\", \"charizard-mega-x\") or PokéAPI Pokémon-record ID as a string (e.g. \"1\", \"10034\"). A species name (e.g. \"deoxys\") resolves to its default variety.",
            "type": "string"
          },
          "include_moves": {
            "default": false,
            "description": "Include the full learnable-move summary. Defaults to false because the list is large (100–200+ moves).",
            "type": "boolean"
          }
        },
        "required": [
          "identifier"
        ],
        "type": "object"
      },
      "name": "pokeapi_get_pokemon"
    },
    {
      "description": "Get the full offensive and defensive type effectiveness breakdown. Provide either a type name (e.g. \"fire\", \"psychic\") or a Pokémon identifier (name or PokéAPI Pokémon-record ID; a species name resolves to its default variety). For dual-type Pokémon, the defensive multipliers are correctly composed (e.g. Fire/Flying vs Rock = 4× because both types are weak to Rock). Exactly one of type or pokemon must be provided.",
      "inputSchema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "additionalProperties": false,
        "properties": {
          "pokemon": {
            "description": "Pokémon name or PokéAPI Pokémon-record ID; a species name resolves to its default variety. The server resolves the types automatically. Provide this or type, not both.",
            "type": "string"
          },
          "type": {
            "description": "Type name in lowercase (e.g. \"fire\", \"water\", \"psychic\"). Provide this or pokemon, not both.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "name": "pokeapi_get_type_matchups"
    }
  ]
}

What the leaf hashes

{"body":"bca58fc05bed86e6768acd1b04cd36560bd2c801746875e95b585f5b4f3542f4","id":579944,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793143573212257,"prev":null,"subject":"a1783fce-fce6-452d-ab69-dd6e17155988","subject_kind":"endpoint"}

Proof

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

  1. 0x580c472ec41845a42c79ec117699e928915915c88fa74a6da83dada7563b924e
  2. 0xd2a7742e4bdfb37514adf69e0c013fa11dd5990f2fc0298cd4ded42bc1c269e7
  3. 0xfec4113541387bcf9ca137fa8ebf29a0b0442393b7a50cd16b67ef130445d6b0
  4. 0x4aca57925095bb6add832ac51cb03cf36abfa8855707371dec23cfca1bf827b8
  5. 0xfb8ffc4eace5770e7e5da933e4f7774ae0700dce4c2e763dbd9b205932cb5b40
  6. 0x31f25a82ca2312347280bfb0e2d2e143c3f7a4f63bb486f9633b99ec75cff0f9
  7. 0xbe39a9cb48c7e2386c9b0533944f99dc246a32496dd273ac9cb30a16d1064aba
  8. 0x743f059881f0ab6a8d2aa1f9aa80fcb8389948b02172d22c304d0922888ccd0c
  9. 0xaf8711a5b58c99c2c969a8b25f7c63035a99268b69da1dc658f1be99bd238dcb
  10. 0x3e536a21a54129c3d537ab27a6e8adb27ba650285093a4f596a22d85b6ad7488
  11. 0xe678c1cc136e18a65726dc5a13892d1977e8fac2970f7a2b8d2866a8ab83ef02
  12. 0xe06cb1b692af263d62f5739bc4ad709ffe5a2576ef5a59a1610d50c03c7b9584
  13. 0x906b5f0e8ef1fe7894886d84f460bb3239d5f14b14ad4adff27c7dcea6265169
  14. 0x674bc1173d39130be4d15bbfc7327f8a8af87eb251e54c8d4409c7e840b9e538
  15. 0xb78ea6a255dd06e2f402a1a733bca392fa6243920bcba95e8b80bdfc6ce5f553
  16. 0x3ed50f053eca72dfd3a9d45a11935240bfe691e57835c367ddebe2cbc49efe9d
  17. 0x0e01aa9525097570a6edaf32bfc959de57bf5c24317cf10c0716affea85ca60d
  18. 0xa20d48798a34aba12eb9c7297722982d910f06c148f5e27ac59307422964a585
  19. 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
Day root
0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
Chained
0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
Published
On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4

How to check it · This row as JSON