tools:
  - name: one_search
    description: Search and retrieve content from web pages. Returns SERP results by
      default (url, title, description).
    inputSchema:
      type: object
      required:
        - query
      properties:
        limit:
          type: number
          description: "Maximum number of results to return (default: 10)"
        query:
          type: string
          description: Search query string
        language:
          type: string
          description: "Language code for search results (default: auto)"
        timeRange:
          enum:
            - all
            - day
            - week
            - month
            - year
          type: string
          description: "Time range for search results (default: all)"
        categories:
          enum:
            - general
            - news
            - images
            - videos
            - it
            - science
            - map
            - music
            - files
            - social_media
          type: string
          description: "Categories to search for (default: general)"
  - name: one_extract
    description: Extract structured information from web pages using LLM. Supports
      both cloud AI and self-hosted LLM extraction.
    inputSchema:
      type: object
      required:
        - urls
      properties:
        urls:
          type: array
          items:
            type: string
          description: List of URLs to extract information from
        prompt:
          type: string
          description: Prompt for the LLM extraction
        schema:
          type: object
          description: JSON schema for structured data extraction
        systemPrompt:
          type: string
          description: System prompt for LLM extraction
        enableWebSearch:
          type: boolean
          description: Enable web search for additional context
        includeSubdomains:
          type: boolean
          description: Include subdomains in extraction
        allowExternalLinks:
          type: boolean
          description: Allow extraction from external links
  - name: one_scrape
    description: Scrape a single webpage with advanced options for content
      extraction. Supports various formats including markdown, HTML, and
      screenshots. Can execute custom actions like clicking or scrolling before
      scraping.
    inputSchema:
      type: object
      required:
        - url
      properties:
        url:
          type: string
          description: The URL to scrape
        mobile:
          type: boolean
          description: Use mobile viewport
        actions:
          type: array
          items:
            type: object
            required:
              - type
            properties:
              key:
                type: string
                description: Key to press (for press action)
              text:
                type: string
                description: Text to write (for write action)
              type:
                enum:
                  - wait
                  - click
                  - screenshot
                  - write
                  - press
                  - scroll
                  - scrape
                  - executeJavascript
                type: string
                description: Type of action to perform
              script:
                type: string
                description: JavaScript code to execute
              fullPage:
                type: boolean
                description: Take full page screenshot
              selector:
                type: string
                description: CSS selector for the target element
              direction:
                enum:
                  - up
                  - down
                type: string
                description: Scroll direction
              milliseconds:
                type: number
                description: Time to wait in milliseconds (for wait action)
          description: List of actions to perform before scraping
        extract:
          type: object
          properties:
            prompt:
              type: string
              description: User prompt for LLM extraction
            schema:
              type: object
              description: Schema for structured data extraction
            systemPrompt:
              type: string
              description: System prompt for LLM extraction
          description: Configuration for structured data extraction
        formats:
          type: array
          items:
            enum:
              - markdown
              - html
              - rawHtml
              - screenshot
              - links
              - screenshot@fullPage
              - extract
            type: string
          description: "Content formats to extract (default: ['markdown'])"
        timeout:
          type: number
          description: Maximum time in milliseconds to wait for the page to load
        waitFor:
          type: number
          description: Time in milliseconds to wait for dynamic content to load
        location:
          type: object
          properties:
            country:
              type: string
              description: Country code for geolocation
            languages:
              type: array
              items:
                type: string
              description: Language codes for content
          description: Location settings for scraping
        excludeTags:
          type: array
          items:
            type: string
          description: HTML tags to exclude from extraction
        includeTags:
          type: array
          items:
            type: string
          description: HTML tags to specifically include in extraction
        onlyMainContent:
          type: boolean
          description: Extract only the main content, filtering out navigation, footers,
            etc.
        removeBase64Images:
          type: boolean
          description: Remove base64 encoded images from output
        skipTlsVerification:
          type: boolean
          description: Skip TLS certificate verification
  - name: one_map
    description: Discover URLs from a starting point. Can use both sitemap.xml and
      HTML link discovery.
    inputSchema:
      type: object
      required:
        - url
      properties:
        url:
          type: string
          description: Starting URL for URL discovery
        limit:
          type: number
          description: Maximum number of URLs to return
        search:
          type: string
          description: Optional search term to filter URLs
        sitemapOnly:
          type: boolean
          description: Only use sitemap.xml for discovery, ignore HTML links
        ignoreSitemap:
          type: boolean
          description: Skip sitemap.xml discovery and only use HTML links
        includeSubdomains:
          type: boolean
          description: Include URLs from subdomains in results
