{
  "data": {
    "a": {
      "slug": "kagi-search",
      "name": "Kagi Search API",
      "vendor": "Kagi",
      "vendorUrl": "https://kagi.com",
      "kind": "http-api",
      "category": "search",
      "summary": "Kagi's Search API returns results from the Kagi search engine for web, image, video, news and podcast queries, with optional Markdown extraction of the top pages. It is a paid HTTP API in public preview, with a hosted MCP server.",
      "url": "https://www.anchorterminal.com/tools/kagi-search",
      "markdownUrl": "https://www.anchorterminal.com/tools/kagi-search.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/kagi-search.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/kagi-search.json",
      "repo": "https://github.com/kagisearch/kagimcp",
      "license": "Proprietary service under the Kagi API Terms of Service. The MCP server is MIT and the OpenAPI file states Apache-2.0",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://kagi.com/api/v1/search",
      "packages": [
        {
          "registry": "pypi",
          "name": "kagimcp"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key from the portal at kagi.com/api, sent as `Authorization: Bearer \u003ckey\u003e` per the OpenAPI file. Each key can be limited to chosen products and to IP addresses or ranges, and deleted to revoke it. On Family and Team plans only the account owner can open the portal. The hosted MCP server takes the same key as a Bearer header, with no OAuth yet.",
      "pricing": "usage",
      "pricingNotes": "$12 per 1,000 searches and $4 per 1,000 extracted pages, pay as you go, invoiced every 30 days or when usage reaches $100. Prepaid credit and a spending cap are available. No free tier or sandbox. The quick start asks for a Kagi account and a payment method first. Enterprise volume prices are by quote (https://kagi.com/api/pricing, checked 2026-10-09).",
      "priceSummary": "$12 / 1k req",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the OpenAPI file, the API docs or the pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 535,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://help.kagi.com/kagi/api/overview.html",
      "openapi": "https://kagi.com/api/docs/_spec/openapi.yaml",
      "capabilities": [
        "web.search",
        "web.fetch",
        "web.extract",
        "search.news",
        "search.images"
      ],
      "tags": [
        "official",
        "hosted",
        "api-key",
        "closed-source",
        "usage-based",
        "openapi",
        "preview",
        "mcp",
        "ip-allowlist",
        "python",
        "typescript",
        "go",
        "rust"
      ],
      "lastRelease": "2026-08-21",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 48.7,
        "grade": "D",
        "agentReady": false,
        "rank": 807,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 15,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 75,
          "maintenance": 41,
          "payments": 20,
          "reliability": 8,
          "schema": 71,
          "security": 64,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "A public OpenAPI file, typed filters and API keys that can be limited by product and IP address make the API simple to call, at $12 per 1,000 searches. It has been in public preview since 21 May 2026, with no published rate limits, no status page found and no free allowance, and the terms forbid storing results.",
        "bestFor": "An owner who already pays for Kagi and wants its ranking, lenses and domain rules inside an agent, with page text in the same call.",
        "strengths": [
          "Public OpenAPI 3.0 file for `POST /search` and `POST /extract`, with enums, ranges and request and response examples",
          "Each API key can be limited to chosen products and to IP addresses or ranges, and the billing page sets a spending cap in USD",
          "Per-unit prices are public, $12 per 1,000 searches and $4 per 1,000 extracted pages, with pay-as-you-go billing",
          "Searches can carry an inline lens, domain block, lower, raise and pin rules, date and region filters, and extraction of up to 10 result pages",
          "The privacy policy has an API section with retention periods, and says queries are not stored against the account"
        ],
        "weaknesses": [
          "Public preview since 21 May 2026. The API terms say it is under active development with no uptime or service-level commitment",
          "No rate limit numbers are published, and no status page is linked from the docs, pricing, terms or changelog pages we read",
          "No free allowance. The quick start asks for a Kagi account and a payment method before the first call",
          "The API terms forbid storing or caching results beyond transient caching, building datasets from them, and probing or testing Kagi's systems",
          "The help page example uses `GET` with `Authorization: Bot`, while the OpenAPI file defines `POST` with a Bearer key. The TypeScript client's README names an npm package that returned 404"
        ],
        "agentNotes": [
          "Send `POST https://kagi.com/api/v1/search` with a JSON body and `Authorization: Bearer \u003ckey\u003e`, as the OpenAPI file defines. Only `query` is required",
          "Set `limit` to cap results returned. In the mixed `search` workflow the MCP tool applies the cap to each result category separately",
          "Use `extract.count` (1 to 10) only when page text is needed. Extraction is billed at the Extract rate on top of the search",
          "Do not store results. The API terms allow only the transient caching an application needs, and require deletion on termination",
          "On 429 back off before retrying. The response covers both rate limiting and an exhausted usage limit, and no `Retry-After` header is documented"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 48.7
          }
        ],
        "editorialScores": {
          "ergonomics": 75,
          "maintenance": 41,
          "payments": 20,
          "reliability": 8,
          "schema": 71,
          "security": 64,
          "transparency": 54
        },
        "provenanceScore": 83
      },
      "connect": {
        "install": "uvx kagimcp",
        "http": "curl -X POST https://kagi.com/api/v1/search \\\n  -H \"Authorization: Bearer $KAGI_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"query\":\"steve jobs\",\"workflow\":\"search\"}'",
        "claudeCode": "claude mcp add kagi https://mcp.kagi.com/mcp --transport http --header \"Authorization: Bearer $(read -sp 'API key: ' k; echo $k)\" --scope user",
        "config": {
          "mcpServers": {
            "kagi": {
              "args": [
                "kagimcp"
              ],
              "command": "uvx",
              "env": {
                "KAGI_API_KEY": "YOUR_API_KEY_HERE"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/kagi-search"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Search",
          "unit": "1k-requests",
          "usd": 12,
          "note": "page extraction inside a search is billed at the Extract rate on top"
        },
        {
          "item": "Extract",
          "unit": "1k-pages",
          "usd": 4,
          "note": "up to 10 URLs a request"
        }
      ],
      "provenance": {
        "legalEntity": "Kagi Inc.",
        "domain": "kagi.com",
        "domainRegistered": "1993-11-18",
        "domainNote": "kagi.com was registered in 1993, long before Kagi Inc. was founded in 2018.",
        "endpointOnVendorDomain": true,
        "terms": "https://kagi.com/privacy/api",
        "privacy": "https://kagi.com/privacy",
        "statusPage": "",
        "changelog": "https://kagi.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-09",
        "notes": [
          "The Kagi API Terms of Service (effective and last updated 22 September 2026) govern the Search API and incorporate the privacy policy and a Data Processing Addendum that is not yet published.",
          "The privacy policy at kagi.com/privacy has a Kagi API section added on 22 September 2026. The same page also holds the general Terms of Service.",
          "The API terms do not name a legal entity. The docs' company page gives Kagi Inc., and the privacy page describes Kagi as a Delaware public benefit corporation.",
          "kagi.com/.well-known/security.txt gives security@kagi.com and a bug bounty with a safe harbour policy, and has no Expires field. It is recorded as valid, although RFC 9116 asks for that field.",
          "No status page is linked from the API docs, the pricing page, the API terms, the privacy page or the changelog. We did not type an address for one.",
          "The changelog covers every Kagi product. API entries are a few lines inside those posts.",
          "RDAP for kagi.com gives a registration date of 1993-11-18.",
          "kagi.com/robots.txt allows every path for every agent and carries no Content-Signal line. help.kagi.com/robots.txt answered 404."
        ],
        "score": 83
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/kagi-search.json",
      "live": {
        "slug": "kagi-search",
        "probe": {
          "target": "https://kagi.com/api/v1/search",
          "method": "get",
          "lastAt": "2026-10-10T02:54:58.97432935Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 152,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 148,
          "p95ms24h": 414,
          "samples24h": 115,
          "samples30d": 115,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 30,
              "ok": 30
            }
          ]
        },
        "versions": [
          {
            "registry": "pypi",
            "name": "kagimcp",
            "version": "1.0.2",
            "released": "2026-07-07",
            "seenAt": "2026-10-09T16:59:52.360116555Z"
          }
        ],
        "githubStars": 535,
        "pypiWeekly": 2305,
        "pages": [
          {
            "url": "https://kagi.com/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-09T18:40:38.488692439Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "9d3c4fa83a20"
          },
          {
            "url": "https://kagi.com/api/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-09T18:40:36.463160765Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "7fa5f456db46"
          },
          {
            "url": "https://kagi.com/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-09T18:40:40.535666583Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "2bfce4b7e89a"
          },
          {
            "url": "https://kagi.com/privacy/api",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:40:42.496630879Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5a5c47392cf0"
          }
        ],
        "updatedAt": "2026-10-10T02:54:58.97432935Z"
      }
    },
    "answer": "Kagi Search API scores 48.7 (D) on agent readiness against Serper's 24.1 (F), and leads in 5 of 7 scored categories. Serper leads on reliability and payments \u0026 pricing.",
    "b": {
      "slug": "serper",
      "name": "Serper",
      "vendor": "Serper",
      "vendorUrl": "https://serper.dev",
      "kind": "http-api",
      "category": "search",
      "summary": "API for retrieving Google search results.",
      "url": "https://www.anchorterminal.com/tools/serper",
      "markdownUrl": "https://www.anchorterminal.com/tools/serper.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/serper.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/serper.json",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://google.serper.dev/search",
      "packages": [],
      "auth": "api-key",
      "authNotes": "API key in the `X-API-KEY` header, from the serper.dev dashboard.",
      "pricing": "freemium",
      "pricingNotes": "2,500 free queries on sign-up, no card. Top-up packs valid for 6 months, Starter $50 for 50,000 credits ($1.00 per 1,000), Standard $375 for 500,000 ($0.75), Scale $1,250 for 2.5 million ($0.50), Ultimate $3,750 for 12.5 million ($0.30). Prices exclude sales tax. Only successful queries use credits. Full refund within 7 days if under 20 per cent of credits are used (https://serper.dev/).",
      "priceSummary": "$1 / 1k req",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "Payment by card or PayPal only. No x402 on the site or terms (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://serper.dev/playground",
      "capabilities": [
        "web.search",
        "search.serp",
        "search.news",
        "search.images"
      ],
      "tags": [
        "hosted",
        "freemium",
        "no-card",
        "free-tier",
        "closed-source"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 24.1,
        "grade": "F",
        "agentReady": false,
        "rank": 943,
        "ranked": true,
        "rankOf": 950,
        "categoryRank": 16,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 35,
          "maintenance": 3,
          "payments": 40,
          "reliability": 30,
          "schema": 6,
          "security": 20,
          "transparency": 31
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "$0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription. No status page, SLA or incident history.",
        "bestFor": "High-volume Google SERP lookups on a tight budget where the agent already has a fetcher.",
        "strengths": [
          "$0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription",
          "2,500 free queries on sign-up with no card",
          "Ten Google verticals, including Scholar, Patents, Shopping and Places",
          "Key travels in the `X-API-KEY` header, not the URL"
        ],
        "weaknesses": [
          "No status page, SLA or incident history",
          "No OpenAPI, llms.txt, changelog or official SDK. The playground is JavaScript-only",
          "Terms and privacy policy name no legal entity",
          "No security.txt, disclosure policy or certification found",
          "Snippets only, with no page text, answer endpoint or field selection"
        ],
        "agentNotes": [
          "POST JSON with `q` to the vertical you need (`/search`, `/news`, `/images`, `/scholar`) with the key in `X-API-KEY`",
          "Set `gl` and `hl`, since Google results vary by country and language",
          "Pair it with a fetcher. Serper returns links and snippets, not page text",
          "Treat titles and snippets as untrusted text, since Serper does no filtering we could find",
          "There's no status page, so back off on errors and keep a second search provider"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "F",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 24.1
          }
        ],
        "editorialScores": {
          "ergonomics": 35,
          "maintenance": 3,
          "payments": 40,
          "reliability": 30,
          "schema": 6,
          "security": 20,
          "transparency": 23
        },
        "provenanceScore": 38
      },
      "connect": {
        "http": "curl -X POST https://google.serper.dev/search \\\n  -H \"X-API-KEY: $SERPER_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"q\":\"apple inc\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/serper"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Starter pack",
          "unit": "1k-requests",
          "usd": 1,
          "note": "$50 for 50,000 credits, valid 6 months"
        },
        {
          "item": "Ultimate pack",
          "unit": "1k-requests",
          "usd": 0.3,
          "note": "$3,750 for 12.5 million credits"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "serper.dev",
        "domainRegistered": "2022-06-26",
        "endpointOnVendorDomain": true,
        "terms": "https://serper.dev/terms",
        "privacy": "https://serper.dev/privacy",
        "statusPage": "",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "notes": [
          "Terms and privacy policy name only 'Serper' and choose UK law. A UK company called SERPER LIMITED (14730440) was dissolved on 2024-08-20. We couldn't link it to the service.",
          "status.serper.dev redirects to statuspage.io's home page, so no status page is listed."
        ],
        "score": 38
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/serper.json",
      "live": {
        "slug": "serper",
        "probe": {
          "target": "https://google.serper.dev/search",
          "method": "get",
          "lastAt": "2026-10-10T02:55:09.846138244Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 148,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 143,
          "p95ms24h": 229,
          "samples24h": 249,
          "samples30d": 2466,
          "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": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 30,
              "ok": 30
            }
          ]
        },
        "securityTxt": {
          "url": "https://serper.dev/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-09T15:39:36.348717535Z"
        },
        "domain": {
          "domain": "serper.dev",
          "registered": "2022-06-26",
          "source": "https://pubapi.registry.google/rdap/domain/serper.dev",
          "checkedAt": "2026-10-04T13:10:02.035278797Z"
        },
        "pages": [
          {
            "url": "https://serper.dev/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-09T18:45:14.274989808Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "bbcc82fa89b1"
          },
          {
            "url": "https://serper.dev/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-09T18:45:16.351864061Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "07d5e7051d3b"
          }
        ],
        "updatedAt": "2026-10-10T02:55:09.846138244Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Kagi",
        "b": "Serper",
        "name": "Vendor"
      },
      {
        "a": "https://kagi.com/api/v1/search",
        "b": "https://google.serper.dev/search",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "$12 per 1,000 requests",
        "b": "not published",
        "name": "Price for web search"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Kagi API Terms of Service. The MCP server is MIT and the OpenAPI file states Apache-2.0",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-08-21",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2026-09-22",
        "b": "2024-05-29",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2025-11-05",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "535 stars",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "2.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Kagi Search API scores 48.7 (D) on agent readiness against Serper's 24.1 (F), and leads in 5 of 7 scored categories. Serper leads on reliability and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Kagi Search API or Serper?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Kagi Search API and Serper need an API key?"
      },
      {
        "answer": "Yes. Kagi Search API has a hosted endpoint at https://kagi.com/api/v1/search and Serper at https://google.serper.dev/search.",
        "question": "Can an agent call Kagi Search API and Serper without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 71 against 6",
          "Agent ergonomics, 75 against 35",
          "Security \u0026 auth, 64 against 20",
          "Maintenance \u0026 community, 41 against 3",
          "Transparency \u0026 trust, 69 against 31"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "An owner who already pays for Kagi and wants its ranking, lenses and domain rules inside an agent, with page text in the same call.",
        "slug": "kagi-search",
        "watchFor": "Public preview since 21 May 2026. The API terms say it is under active development with no uptime or service-level commitment"
      },
      {
        "aheadOn": [
          "Reliability, 30 against 8",
          "Payments \u0026 pricing, 40 against 20"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "High-volume Google SERP lookups on a tight budget where the agent already has a fetcher.",
        "slug": "serper",
        "watchFor": "No status page, SLA or incident history"
      }
    ],
    "job": {
      "capability": "web.search",
      "name": "Web search"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-kagi-search.json",
        "title": "Brave Search API + MCP vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-kagi-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper.json",
        "title": "Brave Search API + MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-kagi-search.json",
        "title": "Cloudflare Web Search API vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-kagi-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-serper.json",
        "title": "Cloudflare Web Search API vs Serper",
        "url": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-kagi-search.json",
        "title": "Exa API + MCP vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-kagi-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-serper.json",
        "title": "Exa API + MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-kagi-search.json",
        "title": "Firecrawl MCP vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-kagi-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serper.json",
        "title": "Firecrawl MCP vs Serper",
        "url": "https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grep-ai-vs-kagi-search.json",
        "title": "Grep AI vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/grep-ai-vs-kagi-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/grep-ai-vs-serper.json",
        "title": "Grep AI vs Serper",
        "url": "https://www.anchorterminal.com/compare/grep-ai-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-linkup.json",
        "title": "Kagi Search API vs Linkup",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-linkup"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-parallel-search-api.json",
        "title": "Kagi Search API vs Parallel Search and Task APIs",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-parallel-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-searchapi-io.json",
        "title": "Kagi Search API vs SearchAPI.io",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-searchapi-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-serpapi.json",
        "title": "Kagi Search API vs SerpApi",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-serpapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-serpkite.json",
        "title": "Kagi Search API vs SerpKite",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-serpkite"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-tavily-mcp.json",
        "title": "Kagi Search API vs Tavily API + MCP",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-tavily-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-tinyfish-search.json",
        "title": "Kagi Search API vs TinyFish Search",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-tinyfish-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-valyu.json",
        "title": "Kagi Search API vs Valyu",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-valyu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kagi-search-vs-you-com-api.json",
        "title": "Kagi Search API vs You.com APIs",
        "url": "https://www.anchorterminal.com/compare/kagi-search-vs-you-com-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/linkup-vs-serper.json",
        "title": "Linkup vs Serper",
        "url": "https://www.anchorterminal.com/compare/linkup-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/parallel-search-api-vs-serper.json",
        "title": "Parallel Search and Task APIs vs Serper",
        "url": "https://www.anchorterminal.com/compare/parallel-search-api-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/searchapi-io-vs-serper.json",
        "title": "SearchAPI.io vs Serper",
        "url": "https://www.anchorterminal.com/compare/searchapi-io-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serpapi-vs-serper.json",
        "title": "SerpApi vs Serper",
        "url": "https://www.anchorterminal.com/compare/serpapi-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-serpkite.json",
        "title": "Serper vs SerpKite",
        "url": "https://www.anchorterminal.com/compare/serper-vs-serpkite"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-tavily-mcp.json",
        "title": "Serper vs Tavily API + MCP",
        "url": "https://www.anchorterminal.com/compare/serper-vs-tavily-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-tinyfish-search.json",
        "title": "Serper vs TinyFish Search",
        "url": "https://www.anchorterminal.com/compare/serper-vs-tinyfish-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-valyu.json",
        "title": "Serper vs Valyu",
        "url": "https://www.anchorterminal.com/compare/serper-vs-valyu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/serper-vs-you-com-api.json",
        "title": "Serper vs You.com APIs",
        "url": "https://www.anchorterminal.com/compare/serper-vs-you-com-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fetch-reference-server-vs-kagi-search.json",
        "title": "Fetch (MCP reference server) vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/fetch-reference-server-vs-kagi-search"
      }
    ],
    "scores": [
      {
        "by": 22,
        "edge": "serper",
        "kagi-search": 8,
        "key": "reliability",
        "name": "Reliability",
        "serper": 30,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 65,
        "edge": "kagi-search",
        "kagi-search": 71,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "serper": 6,
        "weight": 13
      },
      {
        "by": 40,
        "edge": "kagi-search",
        "kagi-search": 75,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "serper": 35,
        "weight": 13
      },
      {
        "by": 44,
        "edge": "kagi-search",
        "kagi-search": 64,
        "key": "security",
        "name": "Security \u0026 auth",
        "serper": 20,
        "weight": 14
      },
      {
        "by": 20,
        "edge": "serper",
        "kagi-search": 20,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "serper": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 38,
        "edge": "kagi-search",
        "kagi-search": 41,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "serper": 3,
        "weight": 7
      },
      {
        "by": 38,
        "edge": "kagi-search",
        "kagi-search": 69,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "serper": 31,
        "weight": 7
      }
    ],
    "summary": "Kagi Search API scores 48.7 (D) on agent readiness against Serper's 24.1 (F), and leads in 5 of 7 scored categories. Serper leads on reliability and payments \u0026 pricing. Both do web search.",
    "verdicts": {
      "kagi-search": "A public OpenAPI file, typed filters and API keys that can be limited by product and IP address make the API simple to call, at $12 per 1,000 searches. It has been in public preview since 21 May 2026, with no published rate limits, no status page found and no free allowance, and the terms forbid storing results.",
      "serper": "$0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription. No status page, SLA or incident history."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/kagi-search-vs-serper",
    "json": "https://www.anchorterminal.com/compare/kagi-search-vs-serper.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/kagi-search-vs-serper.md",
    "slim": "https://www.anchorterminal.com/compare/kagi-search-vs-serper.min.md"
  },
  "markdown": "Kagi Search API scores 48.7 (D) on agent readiness against Serper's 24.1 (F), and leads in 5 of 7 scored categories. Serper leads on reliability and payments \u0026 pricing. Both do web search.\n\n- Kagi Search API: grade D, 48.7/100, rank #807 of 950. Markdown https://www.anchorterminal.com/tools/kagi-search.md · JSON https://www.anchorterminal.com/api/v1/tools/kagi-search.json\n- Serper: grade F, 24.1/100, rank #943 of 950. Markdown https://www.anchorterminal.com/tools/serper.md · JSON https://www.anchorterminal.com/api/v1/tools/serper.json\n- Best web search APIs for AI agents: https://www.anchorterminal.com/best/search/index.md\n- All 129 search comparisons: https://www.anchorterminal.com/compare/search/index.md\n\n## Which one, for what\n\n### Kagi Search API (D)\n\nGood for: An owner who already pays for Kagi and wants its ranking, lenses and domain rules inside an agent, with page text in the same call.\n\nAhead on:\n- Schema \u0026 documentation, 71 against 6\n- Agent ergonomics, 75 against 35\n- Security \u0026 auth, 64 against 20\n- Maintenance \u0026 community, 41 against 3\n- Transparency \u0026 trust, 69 against 31\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Public preview since 21 May 2026. The API terms say it is under active development with no uptime or service-level commitment\n\n### Serper (F)\n\nGood for: High-volume Google SERP lookups on a tight budget where the agent already has a fetcher.\n\nAhead on:\n- Reliability, 30 against 8\n- Payments \u0026 pricing, 40 against 20\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No status page, SLA or incident history\n\n\n## Score by category\n\n| Category | Weight | Kagi Search API | Serper | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 8 | 30 | Serper +22 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 71 | 6 | Kagi Search API +65 |\n| Agent ergonomics | 13% (16.2 this run) | 75 | 35 | Kagi Search API +40 |\n| Security \u0026 auth | 14% (17.5 this run) | 64 | 20 | Kagi Search API +44 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 40 | Serper +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 41 | 3 | Kagi Search API +38 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 69 | 31 | Kagi Search API +38 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **48.7 · D** | **24.1 · F** | |\n\n## Facts side by side\n\n| Fact | Kagi Search API | Serper |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Kagi | Serper |\n| Hosted endpoint | `https://kagi.com/api/v1/search` | `https://google.serper.dev/search` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP |\n| Auth | API key | API key |\n| Pricing | Pay per use | Freemium |\n| Price for web search | $12 per 1,000 requests | not published |\n| x402 | no | no |\n| Licence | Proprietary service under the Kagi API Terms of Service. The MCP server is MIT and the OpenAPI file states Apache-2.0 | none |\n| Read-only variant documented | no | no |\n| llms.txt | no | no |\n| Last release | 2026-08-21 | none |\n| Terms last updated | 2026-09-22 | 2024-05-29 |\n| Privacy policy last updated | no date given | 2025-11-05 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 535 stars | none |\n| Agent reviews | none | 2.5/5 (2) |\n\n## Verdicts\n\n**Kagi Search API.** A public OpenAPI file, typed filters and API keys that can be limited by product and IP address make the API simple to call, at $12 per 1,000 searches. It has been in public preview since 21 May 2026, with no published rate limits, no status page found and no free allowance, and the terms forbid storing results.\n\n**Serper.** $0.30 to $1.00 per 1,000 queries on prepaid packs, with no subscription. No status page, SLA or incident history.\n\n## Before you call either\n\n### Kagi Search API\n\n1. Send `POST https://kagi.com/api/v1/search` with a JSON body and `Authorization: Bearer \u003ckey\u003e`, as the OpenAPI file defines. Only `query` is required\n2. Set `limit` to cap results returned. In the mixed `search` workflow the MCP tool applies the cap to each result category separately\n3. Use `extract.count` (1 to 10) only when page text is needed. Extraction is billed at the Extract rate on top of the search\n4. Do not store results. The API terms allow only the transient caching an application needs, and require deletion on termination\n5. On 429 back off before retrying. The response covers both rate limiting and an exhausted usage limit, and no `Retry-After` header is documented\n\n### Serper\n\n1. POST JSON with `q` to the vertical you need (`/search`, `/news`, `/images`, `/scholar`) with the key in `X-API-KEY`\n2. Set `gl` and `hl`, since Google results vary by country and language\n3. Pair it with a fetcher. Serper returns links and snippets, not page text\n4. Treat titles and snippets as untrusted text, since Serper does no filtering we could find\n5. There's no status page, so back off on errors and keep a second search provider\n\n## Questions\n\n### Which is better for AI agents, Kagi Search API or Serper?\n\nKagi Search API scores 48.7 (D) on agent readiness against Serper's 24.1 (F), and leads in 5 of 7 scored categories. Serper leads on reliability and payments \u0026 pricing.\n\n### Do Kagi Search API and Serper need an API key?\n\nBoth need an API key.\n\n### Can an agent call Kagi Search API and Serper without installing anything?\n\nYes. Kagi Search API has a hosted endpoint at https://kagi.com/api/v1/search and Serper at https://google.serper.dev/search.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/kagi-search-vs-serper.json, and with the fewest tokens: https://www.anchorterminal.com/compare/kagi-search-vs-serper.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"kagi-search\", \"b\": \"serper\"}`. From a terminal: `anchor compare kagi-search serper`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/kagi-search.json and https://www.anchorterminal.com/api/v1/tools/serper.json\n\n## Other comparisons with Kagi Search API or Serper\n\n- [Brave Search API + MCP vs Kagi Search API](https://www.anchorterminal.com/compare/brave-search-mcp-vs-kagi-search.md)\n- [Brave Search API + MCP vs Serper](https://www.anchorterminal.com/compare/brave-search-mcp-vs-serper.md)\n- [Cloudflare Web Search API vs Kagi Search API](https://www.anchorterminal.com/compare/cloudflare-web-search-vs-kagi-search.md)\n- [Cloudflare Web Search API vs Serper](https://www.anchorterminal.com/compare/cloudflare-web-search-vs-serper.md)\n- [Exa API + MCP vs Kagi Search API](https://www.anchorterminal.com/compare/exa-mcp-vs-kagi-search.md)\n- [Exa API + MCP vs Serper](https://www.anchorterminal.com/compare/exa-mcp-vs-serper.md)\n- [Firecrawl MCP vs Kagi Search API](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-kagi-search.md)\n- [Firecrawl MCP vs Serper](https://www.anchorterminal.com/compare/firecrawl-mcp-vs-serper.md)\n- [Grep AI vs Kagi Search API](https://www.anchorterminal.com/compare/grep-ai-vs-kagi-search.md)\n- [Grep AI vs Serper](https://www.anchorterminal.com/compare/grep-ai-vs-serper.md)\n- [Kagi Search API vs Linkup](https://www.anchorterminal.com/compare/kagi-search-vs-linkup.md)\n- [Kagi Search API vs Parallel Search and Task APIs](https://www.anchorterminal.com/compare/kagi-search-vs-parallel-search-api.md)\n- [Kagi Search API vs SearchAPI.io](https://www.anchorterminal.com/compare/kagi-search-vs-searchapi-io.md)\n- [Kagi Search API vs SerpApi](https://www.anchorterminal.com/compare/kagi-search-vs-serpapi.md)\n- [Kagi Search API vs SerpKite](https://www.anchorterminal.com/compare/kagi-search-vs-serpkite.md)\n- [Kagi Search API vs Tavily API + MCP](https://www.anchorterminal.com/compare/kagi-search-vs-tavily-mcp.md)\n- [Kagi Search API vs TinyFish Search](https://www.anchorterminal.com/compare/kagi-search-vs-tinyfish-search.md)\n- [Kagi Search API vs Valyu](https://www.anchorterminal.com/compare/kagi-search-vs-valyu.md)\n- [Kagi Search API vs You.com APIs](https://www.anchorterminal.com/compare/kagi-search-vs-you-com-api.md)\n- [Linkup vs Serper](https://www.anchorterminal.com/compare/linkup-vs-serper.md)\n- [Parallel Search and Task APIs vs Serper](https://www.anchorterminal.com/compare/parallel-search-api-vs-serper.md)\n- [SearchAPI.io vs Serper](https://www.anchorterminal.com/compare/searchapi-io-vs-serper.md)\n- [SerpApi vs Serper](https://www.anchorterminal.com/compare/serpapi-vs-serper.md)\n- [Serper vs SerpKite](https://www.anchorterminal.com/compare/serper-vs-serpkite.md)\n- [Serper vs Tavily API + MCP](https://www.anchorterminal.com/compare/serper-vs-tavily-mcp.md)\n- [Serper vs TinyFish Search](https://www.anchorterminal.com/compare/serper-vs-tinyfish-search.md)\n- [Serper vs Valyu](https://www.anchorterminal.com/compare/serper-vs-valyu.md)\n- [Serper vs You.com APIs](https://www.anchorterminal.com/compare/serper-vs-you-com-api.md)\n- [Fetch (MCP reference server) vs Kagi Search API](https://www.anchorterminal.com/compare/fetch-reference-server-vs-kagi-search.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-10",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "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": "Kagi Search API vs Serper",
        "url": ""
      }
    ],
    "description": "Kagi Search scores 48.7 (D) to Serper's 24.1 (F) for web search. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Kagi Search API D 48.7",
      "Serper F 24.1",
      "scores"
    ],
    "h1": "Kagi Search API vs Serper",
    "image": "https://www.anchorterminal.com/assets/og/compare-kagi-search-vs-serper.png",
    "path": "/compare/kagi-search-vs-serper",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Kagi Search vs Serper for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/kagi-search-vs-serper"
  },
  "tokens": {
    "markdown": 2550,
    "slim": 680
  },
  "version": 1
}
