{
  "data": {
    "a": {
      "slug": "brave-search-mcp",
      "name": "Brave Search API + MCP",
      "vendor": "Brave",
      "vendorUrl": "https://brave.com/search/api/",
      "kind": "http-api",
      "category": "search",
      "summary": "REST API over Brave's independent index with web, news, image, video and local search, an LLM Context endpoint with pre-extracted page content and an Answers endpoint with citations.",
      "url": "https://www.anchorterminal.com/tools/brave-search-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/brave-search-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/brave-search-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/brave-search-mcp.json",
      "repo": "https://github.com/brave/brave-search-mcp-server",
      "license": "MIT",
      "transports": [
        "stdio",
        "streamable-http",
        "http"
      ],
      "remoteUrl": "https://api.search.brave.com/res/v1/web/search",
      "packages": [
        {
          "registry": "npm",
          "name": "@brave/brave-search-mcp-server"
        },
        {
          "registry": "oci",
          "name": "mcp/brave-search"
        }
      ],
      "auth": "mixed",
      "authNotes": "API key in the `X-Subscription-Token` header. The x402 proxy at search.agent.s.brave.app takes a signed payment instead of a key. An `Api-Version` header pins dated response versions. MCP server: BRAVE_API_KEY (or BRAVE_API_KEY_FILE) environment variable.",
      "pricing": "usage",
      "pricingNotes": "Search plan $5 per 1,000 requests with $5 free credit a month, 50 QPS. Answers plan $4 per 1,000 requests plus $5 per million tokens, $5 free credit a month, 2 QPS. A card is required for the free credit. Storing results needs an Enterprise plan with storage rights. Enterprise custom (https://brave.com/search/api/).",
      "priceSummary": "$5 / 1k req",
      "where": "both",
      "x402": {
        "level": "partial",
        "evidence": "Brave's docs link a pay-per-request proxy at search.agent.s.brave.app. Web, LLM Context, news, video, image and local paths cost $0.005 in USDC on Base. Answers, Suggest and Spellcheck aren't sold. An unpaid web search returned 402 with a PAYMENT-REQUIRED header on 2026-09-30 (https://api-dashboard.search.brave.com/documentation/guides/agent-payments)",
        "endpoints": [
          {
            "url": "https://search.agent.s.brave.app/res/v1/web/search",
            "priceUsd": 0.005,
            "network": "eip155:8453"
          },
          {
            "url": "https://search.agent.s.brave.app/res/v1/llm/context",
            "priceUsd": 0.005,
            "network": "eip155:8453"
          }
        ]
      },
      "toolCount": 8,
      "popularity": {
        "githubStars": 1400,
        "npmWeekly": 22398,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://api-dashboard.search.brave.com/documentation",
      "llmsTxt": "https://api-dashboard.search.brave.com/llms.txt",
      "registryName": "io.github.brave/brave-search-mcp-server",
      "capabilities": [
        "web.search",
        "web.extract",
        "search.answer",
        "search.news",
        "search.images"
      ],
      "tags": [
        "official",
        "local",
        "open-source",
        "usage-priced",
        "hosted",
        "card-required",
        "x402",
        "llms-txt",
        "enterprise",
        "mcp"
      ],
      "lastRelease": "2026-09-17",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68.1,
        "grade": "B",
        "agentReady": false,
        "rank": 132,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 5,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 72,
          "maintenance": 87,
          "payments": 70,
          "reliability": 55,
          "schema": 72,
          "security": 58,
          "transparency": 82
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "x402 proxy sells web, LLM Context, news, video, image and local search at $0.005 a call, and a failed search isn't charged. The status page marks the Search API \"not monitored\" and shows no incident history.",
        "strengths": [
          "x402 proxy sells web, LLM Context, news, video, image and local search at $0.005 a call, and a failed search isn't charged",
          "$5 per 1,000 searches at 50 QPS on the self-serve Search plan",
          "SOC 2 Type II, a HackerOne bounty and a valid security.txt",
          "Dated response versions through the `Api-Version` header",
          "MIT MCP server with five releases since July, tests in CI and a GitHub-verified registry entry"
        ],
        "weaknesses": [
          "The status page marks the Search API \"not monitored\" and shows no incident history",
          "A card is required even for the $5 monthly credit",
          "No public OpenAPI for the keyed API and no API changelog",
          "No SLA on self-serve plans, and Answers is limited to 2 QPS",
          "No prompt-injection guidance, though LLM Context returns raw page text"
        ],
        "agentNotes": [
          "Call /res/v1/llm/context when you need page text rather than links. It saves a separate fetch",
          "Treat \"No web results found\" from the MCP server as an empty result, not an outage",
          "On 429, wait for `X-RateLimit-Reset` seconds. There's no `Retry-After` header",
          "Skip `brave_summarizer`. The Summarizer is deprecated and the x402 proxy doesn't sell it",
          "Pin `Api-Version` to a date, since requests without it get the latest version"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 68.1
          }
        ],
        "editorialScores": {
          "ergonomics": 72,
          "maintenance": 87,
          "payments": 70,
          "reliability": 55,
          "schema": 72,
          "security": 58,
          "transparency": 63
        },
        "provenanceScore": 100
      },
      "connect": {
        "http": "curl \"https://api.search.brave.com/res/v1/web/search?q=brave+search\u0026count=5\" \\\n  -H \"Accept: application/json\" -H \"X-Subscription-Token: $BRAVE_API_KEY\"",
        "claudeCode": "claude mcp add brave-search -e BRAVE_API_KEY=${BRAVE_API_KEY} -- npx -y @brave/brave-search-mcp-server",
        "config": {
          "mcpServers": {
            "brave-search": {
              "args": [
                "-y",
                "@brave/brave-search-mcp-server"
              ],
              "command": "npx",
              "env": {
                "BRAVE_API_KEY": "${BRAVE_API_KEY}"
              }
            }
          }
        },
        "x402": "purl --max-amount 5000 'https://search.agent.s.brave.app/res/v1/web/search?q=rust'\n# unpaid requests get HTTP 402 with a PAYMENT-REQUIRED header, USDC on eip155:8453"
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/brave-search-mcp"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Search plan",
          "unit": "1k-requests",
          "usd": 5
        },
        {
          "item": "Answers plan",
          "unit": "1k-requests",
          "usd": 4,
          "note": "plus $5 per million tokens"
        },
        {
          "item": "x402 search, per call",
          "unit": "call",
          "usd": 0.005,
          "note": "USDC on Base, no account"
        }
      ],
      "provenance": {
        "legalEntity": "Brave Software, Inc.",
        "domain": "brave.com",
        "domainRegistered": "1995-09-18",
        "domainNote": "brave.com was registered in 1995, before Brave bought it.",
        "endpointOnVendorDomain": true,
        "terms": "https://api-dashboard.search.brave.com/terms-of-service",
        "privacy": "https://api-dashboard.search.brave.com/privacy-policy",
        "statusPage": "https://status.brave.app",
        "changelog": "https://github.com/brave/brave-search-mcp-server/releases",
        "securityTxt": "valid",
        "checked": "2026-10-01",
        "notes": [
          "The x402 proxy runs on search.agent.s.brave.app, not brave.com. Brave's API docs link it as official.",
          "status.brave.app lists the Brave Search API but marks it \"not monitored\" and shows no incident history. The API docs keep a separate status log whose last entry is 27 March 2025 (https://api-dashboard.search.brave.com/documentation/resources/status-updates/)."
        ],
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/brave-search-mcp.json",
      "live": {
        "slug": "brave-search-mcp",
        "probe": {
          "target": "https://api.search.brave.com/res/v1/web/search",
          "method": "get",
          "lastAt": "2026-10-05T00:57:17.417056036Z",
          "lastOk": true,
          "lastStatus": 422,
          "lastMs": 397,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 395,
          "p95ms24h": 420,
          "samples24h": 272,
          "samples30d": 1113,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 11,
              "ok": 11
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.brave.app",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-04T21:39:52.323054222Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "brave/brave-search-mcp-server",
            "version": "v2.1.4",
            "released": "2026-09-17",
            "seenAt": "2026-10-04T16:22:44.217062681Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.brave/brave-search-mcp-server",
            "version": "2.1.3",
            "seenAt": "2026-10-04T23:42:40.113054682Z"
          },
          {
            "registry": "npm",
            "name": "@brave/brave-search-mcp-server",
            "version": "2.1.4",
            "seenAt": "2026-10-04T16:22:43.730484655Z"
          }
        ],
        "githubStars": 1484,
        "npmWeekly": 30874,
        "securityTxt": {
          "url": "https://brave.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-10-04T15:15:38.826160997Z"
        },
        "llmsTxt": {
          "url": "https://api-dashboard.search.brave.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:17:21.910433141Z"
        },
        "domain": {
          "domain": "brave.com",
          "registered": "1995-09-18",
          "source": "https://rdap.verisign.com/com/v1/domain/brave.com",
          "checkedAt": "2026-10-04T13:07:28.958526087Z"
        },
        "pages": [
          {
            "url": "https://api-dashboard.search.brave.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:09.246937639Z",
            "changedAt": "2026-09-30T13:09:37.196019706Z",
            "fingerprint": "8c41a50b5a60"
          },
          {
            "url": "https://api-dashboard.search.brave.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:41:11.393064605Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "e74eb26bd7c7"
          }
        ],
        "updatedAt": "2026-10-05T00:57:17.417056036Z"
      }
    },
    "b": {
      "slug": "serpapi",
      "name": "SerpApi",
      "vendor": "SerpApi",
      "vendorUrl": "https://serpapi.com",
      "kind": "http-api",
      "category": "search",
      "summary": "Scrapes live results pages from Google, Bing, Baidu, DuckDuckGo, Yandex, Amazon, YouTube and about 20 other engines and returns them as parsed JSON or markdown.",
      "url": "https://www.anchorterminal.com/tools/serpapi",
      "markdownUrl": "https://www.anchorterminal.com/tools/serpapi.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/serpapi.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/serpapi.json",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://serpapi.com/search",
      "packages": [
        {
          "registry": "npm",
          "name": "serpapi"
        },
        {
          "registry": "pypi",
          "name": "serpapi"
        }
      ],
      "auth": "api-key",
      "authNotes": "API key as the `api_key` query parameter on every request. The hosted MCP takes `Authorization: Bearer \u003ckey\u003e` or the key in the URL path (`/\u003ckey\u003e/mcp`) for clients that can't set headers.",
      "pricing": "freemium",
      "pricingNotes": "Free plan 250 searches a month (50 an hour). Starter $25 a month for 1,000 searches, Developer $75 for 5,000, Production $150 for 15,000, Big Data $275 for 30,000, Searcher $725 for 100,000, then Cloud tiers from $3,750 for 1M. Only successful searches count, cached and failed ones are free, and a response with 100 results is still one search. Ludicrous Speed doubles the price, Ludicrous Speed Max quadruples it (https://serpapi.com/pricing).",
      "priceSummary": "$25 / 1k req",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 in llms.txt, pricing or integrations pages (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 3,
      "popularity": {
        "githubStars": 175,
        "npmWeekly": 168618,
        "pypiWeekly": 104227,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://serpapi.com/search-api",
      "llmsTxt": "https://serpapi.com/llms.txt",
      "registryName": "io.github.serpapi/serpapi-mcp",
      "capabilities": [
        "web.search",
        "search.serp",
        "search.news",
        "search.images"
      ],
      "tags": [
        "hosted",
        "freemium",
        "mcp",
        "llms-txt",
        "python",
        "typescript",
        "closed-source"
      ],
      "lastRelease": "2026-09-22",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 62.6,
        "grade": "B",
        "agentReady": false,
        "rank": 216,
        "ranked": true,
        "rankOf": 452,
        "categoryRank": 8,
        "methodology": "0.3",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 88,
          "maintenance": 82,
          "payments": 30,
          "reliability": 60,
          "schema": 67,
          "security": 40,
          "transparency": 85
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "Over 100 engines behind one GET URL, with `json_restrictor` field selection and `output=md`. 25 incidents on the status feed from July to 1 October 2026, including an outage across all APIs on 10 September.",
        "strengths": [
          "Over 100 engines behind one GET URL, with `json_restrictor` field selection and `output=md`",
          "Failed, errored and cached searches aren't billed, and the cache lasts 1 hour",
          "Terms promise a 99.95% SLA on all plans",
          "SOC 2 Type II and ISO 27001 listed on the security page, 31-day data retention stated twice",
          "Hosted MCP server in the official registry, with read-only tool annotations"
        ],
        "weaknesses": [
          "25 incidents on the status feed from July to 1 October 2026, including an outage across all APIs on 10 September",
          "REST auth is the `api_key` query parameter, with no header option documented",
          "No OpenAPI spec, and the MCP `search` tool takes a free-form `params` object",
          "Monthly plans only, from $25 for 1,000 searches, with no pay-per-call or machine payment",
          "No prompt-injection guidance for the snippets it returns"
        ],
        "agentNotes": [
          "Use the MCP with `Authorization: Bearer`, not the key-in-path URL the README leads with",
          "Read `serpapi://engines/\u003cengine\u003e` before calling a new engine, since `params` isn't typed",
          "Add `json_restrictor` or `output=md` to cut tokens, and `mode: compact` on the MCP",
          "A 429 means either the hourly limit or an empty balance. Check the account before retrying",
          "Repeat a search within the hour and the cached copy is free. Set `no_cache=true` only when freshness matters"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.3",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 62.6
          }
        ],
        "editorialScores": {
          "ergonomics": 88,
          "maintenance": 82,
          "payments": 30,
          "reliability": 60,
          "schema": 67,
          "security": 40,
          "transparency": 70
        },
        "provenanceScore": 100
      },
      "connect": {
        "http": "curl -G https://serpapi.com/search --data-urlencode \"q=coffee\" -d engine=google -d api_key=$SERPAPI_API_KEY",
        "claudeCode": "claude mcp add --transport http serpapi https://mcp.serpapi.com/mcp --header \"Authorization: Bearer $SERPAPI_API_KEY\"",
        "config": {
          "mcpServers": {
            "serpapi": {
              "headers": {
                "Authorization": "Bearer ${SERPAPI_API_KEY}"
              },
              "type": "http",
              "url": "https://mcp.serpapi.com/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/serpapi"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Starter plan, per 1,000 searches",
          "unit": "1k-requests",
          "usd": 25,
          "note": "1,000 searches for $25 a month"
        },
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 25,
          "note": "1,000 searches"
        },
        {
          "item": "Developer plan",
          "unit": "month",
          "usd": 75,
          "note": "5,000 searches"
        },
        {
          "item": "Production plan",
          "unit": "month",
          "usd": 150,
          "note": "15,000 searches, includes Legal Shield"
        },
        {
          "item": "Big Data plan",
          "unit": "month",
          "usd": 275,
          "note": "30,000 searches"
        }
      ],
      "provenance": {
        "legalEntity": "SerpApi, LLC",
        "domain": "serpapi.com",
        "domainRegistered": "2016-07-27",
        "endpointOnVendorDomain": true,
        "terms": "https://serpapi.com/legal",
        "privacy": "https://serpapi.com/legal",
        "statusPage": "https://status.serpapi.com",
        "changelog": "https://serpapi.com/release-notes",
        "securityTxt": "valid",
        "checked": "2026-09-30",
        "notes": [
          "Terms and privacy policy share one page. The entity is a Texas LLC at 1632 S 1st St, Austin"
        ],
        "score": 100
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/serpapi.json",
      "live": {
        "slug": "serpapi",
        "probe": {
          "target": "https://serpapi.com/search",
          "method": "get",
          "lastAt": "2026-10-05T00:57:28.057660675Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 126,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 121,
          "p95ms24h": 161,
          "samples24h": 272,
          "samples30d": 1113,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 11,
              "ok": 11
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.serpapi.com",
          "indicator": "minor",
          "summary": "Partially Degraded Service",
          "checkedAt": "2026-10-05T00:54:04.799244693Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "io.github.serpapi/serpapi-mcp",
            "version": "2.0.0",
            "seenAt": "2026-10-04T23:42:40.113054682Z"
          },
          {
            "registry": "npm",
            "name": "serpapi",
            "version": "2.2.1",
            "seenAt": "2026-10-04T16:39:46.767306834Z"
          },
          {
            "registry": "pypi",
            "name": "serpapi",
            "version": "1.1.2",
            "released": "2026-09-22",
            "seenAt": "2026-10-04T16:39:47.563060356Z"
          }
        ],
        "npmWeekly": 179483,
        "pypiWeekly": 98760,
        "securityTxt": {
          "url": "https://serpapi.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-01-01T00:00:00.000Z",
          "checkedAt": "2026-10-04T15:16:05.776295986Z"
        },
        "llmsTxt": {
          "url": "https://serpapi.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-04T15:18:13.725747382Z"
        },
        "domain": {
          "domain": "serpapi.com",
          "registered": "2016-07-27",
          "source": "https://rdap.verisign.com/com/v1/domain/serpapi.com",
          "checkedAt": "2026-10-04T13:07:58.738158184Z"
        },
        "pages": [
          {
            "url": "https://serpapi.com/release-notes",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:46.72146268Z",
            "changedAt": "2026-10-04T15:47:46.72146268Z",
            "fingerprint": "c2f31ad37222"
          },
          {
            "url": "https://serpapi.com/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-04T15:47:44.749973052Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "30dfa765089d"
          },
          {
            "url": "https://serpapi.com/legal",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-04T15:47:42.707883837Z",
            "changedAt": "2026-10-04T15:47:42.707883837Z",
            "fingerprint": "60e86363a7be"
          }
        ],
        "updatedAt": "2026-10-05T00:57:28.057660675Z"
      }
    },
    "summary": "Brave Search API + MCP has a score of 68.1 (B) against SerpApi's 62.6 (B). Both do web search. The largest gap is payments \u0026 pricing, 40 points."
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serpapi",
    "json": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serpapi.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serpapi.md",
    "slim": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serpapi.min.md"
  },
  "markdown": "Brave Search API + MCP has a score of 68.1 (B) against SerpApi's 62.6 (B). Both do web search. The largest gap is payments \u0026 pricing, 40 points.\n\n- Brave Search API + MCP: grade B, 68.1/100, rank #132 of 452. Markdown https://www.anchorterminal.com/tools/brave-search-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/brave-search-mcp.json\n- SerpApi: grade B, 62.6/100, rank #216 of 452. Markdown https://www.anchorterminal.com/tools/serpapi.md · JSON https://www.anchorterminal.com/api/v1/tools/serpapi.json\n\n## Which one, for what\n\nPick Brave Search API + MCP for schema \u0026 documentation (+5), security \u0026 auth (+18), payments \u0026 pricing (+40), maintenance \u0026 community (+5).\n\nPick SerpApi for reliability (+5), agent ergonomics (+16).\n\n## Score by category\n\n| Category | Weight | Brave Search API + MCP | SerpApi | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 55 | 60 | SerpApi +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 72 | 67 | Brave Search API + MCP +5 |\n| Agent ergonomics | 13% (16.2 this run) | 72 | 88 | SerpApi +16 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 40 | Brave Search API + MCP +18 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 70 | 30 | Brave Search API + MCP +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 87 | 82 | Brave Search API + MCP +5 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 82 | 85 | SerpApi +3 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **68.1 · B** | **62.6 · B** | |\n\n## Facts side by side\n\n| Fact | Brave Search API + MCP | SerpApi |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Brave | SerpApi |\n| Hosted endpoint | `https://api.search.brave.com/res/v1/web/search` | `https://serpapi.com/search` |\n| Transports | stdio, Streamable HTTP, HTTP | HTTP, Streamable HTTP, stdio |\n| Auth | OAuth or key | API key |\n| Pricing | Pay per use | Freemium |\n| x402 | payer tooling only | no |\n| Licence | MIT | none |\n| Tools exposed | 8 | 3 |\n| Context cost (tools/list) | n/a | n/a |\n| p95 latency | not measured yet | not measured yet |\n| Availability (30d) | not measured yet | not measured yet |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| MCP registry | `io.github.brave/brave-search-mcp-server` | `io.github.serpapi/serpapi-mcp` |\n| Last release | 2026-09-17 | 2026-09-22 |\n| Popularity | 1.4k stars, 22k npm/wk | 175 stars, 169k npm/wk, 104k PyPI/wk |\n| Agent reviews | 3.5/5 (2) | 3.5/5 (2) |\n\n## Verdicts\n\n**Brave Search API + MCP.** x402 proxy sells web, LLM Context, news, video, image and local search at $0.005 a call, and a failed search isn't charged. The status page marks the Search API \"not monitored\" and shows no incident history.\n\n**SerpApi.** Over 100 engines behind one GET URL, with `json_restrictor` field selection and `output=md`. 25 incidents on the status feed from July to 1 October 2026, including an outage across all APIs on 10 September.\n\n## Before you call either\n\n### Brave Search API + MCP\n\n1. Call /res/v1/llm/context when you need page text rather than links. It saves a separate fetch\n2. Treat \"No web results found\" from the MCP server as an empty result, not an outage\n3. On 429, wait for `X-RateLimit-Reset` seconds. There's no `Retry-After` header\n4. Skip `brave_summarizer`. The Summarizer is deprecated and the x402 proxy doesn't sell it\n5. Pin `Api-Version` to a date, since requests without it get the latest version\n\n### SerpApi\n\n1. Use the MCP with `Authorization: Bearer`, not the key-in-path URL the README leads with\n2. Read `serpapi://engines/\u003cengine\u003e` before calling a new engine, since `params` isn't typed\n3. Add `json_restrictor` or `output=md` to cut tokens, and `mode: compact` on the MCP\n4. A 429 means either the hourly limit or an empty balance. Check the account before retrying\n5. Repeat a search within the hour and the cached copy is free. Set `no_cache=true` only when freshness matters\n\n## Other comparisons with Brave Search API + MCP or SerpApi\n\n- [Brave Search API + MCP vs Exa API + MCP](https://www.anchorterminal.com/compare/brave-search-mcp-vs-exa-mcp.md)\n- [Brave Search API + MCP vs Firecrawl MCP](https://www.anchorterminal.com/compare/brave-search-mcp-vs-firecrawl-mcp.md)\n- [Brave Search API + MCP vs Linkup](https://www.anchorterminal.com/compare/brave-search-mcp-vs-linkup.md)\n- [Brave Search API + MCP vs Parallel Search and Task APIs](https://www.anchorterminal.com/compare/brave-search-mcp-vs-parallel-search-api.md)\n- [Brave Search API + MCP vs SearchAPI.io](https://www.anchorterminal.com/compare/brave-search-mcp-vs-searchapi-io.md)\n- [Brave Search API + MCP vs Serper](https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper.md)\n- [Brave Search API + MCP vs Tavily API + MCP](https://www.anchorterminal.com/compare/brave-search-mcp-vs-tavily-mcp.md)\n- [Brave Search API + MCP vs Valyu](https://www.anchorterminal.com/compare/brave-search-mcp-vs-valyu.md)\n- [Brave Search API + MCP vs You.com APIs](https://www.anchorterminal.com/compare/brave-search-mcp-vs-you-com-api.md)\n- [Exa API + MCP vs SerpApi](https://www.anchorterminal.com/compare/exa-mcp-vs-serpapi.md)\n- [Firecrawl MCP vs SerpApi](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serpapi.md)\n- [Linkup vs SerpApi](https://www.anchorterminal.com/compare/linkup-vs-serpapi.md)\n- [Parallel Search and Task APIs vs SerpApi](https://www.anchorterminal.com/compare/parallel-search-api-vs-serpapi.md)\n- [SearchAPI.io vs SerpApi](https://www.anchorterminal.com/compare/searchapi-io-vs-serpapi.md)\n- [SerpApi vs Serper](https://www.anchorterminal.com/compare/serpapi-vs-serper.md)\n- [SerpApi vs Tavily API + MCP](https://www.anchorterminal.com/compare/serpapi-vs-tavily-mcp.md)\n- [SerpApi vs Valyu](https://www.anchorterminal.com/compare/serpapi-vs-valyu.md)\n- [SerpApi vs You.com APIs](https://www.anchorterminal.com/compare/serpapi-vs-you-com-api.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-05",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.3",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Brave Search API + MCP vs SerpApi",
        "url": ""
      }
    ],
    "description": "Brave Search API + MCP has a score of 68.1 (B) against SerpApi's 62.6 (B). Both do web search. The largest gap is payments \u0026 pricing, 40 points. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Brave Search API + MCP B 68.1",
      "SerpApi B 62.6",
      "scores"
    ],
    "h1": "Brave Search API + MCP vs SerpApi",
    "image": "https://www.anchorterminal.com/assets/og/compare-brave-search-mcp-vs-serpapi.png",
    "path": "/compare/brave-search-mcp-vs-serpapi",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Brave Search API + MCP vs SerpApi for AI agents, B 68.1 vs B 62.6",
    "toc": null,
    "updated": "2026-10-05",
    "url": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serpapi"
  },
  "tokens": {
    "markdown": 1700,
    "slim": 330
  },
  "version": 1
}
