Member Junction
    Preparing search index...

    Searches through the Google Custom Search JSON API.

    This provider has an end date. Google closed the API to new customers during 2025 and discontinues it on 2027-01-01. It ships so that hosts already holding a key keep working through the transition, and it is ordered behind Brave and Tavily deliberately.

    It needs no dated code change to retire: once Google stops serving, calls fail, the engine fails over, and removing the metadata row takes it out of rotation entirely. A host that never had a key sees CheckAvailability self-disable it on the first config, which is the ordinary "not configured here" path rather than an error.

    Credential keys apiKey and cx; environment fallbacks GOOGLE_CUSTOM_SEARCH_API_KEY and GOOGLE_CUSTOM_SEARCH_CX.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Capabilities: WebSearchCapabilities = ...

    What this driver can do. Declared by the class, never read from the database.

    Configuration from the metadata record, set during Initialize.

    Accessors

    Methods

    • Read a credential value, preferring the decrypted MJ: Credentials record and falling back to an environment variable.

      The fallback exists because the web search actions this engine supersedes read their keys from mj.config.cjs / the environment, and a host upgrading should not have to migrate its secrets into the Credential store on the same day it gains the engine.

      Parameters

      • credentialKey: string

        key within the credential record's decrypted values, e.g. apiKey

      • envVarName: string

        environment variable consulted when no credential value is present

      Returns string

    • The effective result cap: the caller's request, bounded by the metadata override (when set) and then by the vendor's own hard cap.

      Clamped rather than rejected — a caller asking for 50 wants as many as possible, and most vendors reject the whole request when asked for more than they serve.

      Parameters

      • requested: number
      • fallback: number = 10

      Returns number