Pali Canon for Claude

Official MCP Registry

The official registry is at https://registry.modelcontextprotocol.io. It stores only a description of the server: the server.json file at the top of this repository. The program itself comes from npm. Other directories copy from this registry, so it is the most important listing.

Publishing guide: https://github.com/modelcontextprotocol/registry/blob/main/docs/modelcontextprotocol-io/quickstart.mdx

What is already prepared

The hosted version: add when #5 is live

server.json lists only the npm package for now, because the hosted version (#5) is not live yet and the registry needs a real, publicly reachable address. When it is live, add this block to server.json after "packages": [...] (with a comma before it), put the real hosted address in place of the placeholder, and publish a new registry version:

"remotes": [
  {
    "type": "streamable-http",
    "url": "https://PLACEHOLDER-hosted-endpoint-issue-5.invalid/mcp"
  }
]

The .invalid ending can never be a real website. The --publish check refuses to pass if that placeholder address ever ends up in server.json.

Steps (a maintainer does these)

  1. Make sure pali-canon-mcp is on npm at the same version as server.json (#4), and that the published package.json contains:

    "mcpName": "io.github.DaniilKi/pali-canon"
    

    The registry reads this field from npm to confirm the package is ours.

  2. Run node scripts/check-server-json.mjs --publish. It must say server.json: OK (ready to publish).
  3. Install mcp-publisher. On Windows (PowerShell), from the guide above:

    $arch = if ([System.Runtime.InteropServices.RuntimeInformation]::ProcessArchitecture -eq "Arm64") { "arm64" } else { "amd64" }; Invoke-WebRequest -Uri "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_windows_$arch.tar.gz" -OutFile "mcp-publisher.tar.gz"; tar xf mcp-publisher.tar.gz mcp-publisher.exe; rm mcp-publisher.tar.gz
    
  4. In the repository folder:

    mcp-publisher validate
    mcp-publisher login github     # GitHub device sign-in: sign in as DaniilKi
    mcp-publisher publish
    
  5. Confirm the listing:

    curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=pali-canon"
    

Every release after that

Each release needs a new registry version. Bump version and packages[0].version in server.json together with the other version fields (see Releasing in docs/development.md); the test suite fails if they drift apart. Publish to npm first, then run mcp-publisher publish. This can later move into the release workflow with GitHub OIDC (mcp-publisher login github-oidc); see the registry’s GitHub Actions guide.

Optional later: the .mcpb bundle

The registry also accepts the Claude Desktop bundle from a GitHub release (registryType: "mcpb", with the file’s SHA-256 in fileSha256). Add it once releases carry the .mcpb file (#2).