Skip to main content
Glama

submit_verified

Idempotent

Publish local token runs to SigRank as a verified operator by building, signing, and submitting a canonical snapshot from your enrolled device.

Instructions

Publish your LOCAL token runs to the SigRank board as a VERIFIED operator — the enrolled, signed path. Reads your pillars (tokenpull), builds the canonical Schema 1.0 snapshot per window, ed25519-signs it with your device key, and POSTs to /api/v1/snapshots. Requires npx sigrank-mcp enroll first (a bound device). Only signed submissions from a trusted device rank on the board. Token-only; the private key never leaves your machine. Publishing requires confirm: true (ask the user first); pass dry_run:true to inspect the exact signed payload without publishing and without confirm.

Input Schema

NameRequiredDescriptionDefault
windowNosubmit only this window (default: all 4)
confirmNoREQUIRED to publish: must be true, set only after the user has explicitly approved submitting. Not needed with dry_run:true.
dry_runNobuild + sign but do NOT publish — returns the exact payload that would be POSTed (token counts only), so you can inspect before submitting
platformNosource platform (default: claude). 'multi' = combined cascade summed across all locally-detected platforms (needs 2+ active); empty windows are skipped.

Output Schema

NameRequiredDescriptionDefault
reasonNoError or skip reason if status is not ok
statusNoSubmission status
previewNo
server_responseNoServer-side response including new rank if accepted

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.19.16
    • addedInput schema / properties / confirm
      Added value: +{
      +  "description": "REQUIRED to publish: must be true, set only after the user has explicitly approved submitting. Not needed with dry_run:true.",
      +  "type": "boolean"
      +}
  2. Changed1 schema field changedv0.19.15
    • changedInput schema / properties / platform / enum
      Previous value: -[
      -  "amp",
      -  "kimi",
      -  "qwen",
      -  "pi",
      -  "openclaw",
      -  "droid",
      -  "codebuff",
      -  "gemini",
      -  "copilot",
      -  "opencode",
      -  "goose",
      -  "kilo",
      -  "hermes",
      -  "devin",
      -  "other",
      -  "omp",
      -  "proxy",
      -  "claude",
      -  "codex",
      -  "grok",
      -  "multi"
      -]New value: +[
      +  "amp",
      +  "kimi",
      +  "qwen",
      +  "pi",
      +  "openclaw",
      +  "droid",
      +  "codebuff",
      +  "gemini",
      +  "copilot",
      +  "opencode",
      +  "goose",
      +  "kilo",
      +  "hermes",
      +  "devin",
      +  "other",
      +  "omp",
      +  "proxy",
      +  "antigravity",
      +  "grok",
      +  "zcode",
      +  "claude",
      +  "codex",
      +  "multi"
      +]
  3. Changed1 schema field changedv0.19.7
    • changedInput schema / properties / platform / enum
      Previous value: -[
      -  "amp",
      -  "kimi",
      -  "qwen",
      -  "pi",
      -  "openclaw",
      -  "droid",
      -  "codebuff",
      -  "gemini",
      -  "copilot",
      -  "opencode",
      -  "goose",
      -  "kilo",
      -  "hermes",
      -  "devin",
      -  "other",
      -  "omp",
      -  "proxy",
      -  "claude",
      -  "codex",
      -  "multi"
      -]New value: +[
      +  "amp",
      +  "kimi",
      +  "qwen",
      +  "pi",
      +  "openclaw",
      +  "droid",
      +  "codebuff",
      +  "gemini",
      +  "copilot",
      +  "opencode",
      +  "goose",
      +  "kilo",
      +  "hermes",
      +  "devin",
      +  "other",
      +  "omp",
      +  "proxy",
      +  "claude",
      +  "codex",
      +  "grok",
      +  "multi"
      +]
  4. Changed10 schema fields changedv0.19.6
    • changedInput schema / properties / platform / enum
      Previous value: -[
      -  "amp",
      -  "kimi",
      -  "qwen",
      -  "pi",
      -  "openclaw",
      -  "droid",
      -  "codebuff",
      -  "gemini",
      -  "copilot",
      -  "opencode",
      -  "goose",
      -  "kilo",
      -  "hermes",
      -  "devin",
      -  "other",
      -  "claude",
      -  "codex",
      -  "multi"
      -]New value: +[
      +  "amp",
      +  "kimi",
      +  "qwen",
      +  "pi",
      +  "openclaw",
      +  "droid",
      +  "codebuff",
      +  "gemini",
      +  "copilot",
      +  "opencode",
      +  "goose",
      +  "kilo",
      +  "hermes",
      +  "devin",
      +  "other",
      +  "omp",
      +  "proxy",
      +  "claude",
      +  "codex",
      +  "multi"
      +]
    • changedOutput schema / properties / preview / properties / class / description
      Previous value: -"Operator class tier"New value: +"Operator class tier (dev10x taxonomy)"
    • changedOutput schema / properties / preview / properties / class / enum
      Previous value: -[
      -  "Burner",
      -  "Builder",
      -  "10xer"
      -]New value: +[
      +  "ARCH+ I",
      +  "ARCH+ II",
      +  "ARCH+ III",
      +  "ARCH I",
      +  "ARCH II",
      +  "ARCH III",
      +  "POWER I",
      +  "POWER II",
      +  "POWER III",
      +  "BASE I",
      +  "BASE II",
      +  "BASE III",
      +  "SEEKER I",
      +  "SEEKER II",
      +  "SEEKER III",
      +  "REFINER I",
      +  "REFINER II",
      +  "REFINER III",
      +  "BEARER I",
      +  "BEARER II",
      +  "BEARER III",
      +  "IGNITER I",
      +  "IGNITER II",
      +  "IGNITER III",
      +  "UNCLASSED"
      +]
    • addedOutput schema / properties / preview / properties / dev10x
      Added value: +{
      +  "description": "10xDEV score (log10 of the cascade product)",
      +  "type": "number"
      +}
    • addedOutput schema / properties / preview / properties / mode
      Added value: +{
      +  "description": "Detected working mode (BUILD/EDIT/DEBUG/MAINTAIN/IDLE) + confidence",
      +  "type": "object"
      +}
    • addedOutput schema / properties / preview / properties / pillars
      Added value: +{
      +  "description": "The four raw token pillars the cascade was computed from",
      +  "type": "object"
      +}
    • removedOutput schema / properties / preview / properties / tenx_dev
      Removed value: -{
      -  "description": "10xDEV score",
      -  "type": "number"
      -}
    • addedOutput schema / properties / preview / properties / yield
      Added value: +{
      +  "description": "Υ Yield — the headline efficiency metric (Cache Reads × Output / Input²)",
      +  "type": "number"
      +}
    • removedOutput schema / properties / preview / properties / yield_
      Removed value: -{
      -  "description": "Υ Yield — the headline efficiency metric (Cache Reads × Output / Input²)",
      -  "type": "number"
      -}
    • changedOutput schema / properties / preview / required
      Previous value: -[
      -  "yield_",
      -  "class"
      -]New value: +[
      +  "yield",
      +  "class"
      +]
  5. Addedv0.19.2
  6. Removed
  7. Changed1 schema field changedv0.18.1
    • changedInput schema / properties / platform / enum
      Previous value: -[
      -  "amp",
      -  "kimi",
      -  "qwen",
      -  "pi",
      -  "openclaw",
      -  "droid",
      -  "codebuff",
      -  "gemini",
      -  "copilot",
      -  "opencode",
      -  "goose",
      -  "kilo",
      -  "hermes",
      -  "claude",
      -  "codex",
      -  "multi"
      -]New value: +[
      +  "amp",
      +  "kimi",
      +  "qwen",
      +  "pi",
      +  "openclaw",
      +  "droid",
      +  "codebuff",
      +  "gemini",
      +  "copilot",
      +  "opencode",
      +  "goose",
      +  "kilo",
      +  "hermes",
      +  "devin",
      +  "other",
      +  "claude",
      +  "codex",
      +  "multi"
      +]
  8. Changed1 schema field changedv0.16.0
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "preview": {
      +      "properties": {
      +        "card": {
      +          "description": "Deterministic prose summary of the cascade result",
      +          "type": "string"
      +        },
      +        "class": {
      +          "description": "Operator class tier",
      +          "enum": [
      +            "Burner",
      +            "Builder",
      +            "10xer"
      +          ],
      +          "type": "string"
      +        },
      +        "leverage": {
      +          "description": "Cr/I — cache reads divided by input",
      +          "type": "number"
      +        },
      +        "snr": {
      +          "description": "Signal-to-noise ratio",
      +          "type": "number"
      +        },
      +        "tenx_dev": {
      +          "description": "10xDEV score",
      +          "type": "number"
      +        },
      +        "velocity": {
      +          "description": "O/I — output divided by input",
      +          "type": "number"
      +        },
      +        "warnings": {
      +          "description": "Parse or data warnings if any",
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "yield_": {
      +          "description": "Υ Yield — the headline efficiency metric (Cache Reads × Output / Input²)",
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "yield_",
      +        "class"
      +      ],
      +      "type": "object"
      +    },
      +    "reason": {
      +      "description": "Error or skip reason if status is not ok",
      +      "type": "string"
      +    },
      +    "server_response": {
      +      "description": "Server-side response including new rank if accepted",
      +      "type": "object"
      +    },
      +    "status": {
      +      "description": "Submission status",
      +      "enum": [
      +        "ok",
      +        "error",
      +        "skipped"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  9. Addedv0.6.10

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only cover idempotency, non-destructiveness and closed-world, but the description adds rich behavior: the enroll prerequisite, ed25519 signing with a device key, the guarantee the private key never leaves the machine, the rule that only signed submissions from a trusted device rank, and the confirm/dry_run safety flow.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core action and then the mechanics in a single dense but readable paragraph; nearly every clause earns its place. Minor redundancy between 'Token-only' and 'the private key never leaves your machine' keeps it just below top marks.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values need no explanation. The description nonetheless covers prerequisites, the safety confirmation flow, dry-run inspection, and the security model, leaving nothing an agent needs to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds genuine meaning beyond the schema: confirm must reflect explicit user approval ('ask the user first') and dry_run returns the exact signed payload. window and platform defaults are also reinforced.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Publish your LOCAL token runs to the SigRank board as a VERIFIED operator') plus the mechanism (signed path). This clearly delimits it from unsigned siblings like submit_paste/tokenpull_submit by emphasizing the enrolled, signed route.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete precondition ('Requires npx sigrank-mcp enroll first') and a clear workflow gating rule ('Publishing requires confirm: true — ask the user first; pass dry_run:true to inspect'). It implies but never explicitly names the alternative unsigned/paste paths, so the when-not-to-use contrast is left implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.