addrbookFor publishers
← The evidence ledger

Evidence row 1541056

Observed , by sync.mcp_registry/1.

Kind
listing
About
source_record mcp_registry:io.github.thyn-ai/codna
Recorded
Previous row
#53692
Body SHA-256
9c6b003c8a77e0b237fa4695b325eb08a338f951465d8e6cc8e756e1ea2f20d8
Leaf
0xa222b928399999098aeca9e7fdf4e61fa351f40250987941e2a59056776e5a26

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-10-31T21:18:16.734879Z",
        "status": "active",
        "statusChangedAt": "2026-10-31T21:18:16.734879Z",
        "updatedAt": "2026-10-31T21:18:16.734879Z"
      }
    },
    "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.96"
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/thyn-ai/codna-cli"
      },
      "title": "Codna — repository intelligence",
      "version": "0.2.96",
      "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":"9c6b003c8a77e0b237fa4695b325eb08a338f951465d8e6cc8e756e1ea2f20d8","id":1541056,"kind":"listing","method":"sync.mcp_registry/1","observed_us":1793485020984350,"prev":53692,"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 (246033 rows).

  1. 0xa2229d656f8bec6eafbbf8b37da14825458e8a4cf474c62aec2aa58f37168848
  2. 0xd26b039db7b11bbb74d543bdbb4ccb02d6b7f2c1e198383f5c2e565a231a771b
  3. 0x0d466a67b9135f13432a2a5e7f729344e4913194015b81f6e4c4c010a3f75e69
  4. 0x192a8b11c258b7c5a2357f112b98a6daeded81b09182b3091ee5f2f3b097b18f
  5. 0x426dce2d4bd37cf2d14691c25c62e0a4df3bbcaeca67b95a5f6db83e62a95f42
  6. 0x443c5294e37aebade864ed01b771f5ba42f4f48b7a35f303fd02b035551bb6c3
  7. 0xcae93e6d613bfbb94c73a5120467abd9d73ec854e193cb12cacad9952babe6f3
  8. 0xc9263ed210448525f5f4b28651872502322c70c822ee845e9d91d3f5ea1f0863
  9. 0x232149ae0b9a29659b35653990a18fd727f031f39b284bb7f936e66496a30268
  10. 0xb3d237e369df63d1dc1e202320241106afee77bb25c319f587cf91eb8d3502db
  11. 0xa5e43ba9168de112db5c3917bbbdd2c01aab71946aa5b67299248cc8346a738f
  12. 0x793e109e24366900ed525fd6441b8679bd8e0f90728d544dacac6ad8639f385f
  13. 0xbb0d6a5ef6d4a77fc1050819b844be89ee9cf38eab6c5c080e1d03a1935ecfc3
  14. 0xfc4e63034c3e47c4cc19a85dbacdb421762119a58090dfe0c71e13f11f75db19
  15. 0xaada757a4e58b5424e31228ed7c84f378168cc321ac8ae3a78bfc8096bcc0324
  16. 0x8605635b6c6bd33c6547585212170cc076018c2dd5f81f35a5ac4ade689fbb12
  17. 0x50003b3c3045b653f8be4232e95e80582cf5c54c14c509ba0a9a197b9e5005cb
  18. 0x0504a25438f3c7932125463198ca74c5064f23f71a5c92763b3fc96a98cc8b57
Day root
0x24463725d1c0d9894bd6123691d532547aaa79f0762c0e45aa6a68acf1fd71ab
Chained
0x7d4824ff313dee7252a46f9d5c37b452851deb6c9f24a40c2f74ee0e53c82980
Published
On Arc Testnet, block 70093156: 0xedb7b832f4ebf6781b5ecd2ed241c435b862f4d3761541fa31adc1831b8c44a0

How to check it · This row as JSON