Docs

For Tool Authors

Write, sign, version, and publish MPP-compatible MCP server packages to the registry.

What is a Tool Author?

A tool author is any individual or organisation that publishes a signed MCP server package to the MPP Registry. Your package carries your cryptographic identity. Consumers of your tool can verify its authenticity without trusting the distribution channel.

Package Structure

An MPP package is a directory that contains:

your-tool/
  mpp.manifest.json      # capability declaration and metadata
  mpp.manifest.json.sig  # Ed25519 signature over the manifest
  dist/
    index.js             # your compiled MCP server entrypoint
  package.json

Writing the Manifest

{
  "name": "@yourorg/tool-name",
  "version": "1.2.0",
  "description": "Short, factual description of what this tool does",
  "publisher": "Acme Corp <security@acme.com>",
  "entrypoint": "dist/index.js",
  "mcp_version": "2024-11-05",
  "capabilities": {
    "filesystem": {
      "read": ["/tmp/acme-workspace", "/etc/acme/config.json"],
      "write": ["/tmp/acme-workspace"]
    },
    "network": {
      "outbound": ["api.acme.com", "auth.acme.com"]
    },
    "env": ["ACME_API_KEY", "LOG_LEVEL"]
  },
  "runtime": {
    "minMemoryMB": 64,
    "timeoutSeconds": 30
  }
}

Capability Guidelines

  • Declare exactly what you need. The WASM sandbox enforces these at runtime — under-declaration causes failures, over-declaration creates security concerns.
  • Use specific paths. Prefer /tmp/acme-workspace over /tmp.
  • Avoid wildcard network permissions. List specific hostnames.
  • Declare env vars explicitly. Any variable your tool reads must be listed.

Versioning

MPP uses semantic versioning. Once published, a version is immutable. You cannot modify or delete a published version — only publish a new one.

# Patch release (bug fixes)
mpp version patch && mpp sign && mpp publish

# Minor release (new capabilities, backwards compatible)
mpp version minor && mpp sign && mpp publish

# Major release (breaking changes)
mpp version major && mpp sign && mpp publish

Deprecating a Version

You can mark a version as deprecated without removing it:

mpp deprecate @yourorg/tool-name@1.1.0 --reason "Security fix in 1.2.0 — upgrade immediately"

Deprecated versions remain downloadable and verifiable but display a warning when installed.

Private Packages

On Enterprise plans, you can publish private packages that are only visible to your organisation's namespace:

mpp publish --private

Private package names must be scoped to your organisation: @yourorg/package-name.

Signing Key Rotation

To rotate your signing key:

mpp keys rotate

This generates a new key pair and cross-signs it with your old key to maintain a traceable chain of custody. Old signatures remain valid for packages signed with the previous key.

Security Disclosures

If you discover a security vulnerability in your own published tool, contact your customers directly and publish a patched version. If the issue is in the MPP platform itself, report it to support@quantum2x.com.