{
  "type": "object",
  "properties": {
    "action": {
      "type": "string",
      "enum": [
        "discover_capabilities",
        "list_studies",
        "get_study",
        "list_sessions",
        "get_session",
        "list_steps",
        "get_step",
        "list_step_telemetry",
        "list_events",
        "list_comments",
        "list_responses",
        "reply_comment",
        "ask_follow_up"
      ],
      "description": "Operation to perform. Choose one advertised value; the remaining parameters are interpreted for that action."
    },
    "studyId": {
      "type": "string",
      "description": "Stable Research Study identifier."
    },
    "researchStudyId": {
      "type": "string",
      "description": "Stable Research Study identifier; accepted as an explicit alias of studyId."
    },
    "sessionId": {
      "type": "string",
      "description": "Stable Draft, or Research session identifier, as applicable to the selected tool."
    },
    "researchSessionId": {
      "type": "string",
      "description": "Stable Research participant-session identifier; accepted as an explicit alias of sessionId."
    },
    "parentCommentId": {
      "type": "string",
      "description": "Comment identifier that the new reply or follow-up belongs beneath."
    },
    "commentId": {
      "type": "string",
      "description": "Stable Commentary comment identifier."
    },
    "interventionId": {
      "type": "string",
      "description": "Stable intervention identifier used by the selected Commentary Research action."
    },
    "actionId": {
      "type": "string",
      "description": "Stable action identifier used by the selected Commentary Research action."
    },
    "status": {
      "type": "string",
      "enum": [
        "requested",
        "completed",
        "failed",
        "cancelled"
      ],
      "description": "Status filter or requested state supported by the selected action."
    },
    "target": {
      "type": "object",
      "properties": {
        "owner": {
          "type": "string",
          "description": "Repository owner or organization login."
        },
        "repo": {
          "type": "string",
          "description": "Repository name without the owner prefix."
        },
        "branch": {
          "type": "string",
          "description": "Branch used by the selected Commentary Research action."
        },
        "ref": {
          "type": "string",
          "description": "Ref used by the selected Commentary Research action."
        },
        "path": {
          "type": "string",
          "description": "Source-relative file path used by the selected action."
        },
        "baseBranch": {
          "type": "string",
          "description": "Base branch used by the selected Commentary Research action."
        },
        "createBranch": {
          "type": "boolean",
          "description": "Whether to enable create branch for the selected Commentary Research action."
        }
      },
      "additionalProperties": true,
      "description": "Explicit source or repository destination used by the selected action."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "description": "Allowed format value for the selected Commentary Research action."
    },
    "commitMessage": {
      "type": "string",
      "description": "Commit message for an explicit Git writeback operation."
    },
    "openPullRequest": {
      "type": "boolean",
      "description": "Whether an eligible Git writeback action should also open a pull request."
    },
    "pullRequestTitle": {
      "type": "string",
      "description": "Title for the pull request opened by an explicit writeback operation."
    },
    "pullRequestBody": {
      "type": "string",
      "description": "Markdown body for the pull request opened by an explicit writeback operation."
    },
    "statusNote": {
      "type": "string",
      "description": "Status note used by the selected Commentary Research action."
    },
    "errorMessage": {
      "type": "string",
      "description": "Error message used by the selected Commentary Research action."
    },
    "bodyMarkdown": {
      "type": "string",
      "description": "Markdown body for the comment, reply, note, or report produced by the selected action."
    },
    "body": {
      "type": "string",
      "description": "Plain-text body accepted by actions that support a non-Markdown alias."
    },
    "question": {
      "type": [
        "string",
        "object"
      ],
      "description": "Question used by the selected Commentary Research action."
    },
    "title": {
      "type": "string",
      "description": "Human-readable title for the created or updated artifact."
    },
    "questionText": {
      "type": "string",
      "description": "Question text used by the selected Commentary Research action."
    },
    "note": {
      "type": "string",
      "description": "Note used by the selected Commentary Research action."
    },
    "noteMarkdown": {
      "type": "string",
      "description": "Note markdown used by the selected Commentary Research action."
    },
    "notesMarkdown": {
      "type": "string",
      "description": "Notes markdown used by the selected Commentary Research action."
    },
    "summary": {
      "type": "string",
      "description": "Concise human-readable summary produced or stored by the selected action."
    },
    "severity": {
      "type": "string",
      "enum": [
        "info",
        "low",
        "medium",
        "high",
        "critical"
      ],
      "description": "Allowed severity value for the selected Commentary Research action."
    },
    "confidence": {
      "type": "string",
      "enum": [
        "low",
        "medium",
        "high"
      ],
      "description": "Allowed confidence value for the selected Commentary Research action."
    },
    "finding": {
      "type": "object",
      "description": "Finding object used by the selected Commentary Research action."
    },
    "evidenceIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Evidence ids values used by the selected Commentary Research action."
    },
    "kind": {
      "type": "string",
      "enum": [
        "participant_comment",
        "form_response",
        "researcher_note",
        "activity_outcome",
        "behavior_signal"
      ],
      "description": "Allowed kind value for the selected Commentary Research action."
    },
    "reviewStatus": {
      "type": "string",
      "enum": [
        "unreviewed",
        "in_review",
        "reviewed"
      ],
      "description": "Allowed review status value for the selected Commentary Research action."
    },
    "durabilityState": {
      "type": "string",
      "enum": [
        "not_selected",
        "pending",
        "syncing",
        "synced",
        "conflict",
        "failed",
        "restricted",
        "withdrawn"
      ],
      "description": "Allowed durability state value for the selected Commentary Research action."
    },
    "revision": {
      "type": "number",
      "description": "Revision used by the selected Commentary Research action."
    },
    "segment": {
      "type": "string",
      "description": "Segment used by the selected Commentary Research action."
    },
    "report": {
      "type": "object",
      "description": "Report object used by the selected Commentary Research action."
    },
    "markdown": {
      "type": "string",
      "description": "Markdown used by the selected Commentary Research action."
    },
    "sections": {
      "type": "object",
      "description": "Sections object used by the selected Commentary Research action."
    },
    "evidenceReferences": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Evidence references values used by the selected Commentary Research action."
    },
    "formId": {
      "type": "string",
      "description": "Stable Commentary Form identifier."
    },
    "questionId": {
      "type": "string",
      "description": "Stable Form question identifier."
    },
    "cursor": {
      "type": "string",
      "description": "Opaque pagination cursor returned by a previous call."
    },
    "limit": {
      "type": "number",
      "description": "Maximum number of records to return. Server-side bounds still apply."
    },
    "sessionStatus": {
      "type": "string",
      "enum": [
        "active",
        "completed",
        "abandoned"
      ],
      "description": "Allowed session status value for the selected Commentary Research action."
    },
    "stepId": {
      "type": "string",
      "description": "Stable Research workflow step identifier. Write actions must target the current step."
    },
    "eventType": {
      "type": "string",
      "description": "Event type used by the selected Commentary Research action."
    },
    "agentAlias": {
      "type": "string",
      "description": "Stable agent identifier for agent-authored activity. Agents should always provide this on state-changing calls; clientName is not a substitute."
    },
    "clientName": {
      "type": "string",
      "description": "Optional calling-client label for diagnostics. It does not attribute agent-authored activity; use agentAlias for that."
    }
  },
  "required": [
    "action"
  ]
}