{"id":21130399,"url":"https://github.com/serpapi/auto-gpt-serpapi-plugin","last_synced_at":"2025-10-18T01:53:12.417Z","repository":{"id":175855487,"uuid":"654445727","full_name":"serpapi/Auto-GPT-SerpApi-Plugin","owner":"serpapi","description":"An Auto-GPT Plugin that connects SerpApi to Auto-GPT ","archived":false,"fork":false,"pushed_at":"2023-06-19T05:24:31.000Z","size":11,"stargazers_count":9,"open_issues_count":1,"forks_count":0,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-07-29T09:27:11.826Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/serpapi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-06-16T06:34:49.000Z","updated_at":"2024-09-24T20:40:47.000Z","dependencies_parsed_at":"2023-07-10T09:31:31.945Z","dependency_job_id":null,"html_url":"https://github.com/serpapi/Auto-GPT-SerpApi-Plugin","commit_stats":null,"previous_names":["serpapi/auto-gpt-serpapi-plugin"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/serpapi/Auto-GPT-SerpApi-Plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2FAuto-GPT-SerpApi-Plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2FAuto-GPT-SerpApi-Plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2FAuto-GPT-SerpApi-Plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2FAuto-GPT-SerpApi-Plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/serpapi","download_url":"https://codeload.github.com/serpapi/Auto-GPT-SerpApi-Plugin/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/serpapi%2FAuto-GPT-SerpApi-Plugin/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267988940,"owners_count":24177016,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-31T02:00:08.723Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-20T05:33:00.331Z","updated_at":"2025-10-18T01:53:12.341Z","avatar_url":"https://github.com/serpapi.png","language":"Python","readme":"# Auto-GPT SerpApi Search Plugin\n\nThis search plugin integrates [SerpApi](https://serpapi.com) into Auto-GPT, allowing users to choose a broader range of\nsearch engines supported by SerpApi, and get much more information than the default search engine in Auto-GPT.\n\n## Key Features:\n- Perform search queries with engine of your choice supported by SerpApi, including Google, Bing, Baidu, Yahoo, DuckDuckGo, Yandex and so on.\n\n## Installation\n\n- Install Auto-GPT\n\n  If you haven't done so, follow the installation instructions given by [Auto-GPT](https://github.com/Significant-Gravitas/Auto-GPT) to install it.\n\n\n- Download the plugins folder from the `root` of `Auto-GPT` directory\n\n    To download it directly from your Auto-GPT directory, you can run this command on Linux or MacOS:\n\n    ```bash\n    curl -L -o ./plugins/Auto-GPT-SerpApi-Plugin.zip https://github.com/SerpApi/Auto-GPT-SerpApi-Plugin/archive/refs/heads/master.zip\n    ```\n\n    Or in PowerShell:\n\n    ```pwsh\n    Invoke-WebRequest -Uri \"https://github.com/SerpApi/Auto-GPT-SerpApi-Plugin/archive/refs/heads/master.zip\" -OutFile \"./plugins/Auto-GPT-SerpApi-Plugin.zip\"\n    ```\n\n- Append the following configuration settings to the `.env` file within AutoGPT, see [Configuration](#configuration) for details:\n\n    ```ini\n    ################################################################################\n    ### SerpApi\n    ################################################################################\n\n    SERPAPI_API_KEY=\n    SERPAPI_ENGINE=\n    SERPAPI_NO_CACHE=\n    SERPAPI_RESULT_FILTER=\n    ```\n\n\n- In the `.env` file, search for `ALLOWLISTED_PLUGINS` and add this plugin:\n\n    ```ini\n    ################################################################################\n    ### ALLOWLISTED PLUGINS\n    ################################################################################\n\n    #ALLOWLISTED_PLUGINS - Sets the listed plugins that are allowed (Example: plugin1,plugin2,plugin3)\n    ALLOWLISTED_PLUGINS=AutoGPTSerpApiSearch\n    ```\n\n## Configuration\n\n| Variable | Required | Description |\n| ---- | ---- | ---- |\n| SERPAPI_API_KEY | Yes | Your API key for the SerpApi. You can obtain a key by following the steps:\u003cbr\u003e- Sign up for a free account at [SerpApi](https://serpapi.com).\u003cbr\u003e- Navigate to the [Dashboard](https://serpapi.com/dashboard) page and find \"Your Private API Key\". |\n| SERPAPI_ENGINE | No | The engine you want to use for web searches performed by Auto-GPT.\u003cbr\u003e- You can find valid engine values from [SerpApi Documentation](https://serpapi.com/search-api).\u003cbr\u003e- Typical values are: `google`, `bing`, `baidu`, `yahoo`, `duckduckgo`, `yandex`, ...\u003cbr\u003e- The default value is `google` if not set. |\n| SERPAPI_NO_CACHE | No | Set to `true` if you want to force SerpApi to fetch the results even if a cached version is already present. Defaulted to `false`. |\n| SERPAPI_RESULT_FILTER | No | SerpApi can return JSON results that is too large for Auto-GPT to process. This variable allows you to pick certain fields from the returned JSON to reduce the size. Defaulted to `organic_results(title,link,snippet)`. See [Result Filter](#result-filter) for details.|\n\n### Result Filter\nThis plugin supports filtering fields up to a depth of 2. The syntax of the filter is `\u003ct\u003e(\u003cs\u003e,\u003cs\u003e,...),\u003ct\u003e(\u003cs\u003e,\u003cs\u003e,...),...`, where `\u003ct\u003e` is top level field, and `\u003cs\u003e` is second level field. `\u003cs\u003e` is optional. Set to `\u003cnone\u003e` to disable filtering. Here are some examples:\n- `\u003cnone\u003e`\n  - Filter disabled. The whole JSON output will be the input of the current command.\n- `organic_results`:\n  - Pick only `organic_results` from the top level fields of JSON output.\n- `organic_results, knowledge_graph`:\n  - Pick only `organic_results` and `knowledge_graph` from the top level fields of JSON output.\n- `organic_results(title, link, snippet)`:\n  - Pick only `organic_results` from the top level fields of JSON output.\n  - Pick only `title`, `link` and `snippet` from `organic_results`.\n    - If `organic_results` is an object, applies to itself.\n    - If `organic_results` is an array, applies to all its containing objects.\n    - Otherwise, the second level filter is ignored.\n- `organic_results(title,link,snippet), knowledge_graph(website, description)`:\n  - Pick only `organic_results` and `knowledge_graph` from the top level fields of JSON output.\n  - Pick only `title`, `link` and `snippet` from `organic_results`.\n    - If `organic_results` is an object, applies to itself.\n    - If `organic_results` is an array, applies to all its containing objects.\n    - Otherwise, the second level filter is ignored.\n  - Pick only `website`, and `description` from `knowledge_graph`.\n    - If `knowledge_graph` is an object, applies to itself.\n    - If `knowledge_graph` is an array, applies to all its containing objects.\n    - Otherwise, the second level filter is ignored.\n\n### Filter Tuning\nSometimes too much input can make Auto-GPT confused, failing to extract the correct information. Other than [organic_results](https://serpapi.com/organic-results), SerpApi extracts more fields such as [answer_box](https://serpapi.com/direct-answer-box-api), [knowledge_graph](https://serpapi.com/knowledge-graph) and [related_questions](https://serpapi.com/related-questions), which are more straightforward and easier to make sense of, but not always present. You can always check if those exist through the [Dashboard](https://serpapi.com/searches) and add/remove fields to the filter according to your needs.\n\n### Example\nHere's an example to let Auto-GPT search on Google and get information from \"Answer Box\" and \"Knowledge Graph\"\n\n```ini\nSERPAPI_API_KEY=your_api_key\nSERPAPI_ENGINE=google\nSERPAPI_RESULT_FILTER=answer_box,knowledge_graph\n```\n\n## How it works\nWhen `SERPAPI_API_KEY` is set. The plugin will add a new command `serpapi_search` to Auto-GPT. The `google` command will be intercepted to use `serpapi_search` instead. Auto-GPT can also use `serpapi_search` command directly. Therefore, all web searches performed by Auto-GPT are routed to SerpApi.","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fserpapi%2Fauto-gpt-serpapi-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fserpapi%2Fauto-gpt-serpapi-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fserpapi%2Fauto-gpt-serpapi-plugin/lists"}