{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/jinn-works/json-schema/jinn-works-json-rpc-request-schema.json",
  "title": "JsonRpcRequest",
  "x-generated": "2026-11-13",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/jinn-works-openapi.json#/components/schemas/JsonRpcRequest",
  "type": "object",
  "required": [
    "jsonrpc",
    "method"
  ],
  "properties": {
    "jsonrpc": {
      "type": "string",
      "const": "2.0"
    },
    "id": {
      "description": "Request id, echoed on the response. Omit for a notification (answered 202).",
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "integer"
        }
      ]
    },
    "method": {
      "type": "string",
      "description": "One of `initialize`, `tools/list`, `tools/call`, or `notifications/*`."
    },
    "params": {
      "type": "object",
      "additionalProperties": true,
      "description": "Method-specific parameters. For `tools/call`: `name` plus an `arguments` object. The per-tool argument shape comes from `tools/list`, not from this document."
    }
  }
}