addrbookFor publishers
← The evidence ledger

Evidence row 3985240

Observed , by sync.mcp_registry/1.

Kind
listing
About
source_record mcp_registry:io.github.thyn-ai/codna
Recorded
Previous row
#3957748
Body SHA-256
6b4c219b95bfd0d3bc330fa34df114f53c8cb9507db0e20c0ad155ad5a88dcf3
Leaf
0x7734bc6c81d6f794c25d79ef75f37c0ae8e1cc4e9e0dd17825f82b6700c1d510

What was observed

{
  "endpoints": [
    [
      "web",
      "https://codna.ai/"
    ]
  ],
  "name": "Codna — repository intelligence",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-11-07T21:05:46.665119Z",
        "status": "active",
        "statusChangedAt": "2026-11-07T21:05:46.665119Z",
        "updatedAt": "2026-11-07T21:05:46.665119Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "Repo intelligence: triage, fix PRs, SARIF reachability, recall. Free codna login to execute.",
      "name": "io.github.thyn-ai/codna",
      "packages": [
        {
          "environmentVariables": [
            {
              "description": "Provider key for codna_fix's planner — any one of ANTHROPIC_API_KEY (Anthropic), OPENAI_API_KEY (OpenAI/ChatGPT), or GEMINI_API_KEY (Gemini) works (or store one with `codna key set <provider>`). Every tool also requires the one-time free `codna login` device authorization before executing; introspection (initialize/tools/list) needs no credentials.",
              "isSecret": true,
              "name": "ANTHROPIC_API_KEY"
            },
            {
              "description": "Alternative provider key (OpenAI/ChatGPT) for codna_fix's planner — see ANTHROPIC_API_KEY.",
              "isSecret": true,
              "name": "OPENAI_API_KEY"
            },
            {
              "description": "Alternative provider key (Gemini) for codna_fix's planner — see ANTHROPIC_API_KEY.",
              "isSecret": true,
              "name": "GEMINI_API_KEY"
            },
            {
              "description": "Write token, only for codna_fix with open_pr=true (opens a pull request) and codna_report_bug (files an issue).",
              "isSecret": true,
              "name": "GITHUB_TOKEN"
            },
            {
              "description": "Codna key from the one-time free `codna login` (device authorization, free community license). Required to execute any of the five tools; introspection (initialize/tools/list) needs none.",
              "isSecret": true,
              "name": "CODNA_API_KEY"
            }
          ],
          "identifier": "codna",
          "packageArguments": [
            {
              "description": "Run the Codna MCP stdio server (`codna mcp`).",
              "type": "positional",
              "value": "mcp"
            }
          ],
          "registryType": "pypi",
          "transport": {
            "type": "stdio"
          },
          "version": "0.2.113"
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/thyn-ai/codna-cli"
      },
      "title": "Codna — repository intelligence",
      "version": "0.2.113",
      "websiteUrl": "https://codna.ai"
    }
  },
  "source": "mcp_registry",
  "summary": "Repo intelligence: triage, fix PRs, SARIF reachability, recall. Free codna login to execute."
}

What the leaf hashes

{"body":"6b4c219b95bfd0d3bc330fa34df114f53c8cb9507db0e20c0ad155ad5a88dcf3","id":3985240,"kind":"listing","method":"sync.mcp_registry/1","observed_us":1794086721953795,"prev":3957748,"subject":"mcp_registry:io.github.thyn-ai/codna","subject_kind":"source_record"}

Proof

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

  1. 0x773506ba7bd105024a2ff3b088ab6fb91b4281911d11610f4f433836f71a0603
  2. 0xa1814799fd48e8034ece79ba4d3ff283a58948fd00d92f9aca5416f247522ace
  3. 0x6c865d294c3e07b4b51ed8f1079c0d2071f56db6dfc8f4831b4fcfc7a6eb9214
  4. 0x3a3285726139ae887e7ba47ee54d47b6ff3e65b1ac6022e2e0b0e6ffa03908e4
  5. 0x51d1488db6b6c40ca2bfd5c1e442ff44f9ba27696e0ac3e934964e91f4d52fe4
  6. 0xf3eeb669327d5d4e36600c903153acf78be25befd81128d9a4f256574ab785ee
  7. 0x785039843151b00d7852169237dbacc9c6c722dfb345f76080d45cb1f9c9249d
  8. 0x08da941e9a6ec4a83757fda10255145a1ca7fd14749b912020efec414100b899
  9. 0x66d3cd1dcd0c46589d0d8d9e347407d5216138a8ba72a9fbd939b084d7d0bc6e
  10. 0x1aaf6b830b72b020f4b655af234652b7786325df044358feb9ffa653caa6b501
  11. 0x604b5f5f615ed54f33a62e2d072290be9a3c2dc02e552cfe7e9ae7f9afad9514
  12. 0x0b31d2a7f3e29cc3bf3fe77e26ad8862a5d9689c0cf78f625ff1f1a148592bfc
  13. 0xd445f2917713e4a9cf58e8d6c62200bce02b187115510c936159d350d5797da6
  14. 0xc9930015910e15b4a3ee7fa6677b93ccee48576a50ff5a3514be8ce187946e8f
  15. 0xdda41bf8f8b807884588170276b0203d24918e4a5c47ba7f4d5d0217f85e0cf7
  16. 0x9108c80d13a11b7549b554924410a7c5d215a2cd03aee9659ca627cb099f1a2e
  17. 0x3b69f6d98c91b21287021db092e52491474f0d08438393ac130d6a3c273bcd4a
  18. 0xff23fa8a9de3f957315ef0dfe7e8d8f6b1a51dae05fef7615c59794e019ff05c
Day root
0x17da9e85e1b138541355d33543ff34e3503cd3a49d37728fb53643e2a0416a2d
Chained
0xed34bd4af17282643de8cb9591c84d0aa1b39e1e9ae9864941e543f5a15718cb
Published
On Arc Testnet, block 71280839: 0xc3f6784179e0ca32236ba89472473e882a81d03fcc5ce27ca58ded2e01e112aa

How to check it · This row as JSON