<!-- twin of https://specstream.ai/web-search/crewai -->
# crewAI web search: one argument points SerperDevTool at SpecStream

Compared on Nov 10, 2026. The page: https://specstream.ai/web-search/crewai

crewAI's `SerperDevTool` and `BraveSearchTool` take their address as a constructor argument, and SpecStream answers both. Each passed on November 10, 2026, run with crewai-tools, with only that argument and the key changed.

Pass `SerperDevTool(base_url="https://api.specstream.ai/serper")` or `BraveSearchTool(search_url="https://api.specstream.ai/res/v1/web/search")`, and put your SpecStream key in `SERPER_API_KEY` or `BRAVE_API_KEY`. The crew keeps its tool names.

SpecStream scores 97.9 F-score on all 1,000 SimpleQA Verified questions and costs $5 per 1,000 searches, with no daily limit. A new account gets $10 of credit, no card.

[Get an API key](https://specstream.ai/signup?src=alternatives-web-search-crewai&utm_source=alternatives-md&utm_campaign=web-search-crewai&returnTo=%2Fworkspace%2Fagents%3Ftab%3Dkeys) New accounts get $10 of credit, no card. It covers 2,000 searches.

## crewAI search tools and SpecStream, from each company's own pages and crewAI's source on Nov 10, 2026

| | SpecStream | Serper | Brave Search API | SerpApi | Tavily |
|---|---|---|---|---|---|
| crewAI tool and setting | `SerperDevTool(base_url="https://api.specstream.ai/serper")` or `BraveSearchTool(search_url="https://api.specstream.ai/res/v1/web/search")`, with the SpecStream key | `SerperDevTool`, `base_url` `https://google.serper.dev` by default, key in `SERPER_API_KEY` | `BraveSearchTool`, `search_url` `https://api.search.brave.com/res/v1/web/search` by default, key in `BRAVE_API_KEY` | `SerpApiGoogleSearchTool` and the other SerpApi tools, with the address fixed in the code | `TavilySearchTool`, which builds `TavilyClient` with the key alone |
| Start today | $10 of credit, no card, which covers 2,000 searches | 2,500 free queries, no card | $5 in free credits every month | Starter plan at $25 a month for 1,000 searches | 1,000 free credits every month |
| Price per 1,000 searches | $5, with up to 10 results a search | $1.00 on the 50k pack, down to $0.30 on the 12.5M pack | $5 per 1,000 requests | $25 a month for 1,000 searches on Starter | $0.008 a credit on pay as you go. A basic search is 1 credit |
| How long it lasts | Credit you buy never expires | Credits are valid for 6 months | Prepaid credits | Month to month | Credits reset on the first day of each month |
| Limit | No daily limit. Up to 26,666 searches a minute on one account | 50 queries per second on the smallest pack, 300 on the largest | Up to 50 queries per second | 200 successful searches per hour on Starter | On a monthly plan, requests stop when the month's credits run out |
| What answers the search | The whole live web, read at the moment of the call. 97.9 F-score on all 1,000 SimpleQA Verified questions | Google, queried live on each call | Brave's index. Its own page reports 85.3% on FreshQA | Only successful searches count toward the month | Tavily's search. Its own post reports 97.6% on SimpleQA |

## Why crewAI builders put SpecStream behind their search tool

### One argument per tool

`SerperDevTool` posts to `f"{base_url}/{search_type}"`, so `base_url` takes the address without `/search`. Before and after:

```
import os
from crewai_tools import SerperDevTool

os.environ["SERPER_API_KEY"] = "<your Serper key>"
search = SerperDevTool()  # calls https://google.serper.dev/search
```

```
import os
from crewai_tools import SerperDevTool

os.environ["SERPER_API_KEY"] = os.environ["SPECSTREAM_API_KEY"]
search = SerperDevTool(base_url="https://api.specstream.ai/serper")
```

`BraveSearchTool` sends its GET to `search_url` as it is, so that argument takes the whole search address. Before and after:

```
import os
from crewai_tools import BraveSearchTool

os.environ["BRAVE_API_KEY"] = "<your Brave key>"
search = BraveSearchTool()  # calls https://api.search.brave.com/res/v1/web/search
```

```
import os
from crewai_tools import BraveSearchTool

os.environ["BRAVE_API_KEY"] = os.environ["SPECSTREAM_API_KEY"]
search = BraveSearchTool(search_url="https://api.specstream.ai/res/v1/web/search")
```

### The same request and the same JSON

`SerperDevTool` sends `{"q": ..., "num": 10}` with the key in `X-API-KEY` and reads `organic[]`, taking `title` and `link` as required fields and `snippet` and `position` when present. SpecStream's Serper route returns `organic[]` with all four. `BraveSearchTool` sends `count` 10 with the key in `X-Subscription-Token` and reads `web.results[]`, which SpecStream's Brave route returns with `title`, `url` and `description`.

Both tools ask for 10 results by default, so each search is $0.005. The Serper call from Python:

```
import os, requests

reply = requests.post(
    "https://api.specstream.ai/serper/search",
    headers={"X-API-KEY": os.environ["SPECSTREAM_API_KEY"], "Content-Type": "application/json"},
    json={"q": "open source vector databases", "num": 10},
).json()

for result in reply["organic"]:
    print(result["position"], result["title"], result["link"])
```

Every parameter and field of each route is in the [Serper guide](https://specstream.ai/migrate/serper?utm_source=alternatives&utm_campaign=web-search-crewai) and the [Brave guide](https://specstream.ai/migrate/brave?utm_source=alternatives&utm_campaign=web-search-crewai).

### $5 per 1,000 searches, with no daily limit

A search of up to 10 results costs $0.005. There is no monthly plan and no daily limit. Credit you buy never expires, and a new account starts with $10 of credit, which covers 2,000 searches. A call stopped by a `429` charges nothing.

### The most accurate web search API, in about one second

On SimpleQA Verified the SpecStream Search API scores 97.9 F-score on all 1,000 official questions, 978 of them correct. On WideSearch it scores 64.0 item F1 and 43.4 row F1 on all 200 official tasks. The Extract API scores 0.908 F1 on WCXB. Every score and its method is on the [benchmarks](https://specstream.ai/benchmarks?utm_source=alternatives&utm_campaign=web-search-crewai) page.

Every drop-in call runs the fast search. Measured on production on November 9, 2026, its median was 0.82 s at 1 search a second and 1.07 s at 20 a second, the 95th percentile stayed between 1.09 and 1.73 s, and it answered 718 of 720. One account can send up to 26,666 searches a minute.

### You decide what is kept, on each key

Create the key with `zero_retention` and a search made with it keeps no request text and no answer after the reply. `spend_cap_cents` is the most the key can spend.

```
curl -X POST https://api.specstream.ai/v1/account/keys \
  -H "Authorization: Bearer $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
  -d '{"name": "production", "scopes": ["account:read", "finds:spend"], "spend_cap_cents": 500000, "zero_retention": true}'
```

### Search, pages and rows on one key

The same key reads up to 20 pages or documents a call with the [Extract API](https://specstream.ai/extract-api?utm_source=alternatives&utm_campaign=web-search-crewai) at $0.80 per 1,000 pages, and a page with no text is not charged. [Deep Search](https://specstream.ai/deep-search?utm_source=alternatives&utm_campaign=web-search-crewai) returns every match for a request in plain words as structured rows, at 5¢, 15¢ or $1 a row, with a source URL on every value. The most a run can cost is approved before it starts.

## Other search tools in crewAI

### Serper

A Google search API sold in credit packs, from $1.00 per 1,000 on the 50k pack to $0.30 on the 12.5M pack, with credits valid for 6 months. `SerperDevTool` calls it by default. SpecStream answers the same tool at the same address shape, searches the whole live web, and its credit never expires.

### Brave Search API

$5 per 1,000 requests with $5 in free credits a month and up to 50 queries per second. `BraveSearchTool` calls it by default. SpecStream answers that tool at the same $5 per 1,000, with 97.9 F-score on SimpleQA Verified.

### SerpApi

Plans start at $25 a month for 1,000 searches on Starter, with 200 successful searches per hour. crewAI's SerpApi tools fix their address in the code, so they cannot be pointed elsewhere. `SerperDevTool` on SpecStream costs $5 per 1,000 with no monthly plan.

### Tavily

Search billed in credits at $0.008 each on pay as you go, with 1,000 free credits a month that reset on the first day of each month. `TavilySearchTool` passes only the key to Tavily's client. SpecStream charges $0.005 a search behind the Serper or Brave tool.

## How to move crewAI web search to SpecStream

1. Create a key under Agents & API in the SpecStream workspace. A new account gets $10 of credit, no card, which covers 2,000 searches.

2. Check the key with the call each tool sends. A `200` with `organic` or `web.results` means the tool gets the same.

```
curl -X POST https://api.specstream.ai/serper/search \
  -H "X-API-KEY: $SPECSTREAM_API_KEY" -H "Content-Type: application/json" \
  -d '{"q": "test", "num": 10}'

curl -H "X-Subscription-Token: $SPECSTREAM_API_KEY" \
  "https://api.specstream.ai/res/v1/web/search?q=test&count=10"
```

3. Where the crew builds its search tool, pass the address and set the tool's key variable to the SpecStream key:

```
import os
from crewai_tools import SerperDevTool

os.environ["SERPER_API_KEY"] = os.environ["SPECSTREAM_API_KEY"]
search = SerperDevTool(base_url="https://api.specstream.ai/serper")
```

4. Run the crew. Each search shows in your SpecStream request log with its price.

## Frequently asked questions

### What is the best web search tool for crewAI?

SpecStream behind `SerperDevTool` or `BraveSearchTool`, at $5 per 1,000 searches with no daily limit and 97.9 F-score on all 1,000 SimpleQA Verified questions. One constructor argument moves the tool.

### What value does SerperDevTool base_url take?

`https://api.specstream.ai/serper`, with no `/search`: the tool adds `/search` itself. The key goes in `SERPER_API_KEY`, which the tool sends as `X-API-KEY`.

### How do I point crewAI's Brave search tool at SpecStream?

Pass `search_url="https://api.specstream.ai/res/v1/web/search"` to `BraveSearchTool` and put your SpecStream key in `BRAVE_API_KEY`. The tool asks for 10 results, so each search is $0.005.

### What is a cheaper Serper alternative for crewAI?

SpecStream costs $5 per 1,000 searches with no pack to buy, and its credit never expires, where Serper's credits last 6 months. The first $10 of credit covers 2,000 searches with no card.

### Can crewAI's SerpApi tools use SpecStream?

Not by a setting: crewAI's SerpApi tools fix their address in the code. Use `SerperDevTool` with `base_url="https://api.specstream.ai/serper"`, at $5 per 1,000 searches.

### Does the crew need new code?

No. The tool keeps its name, its arguments and its output, and only `base_url` or `search_url` and the key change. On November 10, 2026 both tools ran on SpecStream with crewai-tools.

## Sources

SpecStream wrote this page. crewAI's arguments come from its source on GitHub, and each provider's figure from that company's own page.

- [crewAI SerperDevTool source](https://raw.githubusercontent.com/crewAIInc/crewAI/main/lib/crewai-tools/src/crewai_tools/tools/serper_dev_tool/serper_dev_tool.py), read Nov 10, 2026
- [crewAI BraveSearchTool source](https://raw.githubusercontent.com/crewAIInc/crewAI/main/lib/crewai-tools/src/crewai_tools/tools/brave_search_tool/brave_search_tool.py), read Nov 10, 2026
- [crewAI TavilySearchTool source](https://raw.githubusercontent.com/crewAIInc/crewAI/main/lib/crewai-tools/src/crewai_tools/tools/tavily_search_tool/tavily_search_tool.py), read Nov 10, 2026
- [crewAI SerpApi base tool source](https://raw.githubusercontent.com/crewAIInc/crewAI/main/lib/crewai-tools/src/crewai_tools/tools/serpapi_tool/serpapi_base_tool.py), read Nov 10, 2026
- [Serper](https://serper.dev/), read Nov 10, 2026
- [Brave Search API](https://brave.com/search/api/), read Nov 10, 2026
- [SerpApi pricing](https://serpapi.com/pricing), read Nov 10, 2026
- [Tavily API credits](https://docs.tavily.com/documentation/api-credits.md), read Nov 10, 2026
- [Tavily pricing](https://tavily.com/pricing), read Nov 10, 2026
- [Tavily, SealQA and SimpleQA post](https://www.tavily.com/blog/tavily-ranks-1-on-sealqa-and-simpleqa), read Nov 10, 2026
- [SpecStream benchmarks](https://specstream.ai/benchmarks), read Nov 10, 2026
- [SpecStream pricing](https://specstream.ai/pricing), read Nov 10, 2026
- [SpecStream for agents](https://specstream.ai/agents.md), read Nov 10, 2026
