Contribute

Add your plugin

A listing is one JSON entry in the canonical registry, submitted as a GitHub pull request and reviewed in the open. Listings are free for everyone — trust tiers are earned through review, never sold.

  1. Write your entry

    Listing an MCP server is deliberately light: a small unsigned JSON entry. No signing, no bundle, no upload — the registry stores your server's config, and nothing is ever downloaded from the registry itself. This example is validated verbatim by the catalogue's test suite:

    {
      "id": "acme/postgres-inspector",
      "kind": "inline-mcp",
      "name": "Postgres Inspector",
      "publisher": { "name": "Acme Tools" },
      "summary": "Read-only Postgres schema and query inspection over MCP.",
      "categories": ["data", "development"],
      "tags": ["postgres", "sql", "database"],
      "sourceUrl": "https://github.com/acme/postgres-inspector-mcp",
      "mcp": {
        "transport": "stdio",
        "command": "npx",
        "args": ["-y", "@acme/postgres-inspector-mcp@latest"],
        "envVarNames": ["DATABASE_URL"],
        "auth": "None",
        "setupNotes": "Runs the published package through npx. Point DATABASE_URL at the database you want to inspect."
      }
    }

    Shipping downloadable content — skill packs, CLI plugins, capability modules — is a bundle entry instead: it needs an https source, an integrity pin (commit SHA or per-file digests) whenever it carries executable content, and may carry an ed25519 signature. A valid signature earns your publisher the verified signal; it is never required to list.

    Never author tier, provenance, or verified — the catalogue computes trust signals at ingest and rejects entries that claim them.

  2. Open a pull request

    Add your entry to index.json in the canonical curated registry — the registry/ directory of the catalogue repository, moderated entirely through pull requests. The catalogue service never writes there; a merged PR is the only way content changes.

  3. CI checks your entry, reviewers merge it

    Every PR runs the registry verifier: schema validation, controlled-vocabulary categories, https-only URLs, integrity pins on code-bearing bundles, signature verification when one is present, and no secrets — envVarNames holds names only. Once merged, the catalogue picks your entry up on its next sync.