{
  "schemaVersion": "1",
  "product": "sift-mcp",
  "artifactVersion": "workspace-runtime-v1",
  "sourceRevision": "637a19a4f2ac1ae5d4f470cd29317e87cdf221c1",
  "generatedFrom": "intended-registry-intersect-runtime-support",
  "tools": [
    {
      "name": "agent.register",
      "summary": "Compatibility command: agent profiles are retired and tools use the connected user's permissions.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {
          "name": {
            "type": "string",
            "maxLength": 80
          },
          "description": {
            "type": "string",
            "maxLength": 280
          },
          "kind": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "none",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "agent.status",
      "summary": "Compatibility command: report that agent profiles are retired and registration is unnecessary.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "none",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "audit.events",
      "summary": "Inspect redacted audit events when authorized.",
      "inputSchema": {
        "type": "object",
        "required": [
          "targetId"
        ],
        "properties": {
          "targetId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "event:audit:read",
      "mutability": "admin",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "brain.list",
      "summary": "List brains available to the current scope.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "brain.propose_write",
      "summary": "Propose a durable Save to Brain write; Sift routes it to records, decisions, tasks, or skills and either applies it, stages it, blocks it, or reports conflict.",
      "inputSchema": {
        "type": "object",
        "required": [
          "mode",
          "userInstruction",
          "content",
          "idempotencyKey"
        ],
        "properties": {
          "mode": {
            "type": "string",
            "enum": [
              "dry_run",
              "stage",
              "commit"
            ]
          },
          "commitOnly": {
            "type": "boolean"
          },
          "userInstruction": {
            "type": "string"
          },
          "instructionRef": {
            "type": "string"
          },
          "suggestedKind": {
            "type": "string",
            "enum": [
              "create_record",
              "patch_record_section",
              "create_decision",
              "create_task",
              "teach_skill",
              "update_skill",
              "unsupported"
            ]
          },
          "suggestedTarget": {
            "type": "object",
            "properties": {
              "recordId": {
                "type": "string"
              },
              "sectionAnchor": {
                "type": "string"
              },
              "skillId": {
                "type": "string"
              },
              "expectedVersionId": {
                "type": "string"
              },
              "expectedMarkdown": {
                "type": "string"
              }
            }
          },
          "content": {
            "type": "object",
            "properties": {}
          },
          "evidenceRefs": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "kind": {
                  "type": "string"
                },
                "recordId": {
                  "type": "string"
                },
                "sourceId": {
                  "type": "string"
                },
                "sourceItemId": {
                  "type": "string"
                },
                "threadId": {
                  "type": "string"
                },
                "turnId": {
                  "type": "string"
                },
                "selectedText": {
                  "type": "string"
                },
                "visibility": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "idempotencyKey": {
            "type": "string"
          },
          "transport": {
            "type": "string",
            "enum": [
              "app",
              "hosted_agent",
              "hosted_mcp",
              "local_mcp",
              "cli",
              "api"
            ]
          },
          "sourceSurface": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string"
              },
              "ref": {
                "type": "object",
                "properties": {}
              }
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "required",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "brain.use",
      "summary": "Select the current brain scope for subsequent operations.",
      "inputSchema": {
        "type": "object",
        "required": [
          "brainId"
        ],
        "properties": {
          "brainId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "capture.batch",
      "summary": "Capture a bounded batch of text or file inputs.",
      "inputSchema": {
        "type": "object",
        "required": [
          "items"
        ],
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "kind",
                "sourceName",
                "externalId",
                "title",
                "visibility"
              ],
              "properties": {
                "kind": {
                  "type": "string"
                },
                "sourceName": {
                  "type": "string"
                },
                "externalId": {
                  "type": "string"
                },
                "title": {
                  "type": "string"
                },
                "markdown": {
                  "type": "string",
                  "maxLength": 262144
                },
                "filename": {
                  "type": "string"
                },
                "contentType": {
                  "type": "string"
                },
                "bytes": {
                  "type": "array",
                  "items": {
                    "type": "integer"
                  }
                },
                "visibility": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "source:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "capture.file",
      "summary": "Capture file metadata and content without treating the local path as canonical.",
      "inputSchema": {
        "type": "object",
        "required": [
          "sourceName",
          "externalId",
          "title",
          "filename",
          "contentType",
          "bytes",
          "visibility"
        ],
        "properties": {
          "sourceName": {
            "type": "string"
          },
          "externalId": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "filename": {
            "type": "string"
          },
          "contentType": {
            "type": "string"
          },
          "bytes": {
            "type": "array",
            "items": {
              "type": "integer"
            }
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "source:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "capture.text",
      "summary": "Capture text or markdown through the ingestion spine. The receipt's status reports the real ingestion state: 'indexed' means it is searchable now, 'queued' means it is stored durably but not yet searchable (indexing will finish in the background). Never assume queued content is retrievable yet. For agent conversation memory, set contentKind to 'agent_conversation_exchange' and fill provenance (actingClient, model, clientSessionRef, clientTurnRef, clientEventTime); use a stable externalId per exchange so retries dedupe.",
      "inputSchema": {
        "type": "object",
        "required": [
          "sourceName",
          "externalId",
          "title",
          "markdown",
          "visibility"
        ],
        "properties": {
          "sourceName": {
            "type": "string"
          },
          "externalId": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "markdown": {
            "type": "string",
            "maxLength": 262144
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contentKind": {
            "type": "string"
          },
          "provenance": {
            "type": "object",
            "properties": {
              "actingClient": {
                "type": "string"
              },
              "model": {
                "type": "string"
              },
              "clientSessionRef": {
                "type": "string"
              },
              "clientTurnRef": {
                "type": "string"
              },
              "clientEventTime": {
                "type": "string"
              }
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "source:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "context.assemble",
      "summary": "Assemble grounded answer-preparation context with request time, caller identity, task guidance from visible Sift skills when available, safe source metadata, gaps, and raw cited fallback.",
      "inputSchema": {
        "type": "object",
        "required": [
          "query"
        ],
        "properties": {
          "query": {
            "type": "string"
          },
          "queryIssuedAt": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          },
          "maxChars": {
            "type": "integer",
            "minimum": 1
          },
          "eventTimeAfter": {
            "type": "string",
            "description": "Optional event-time lower bound (ISO 8601 or YYYY-MM-DD). Filters by authored/event time, never indexed-at; items without a trustworthy event time are excluded from bounded results."
          },
          "eventTimeBefore": {
            "type": "string",
            "description": "Optional event-time upper bound (ISO 8601 or YYYY-MM-DD)."
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "context.profile",
      "summary": "Read a permission-filtered profile context model.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "contract.get",
      "summary": "Fetch the Sift agent contract (kernel + workspace overlay) and the contractVersion to echo on every gated tool call. Call this before any other Sift work.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "decision.create",
      "summary": "Create a canonical decision record.",
      "inputSchema": {
        "type": "object",
        "required": [
          "statement",
          "state",
          "visibility"
        ],
        "properties": {
          "statement": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "rationale": {
            "type": "string"
          },
          "authorship": {
            "type": "string"
          },
          "evidenceIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "entity.lookup",
      "summary": "Resolve a workspace entity by name and return a deterministic, cited entity card.",
      "inputSchema": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string",
            "description": "Exact roster/entity name to look up."
          },
          "asOf": {
            "type": "string",
            "description": "Optional YYYY-MM-DD date for point-in-time/as-of facts."
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "event.list",
      "summary": "List authorized brain events.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "evidence.get",
      "summary": "Read an authorized evidence item.",
      "inputSchema": {
        "type": "object",
        "required": [
          "evidenceId"
        ],
        "properties": {
          "evidenceId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "evidence.list",
      "summary": "List authorized evidence links for a record.",
      "inputSchema": {
        "type": "object",
        "required": [
          "recordId"
        ],
        "properties": {
          "recordId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "graph.neighbors",
      "summary": "Traverse authorized graph neighbors.",
      "inputSchema": {
        "type": "object",
        "required": [
          "recordId"
        ],
        "properties": {
          "recordId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "ingestion.status",
      "summary": "Inspect ingestion job status.",
      "inputSchema": {
        "type": "object",
        "required": [
          "jobId"
        ],
        "properties": {
          "jobId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "outcome_watcher.create_bundle",
      "summary": "Create a confirmed compact bundle of validated outcome watchers through the outcome watcher service.",
      "inputSchema": {
        "type": "object",
        "required": [
          "watchers"
        ],
        "properties": {
          "watchers": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "name",
                "intendedOutcome",
                "initialSpec",
                "visibility"
              ],
              "properties": {
                "name": {
                  "type": "string"
                },
                "intendedOutcome": {
                  "type": "string"
                },
                "initialSpec": {
                  "type": "object",
                  "description": "Complete OutcomeWatcherSpec with linkages, evidenceSource, evidenceShape, verificationRule, and maturityWindow.",
                  "required": [
                    "linkages",
                    "evidenceSource",
                    "evidenceShape",
                    "verificationRule",
                    "maturityWindow"
                  ],
                  "properties": {
                    "linkages": {
                      "type": "array",
                      "description": "Skill linkage array. Skill-scoped setup should include one active linkage to the selected skill.",
                      "items": {
                        "type": "object",
                        "properties": {}
                      }
                    },
                    "evidenceSource": {
                      "type": "object",
                      "description": "Watcher evidence source, such as connector_resource, brain_records, or explicit manual_review fallback.",
                      "properties": {}
                    },
                    "evidenceShape": {
                      "type": "object",
                      "description": "Evidence shape, such as work_item, message, structured_record, metric_sample, meeting_note, or human_judgment.",
                      "properties": {}
                    },
                    "verificationRule": {
                      "type": "object",
                      "description": "Verification rule, such as status_map, numeric_threshold, ratio_threshold, state_transition, message_marker, or comparative_progress.",
                      "properties": {}
                    },
                    "maturityWindow": {
                      "type": "object",
                      "description": "When evidence is mature enough to classify, such as immediate, duration, calendar_period, or manual_due.",
                      "properties": {}
                    }
                  }
                },
                "visibility": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "record.create_markdown",
      "summary": "Create a versioned markdown brain record.",
      "inputSchema": {
        "type": "object",
        "required": [
          "recordType",
          "title",
          "markdown",
          "visibility"
        ],
        "properties": {
          "recordType": {
            "type": "string",
            "enum": [
              "source_material",
              "claim",
              "memory",
              "view",
              "feedback_contract",
              "learning_proposal",
              "skill",
              "eval_fixture"
            ]
          },
          "title": {
            "type": "string"
          },
          "markdown": {
            "type": "string"
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "record.get",
      "summary": "Read an authorized markdown record.",
      "inputSchema": {
        "type": "object",
        "required": [
          "recordId"
        ],
        "properties": {
          "recordId": {
            "type": "string"
          },
          "sectionAnchor": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "record.list",
      "summary": "List authorized records.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "record.patch_section",
      "summary": "Patch a stable markdown heading section with conflict detection.",
      "inputSchema": {
        "type": "object",
        "required": [
          "recordId",
          "anchor",
          "replacementMarkdown"
        ],
        "properties": {
          "recordId": {
            "type": "string"
          },
          "anchor": {
            "type": "string"
          },
          "replacementMarkdown": {
            "type": "string"
          },
          "expectedMarkdown": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "record.versions",
      "summary": "List record versions.",
      "inputSchema": {
        "type": "object",
        "required": [
          "recordId"
        ],
        "properties": {
          "recordId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "scope.current",
      "summary": "Show the authenticated workspace and brain scope.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "search.query",
      "summary": "Search authorized brain context and return raw cited candidate results for exploration.",
      "inputSchema": {
        "type": "object",
        "required": [
          "query",
          "limit"
        ],
        "properties": {
          "query": {
            "type": "string"
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          },
          "eventTimeAfter": {
            "type": "string",
            "description": "Optional event-time lower bound (ISO 8601 or YYYY-MM-DD). Filters by authored/event time, never indexed-at; items without a trustworthy event time are excluded from bounded results."
          },
          "eventTimeBefore": {
            "type": "string",
            "description": "Optional event-time upper bound (ISO 8601 or YYYY-MM-DD)."
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.create",
      "summary": "Create an agent-proposed skill draft for human adoption; the body is markdown using Sift's document-first skill conventions.",
      "inputSchema": {
        "type": "object",
        "required": [
          "title",
          "body",
          "visibility"
        ],
        "properties": {
          "title": {
            "type": "string",
            "maxLength": 200,
            "description": "Skill title, at most 200 characters."
          },
          "body": {
            "type": "string",
            "maxLength": 65536,
            "description": "Markdown skill body, at most 65536 UTF-8 bytes. Use document-first sections like Applicability, Instructions, Evidence Policy, Known Failure Modes, and Evals when they apply."
          },
          "applicability": {
            "type": "string",
            "maxLength": 2000,
            "description": "Optional summary of when this skill should be used, at most 2000 characters."
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "maxItems": 16,
            "description": "Visibility labels to request, at most 16 entries."
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.exercise",
      "summary": "Report that a skill version informed an output on a surface; the report is an attribution claim only.",
      "inputSchema": {
        "type": "object",
        "required": [
          "skillId",
          "versionId",
          "surface",
          "outputRef",
          "idempotencyKey"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "versionId": {
            "type": "string"
          },
          "surface": {
            "type": "string"
          },
          "outputRef": {
            "type": "object",
            "properties": {
              "kind": {
                "type": "string"
              },
              "recordId": {
                "type": "string"
              },
              "versionId": {
                "type": "string"
              },
              "externalRef": {
                "type": "string"
              }
            },
            "required": [
              "kind"
            ]
          },
          "resultClassification": {
            "type": "string",
            "enum": [
              "configured",
              "partial_runtime_dependency"
            ]
          },
          "idempotencyKey": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.exercise.verify",
      "summary": "Verify that a target skill exercise for an exact version and workflow external reference occurred after the matching workflow-migration exercise.",
      "inputSchema": {
        "type": "object",
        "required": [
          "workflowExternalRef",
          "migrationSkillId",
          "migrationSkillVersionId",
          "targetSkillId",
          "targetVersionId"
        ],
        "properties": {
          "workflowExternalRef": {
            "type": "string"
          },
          "migrationSkillId": {
            "type": "string"
          },
          "migrationSkillVersionId": {
            "type": "string"
          },
          "targetSkillId": {
            "type": "string"
          },
          "targetVersionId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.feedback",
      "summary": "Report structured feedback for a pinned skill version; external-agent reports remain reported until trusted Sift evidence verifies them.",
      "inputSchema": {
        "type": "object",
        "required": [
          "skillId",
          "skillVersionId",
          "signalKind",
          "polarity",
          "strength",
          "payload",
          "idempotencyKey"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "skillVersionId": {
            "type": "string"
          },
          "exerciseRef": {
            "type": "object",
            "properties": {
              "exerciseId": {
                "type": "string"
              }
            },
            "required": [
              "exerciseId"
            ]
          },
          "subjectRef": {
            "type": "object",
            "properties": {}
          },
          "signalKind": {
            "type": "string"
          },
          "polarity": {
            "type": "string",
            "enum": [
              "positive",
              "negative",
              "mixed",
              "unknown"
            ]
          },
          "strength": {
            "type": "string",
            "enum": [
              "weak",
              "medium",
              "strong"
            ]
          },
          "payload": {
            "type": "object",
            "properties": {}
          },
          "idempotencyKey": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "required",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.file",
      "summary": "Read one of a skill's bundle files by path; fetch a file only when the skill body references it and the task needs that detail, using a path listed by skill.get.",
      "inputSchema": {
        "type": "object",
        "required": [
          "skillId",
          "path"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "path": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.get",
      "summary": "Read a skill's pinned active version markdown body, version id, and bundle file paths by skill record id.",
      "inputSchema": {
        "type": "object",
        "required": [
          "skillId"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.import.commit",
      "summary": "Commit one previously previewed local skill migration using only create, exact link, or explicit fork; returns a durable compact receipt.",
      "inputSchema": {
        "type": "object",
        "required": [
          "files",
          "sourceKeyHash",
          "visibility",
          "userInstruction",
          "adapterBlockers",
          "retainedRuntimeDependencies",
          "previewToken",
          "action",
          "idempotencyKey"
        ],
        "properties": {
          "files": {
            "type": "array",
            "maxItems": 1300,
            "items": {
              "type": "object",
              "required": [
                "path",
                "content"
              ],
              "properties": {
                "path": {
                  "type": "string",
                  "maxLength": 512
                },
                "content": {
                  "type": "string",
                  "maxLength": 262144
                }
              }
            }
          },
          "sourceKeyHash": {
            "type": "string",
            "maxLength": 64
          },
          "visibility": {
            "type": "array",
            "maxItems": 32,
            "items": {
              "type": "string"
            }
          },
          "userInstruction": {
            "type": "string",
            "maxLength": 8192
          },
          "instructionRef": {
            "type": "string",
            "maxLength": 2048
          },
          "adapterBlockers": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "required": [
                "code",
                "path"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "path": {
                  "type": "string",
                  "maxLength": 512
                }
              }
            }
          },
          "retainedRuntimeDependencies": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "required": [
                "kind",
                "name"
              ],
              "properties": {
                "kind": {
                  "type": "string",
                  "enum": [
                    "script",
                    "command",
                    "environment"
                  ]
                },
                "name": {
                  "type": "string",
                  "maxLength": 512
                }
              }
            }
          },
          "previewToken": {
            "type": "string",
            "maxLength": 8192
          },
          "action": {
            "type": "string",
            "enum": [
              "create",
              "link_exact",
              "create_fork"
            ]
          },
          "candidateSkillId": {
            "type": "string",
            "maxLength": 200
          },
          "candidateVersionId": {
            "type": "string",
            "maxLength": 200
          },
          "idempotencyKey": {
            "type": "string",
            "maxLength": 200
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "receiptId",
          "action",
          "state",
          "skillId",
          "activeVersionId",
          "sourceLinkId",
          "fingerprintSchema",
          "bundleFingerprint",
          "fileCount",
          "skippedFileCount",
          "repeated"
        ],
        "properties": {
          "receiptId": {
            "type": "string"
          },
          "action": {
            "type": "string"
          },
          "state": {
            "type": "string"
          },
          "skillId": {
            "type": "string"
          },
          "activeVersionId": {
            "type": "string"
          },
          "sourceLinkId": {
            "type": "string"
          },
          "fingerprintSchema": {
            "type": "string"
          },
          "bundleFingerprint": {
            "type": "string"
          },
          "fileCount": {
            "type": "integer"
          },
          "skippedFileCount": {
            "type": "integer"
          },
          "repeated": {
            "type": "boolean"
          },
          "previousSkillId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "capability": "skill:import",
      "mutability": "write",
      "idempotency": "required",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.import.preview",
      "summary": "Validate and classify one local skill bundle without persisting it; returns authorized migration state, safe candidates, retained dependencies, and a signed short-lived commit token.",
      "inputSchema": {
        "type": "object",
        "required": [
          "files",
          "sourceKeyHash",
          "visibility",
          "userInstruction",
          "adapterBlockers",
          "retainedRuntimeDependencies"
        ],
        "properties": {
          "files": {
            "type": "array",
            "maxItems": 1300,
            "items": {
              "type": "object",
              "required": [
                "path",
                "content"
              ],
              "properties": {
                "path": {
                  "type": "string",
                  "maxLength": 512
                },
                "content": {
                  "type": "string",
                  "maxLength": 262144
                }
              }
            }
          },
          "sourceKeyHash": {
            "type": "string",
            "maxLength": 64
          },
          "visibility": {
            "type": "array",
            "maxItems": 32,
            "items": {
              "type": "string"
            }
          },
          "userInstruction": {
            "type": "string",
            "maxLength": 8192
          },
          "instructionRef": {
            "type": "string",
            "maxLength": 2048
          },
          "adapterBlockers": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "required": [
                "code",
                "path"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "path": {
                  "type": "string",
                  "maxLength": 512
                }
              }
            }
          },
          "retainedRuntimeDependencies": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "required": [
                "kind",
                "name"
              ],
              "properties": {
                "kind": {
                  "type": "string",
                  "enum": [
                    "script",
                    "command",
                    "environment"
                  ]
                },
                "name": {
                  "type": "string",
                  "maxLength": 512
                }
              }
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "state",
          "sourceKeyHash",
          "candidates",
          "blockers",
          "warnings",
          "retainedRuntimeDependencies",
          "permittedActions"
        ],
        "properties": {
          "state": {
            "type": "string"
          },
          "fingerprintSchema": {
            "type": "string"
          },
          "bundleFingerprint": {
            "type": "string"
          },
          "sourceKeyHash": {
            "type": "string"
          },
          "candidates": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {}
            }
          },
          "blockers": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {}
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {}
            }
          },
          "retainedRuntimeDependencies": {
            "type": "array",
            "maxItems": 100,
            "items": {
              "type": "object",
              "required": [
                "kind",
                "name"
              ],
              "properties": {
                "kind": {
                  "type": "string",
                  "enum": [
                    "script",
                    "command",
                    "environment"
                  ]
                },
                "name": {
                  "type": "string",
                  "maxLength": 512
                }
              }
            }
          },
          "permittedActions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "previewToken": {
            "type": "string"
          },
          "expiresAt": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "capability": "skill:import",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.resolve",
      "summary": "Resolve at most three advisory skill candidates for a task description, each with the skill record id, pinned active version id, title, and applicability summary, or an empty list.",
      "inputSchema": {
        "type": "object",
        "required": [
          "query"
        ],
        "properties": {
          "query": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.teach",
      "summary": "Capture an explicit correction lesson for a skill with optional exercise reference; the explicit correction floor for surfaces without ambient capture.",
      "inputSchema": {
        "type": "object",
        "required": [
          "skillId",
          "lesson",
          "visibility"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "lesson": {
            "type": "string"
          },
          "exerciseId": {
            "type": "string"
          },
          "severity": {
            "type": "string"
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "skill.update",
      "summary": "Directly replace an existing skill's markdown body when the user asks an agent to modify that skill; execution-discovered learning stays on skill.teach or skill.feedback.",
      "inputSchema": {
        "type": "object",
        "required": [
          "skillId",
          "expectedCurrentVersionId",
          "markdown",
          "userInstruction",
          "changeSummary",
          "idempotencyKey"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "expectedCurrentVersionId": {
            "type": "string",
            "description": "The active skill version id returned by skill.get before editing."
          },
          "markdown": {
            "type": "string",
            "maxLength": 65536,
            "description": "Full replacement skill markdown body."
          },
          "userInstruction": {
            "type": "string",
            "description": "Raw user instruction that authorized the direct skill edit."
          },
          "instructionRef": {
            "type": "string",
            "description": "Optional message, turn, thread, CLI prompt, or external conversation ref."
          },
          "changeSummary": {
            "type": "string"
          },
          "idempotencyKey": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "required": [
          "skillId",
          "previousVersionId",
          "newVersionId",
          "versionNumber",
          "warnings",
          "staleDigestSuperseded"
        ],
        "properties": {
          "skillId": {
            "type": "string"
          },
          "previousVersionId": {
            "type": "string"
          },
          "newVersionId": {
            "type": "string"
          },
          "versionNumber": {
            "type": "integer"
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "staleDigestSuperseded": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "capability": "skill:update",
      "mutability": "write",
      "idempotency": "required",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "source.create",
      "summary": "Create a source for future captures.",
      "inputSchema": {
        "type": "object",
        "required": [
          "name",
          "visibility"
        ],
        "properties": {
          "name": {
            "type": "string"
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "source:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "source.get",
      "summary": "Read source metadata.",
      "inputSchema": {
        "type": "object",
        "required": [
          "sourceId"
        ],
        "properties": {
          "sourceId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "source.list",
      "summary": "List sources visible in the selected brain.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "source.status",
      "summary": "Inspect source processing status.",
      "inputSchema": {
        "type": "object",
        "required": [
          "sourceId"
        ],
        "properties": {
          "sourceId": {
            "type": "string"
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "task.create",
      "summary": "Create a canonical task record.",
      "inputSchema": {
        "type": "object",
        "required": [
          "title",
          "visibility"
        ],
        "properties": {
          "title": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "owner": {
            "type": "string"
          },
          "dueDate": {
            "type": "string"
          },
          "rationale": {
            "type": "string"
          },
          "authorship": {
            "type": "string"
          },
          "evidenceIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "visibility": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "contractVersion": {
            "type": "string",
            "description": "Echo the current Sift contract version from contract.get."
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:write",
      "mutability": "write",
      "idempotency": "recommended",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "tools.help",
      "summary": "Return compact help for a tool.",
      "inputSchema": {
        "type": "object",
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "tools.list",
      "summary": "List tools available to this transport and scope.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "tools.schema",
      "summary": "Return JSON schemas for available tools.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "tools.search",
      "summary": "Search compact authorized tool entries by hosted-agent intent.",
      "inputSchema": {
        "type": "object",
        "required": [
          "intent"
        ],
        "properties": {
          "intent": {
            "type": "string"
          },
          "toolsetNames": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20
          }
        },
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    },
    {
      "name": "whoami",
      "summary": "Return principal, actor, scope, and capabilities.",
      "inputSchema": {
        "type": "object",
        "required": [],
        "properties": {},
        "additionalProperties": false
      },
      "outputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      },
      "capability": "record:read",
      "mutability": "read",
      "idempotency": "none",
      "resultSize": "compact",
      "transports": [
        "hosted_mcp",
        "local_mcp"
      ]
    }
  ]
}
