{
  "name": "docs_search",
  "description": "Search LeapView's version-matched product documentation. Returns ranked, bounded matches with stable document IDs and excerpts. Continue with nextCursor when hasMore is true, or use the optional path prefix to narrow broad searches.",
  "privilege": "USE_AGENT",
  "effect": "read",
  "operationId": "manual",
  "defaults": {
    "limit": 8
  },
  "tags": [
    "documentation",
    "search"
  ],
  "annotations": {
    "readOnlyHint": true,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  },
  "inputSchema": {
    "additionalProperties": false,
    "properties": {
      "cursor": {
        "description": "Opaque nextCursor from a previous call with the same query and path.",
        "minLength": 1,
        "type": "string"
      },
      "limit": {
        "description": "Maximum matches to return; defaults to 8.",
        "maximum": 25,
        "minimum": 1,
        "type": "integer"
      },
      "path": {
        "description": "Optional documentation path prefix, such as guides/build, api, cli, or visuals.",
        "type": "string"
      },
      "query": {
        "description": "Words or phrases to find in LeapView documentation.",
        "minLength": 1,
        "type": "string"
      }
    },
    "required": [
      "query"
    ],
    "type": "object"
  },
  "outputSchema": {
    "additionalProperties": false,
    "properties": {
      "count": {
        "minimum": 0,
        "type": "integer"
      },
      "hasMore": {
        "type": "boolean"
      },
      "matches": {
        "items": {
          "additionalProperties": false,
          "properties": {
            "excerpt": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "path": {
              "type": "string"
            },
            "summary": {
              "type": "string"
            },
            "title": {
              "type": "string"
            },
            "url": {
              "type": "string"
            }
          },
          "required": [
            "excerpt",
            "id",
            "path",
            "summary",
            "title",
            "url"
          ],
          "type": "object"
        },
        "type": "array"
      },
      "nextCursor": {
        "type": "string"
      },
      "path": {
        "type": "string"
      },
      "query": {
        "type": "string"
      }
    },
    "required": [
      "count",
      "hasMore",
      "matches",
      "query"
    ],
    "type": "object"
  }
}
