pulse_key_ring

Pack: pulse-verity · Connect: https://pipeworx.io/mcp (see Connect below for a single-pack URL)

No MCP client? Call it directly: GET https://gateway.pipeworx.io/v1/tools/pulse_key_ring for the schema, then POST the same URL with its arguments for the data.

The public keys Pulse signs its price prints with, as PEM and JWK, plus the signing algorithm and the exact canonical string format — everything needed to verify a signed print yourself, OFFLINE, with no network call to Pulse. Use it to write your own verifier, or to audit what pulse_verify_print (this pack’s ready-made offline checker) is checking against. Needs NO API key. Example: pulse_key_ring({}).

Example call

Arguments

{}

curl

curl -X POST https://gateway.pipeworx.io/pulse-verity/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"pulse_key_ring","arguments":{}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('pulse_key_ring', {});

Response shape

Always returns: verificationKeys, note, usage, keyless, source

FieldTypeDescription
successboolean | nullPulse’s own success flag for this response
algorithmstring | nullSigning algorithm: ECDSA P-256, SHA-256, IEEE-P1363, base64
canonicalstring | nullCanonical string template with real newlines, fields in signed order
canonicalEscapedstring | nullSame template with newlines rendered literally, on one line
canonicalExamplestring | nullA worked canonical string example
keyModestring | nullPulse’s key-storage mode, e.g. persisted
activeKidstring | nullThe key id currently signing new prints
publicKeyPemstring | nullActive public key, PEM-encoded
publicKeyJwkobject | nullActive public key, JWK-encoded (kty/crv/x/y)
verificationKeysarrayAll keys in the ring, past and present, each usable by its kid
notestringHow to rebuild the canonical string and verify by hand
usagestringPoints at pulse_verify_print as the ready-made offline checker
keylessbooleanAlways true: this tool needs no API key
sourcestringConstant: Pulse Verity Index (thepulse.markets)
Full JSON Schema
{
  "type": "object",
  "properties": {
    "success": {
      "type": [
        "boolean",
        "null"
      ],
      "description": "Pulse's own success flag for this response"
    },
    "algorithm": {
      "type": [
        "string",
        "null"
      ],
      "description": "Signing algorithm: ECDSA P-256, SHA-256, IEEE-P1363, base64"
    },
    "canonical": {
      "type": [
        "string",
        "null"
      ],
      "description": "Canonical string template with real newlines, fields in signed order"
    },
    "canonicalEscaped": {
      "type": [
        "string",
        "null"
      ],
      "description": "Same template with newlines rendered literally, on one line"
    },
    "canonicalExample": {
      "type": [
        "string",
        "null"
      ],
      "description": "A worked canonical string example"
    },
    "keyMode": {
      "type": [
        "string",
        "null"
      ],
      "description": "Pulse's key-storage mode, e.g. persisted"
    },
    "activeKid": {
      "type": [
        "string",
        "null"
      ],
      "description": "The key id currently signing new prints"
    },
    "publicKeyPem": {
      "type": [
        "string",
        "null"
      ],
      "description": "Active public key, PEM-encoded"
    },
    "publicKeyJwk": {
      "type": [
        "object",
        "null"
      ],
      "description": "Active public key, JWK-encoded (kty/crv/x/y)"
    },
    "verificationKeys": {
      "type": "array",
      "description": "All keys in the ring, past and present, each usable by its kid",
      "items": {
        "type": "object",
        "properties": {
          "kid": {
            "type": [
              "string",
              "null"
            ],
            "description": "Key id, matches the kid field on a signed print"
          },
          "pem": {
            "type": [
              "string",
              "null"
            ],
            "description": "This key, PEM-encoded"
          },
          "jwk": {
            "type": [
              "object",
              "null"
            ],
            "description": "This key, JWK-encoded"
          },
          "active": {
            "type": [
              "boolean",
              "null"
            ],
            "description": "Whether this is the key currently signing"
          }
        }
      }
    },
    "note": {
      "type": "string",
      "description": "How to rebuild the canonical string and verify by hand"
    },
    "usage": {
      "type": "string",
      "description": "Points at pulse_verify_print as the ready-made offline checker"
    },
    "keyless": {
      "type": "boolean",
      "description": "Always true: this tool needs no API key"
    },
    "source": {
      "type": "string",
      "description": "Constant: Pulse Verity Index (thepulse.markets)"
    }
  },
  "required": [
    "verificationKeys",
    "note",
    "usage",
    "keyless",
    "source"
  ]
}

Connect

Add this to your MCP client config — every tool in the catalog, including this one — or use one-click install buttons:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://pipeworx.io/mcp"
    }
  }
}
Connect to just the pulse-verity pack
{
  "mcpServers": {
    "pulse-verity": {
      "url": "https://gateway.pipeworx.io/pulse-verity/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build October 27, 2026