{
  "data": {
    "a": {
      "slug": "bing-grounding",
      "name": "Grounding with Bing Search",
      "vendor": "Microsoft",
      "vendorUrl": "https://www.microsoft.com/bing/apis",
      "kind": "http-api",
      "category": "search",
      "summary": "Grounding with Bing Search is Microsoft's web search tool for agents in Foundry Agent Service. A Foundry model searches Bing during a Responses API run and returns an answer with URL citations, through the bing_grounding and web_search tools.",
      "url": "https://www.anchorterminal.com/tools/bing-grounding",
      "markdownUrl": "https://www.anchorterminal.com/tools/bing-grounding.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/bing-grounding.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/bing-grounding.json",
      "dns": "bing-grounding.grade.anchorterminal.com",
      "license": "Proprietary service under the customer's Microsoft agreement and the separate Grounding with Bing terms of use, which exclude it from the Microsoft Data Protection Addendum",
      "transports": [
        "streamable-http"
      ],
      "remoteUrl": "https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses",
      "packages": [
        {
          "registry": "pypi",
          "name": "azure-ai-projects"
        },
        {
          "registry": "npm",
          "name": "@azure/ai-projects"
        }
      ],
      "auth": "oauth",
      "authNotes": "Microsoft Entra ID bearer token for the Foundry project (scope https://ai.azure.com/.default, for example through DefaultAzureCredential), with the Foundry User role to create and run agents. The bing_grounding tool also needs a Grounding with Bing resource whose key is stored in a project connection, created by someone with Contributor and Foundry Project Manager. The agent never holds the Bing key. The web_search tool needs no Bing resource or connection.",
      "pricing": "usage",
      "pricingNotes": "$14 per 1,000 transactions for Grounding with Bing Search and for Grounding with Bing Custom Search, counted as tool calls per run, plus the model deployment's token charges. No free tier found. An Azure subscription and a person's signup are needed first.",
      "priceSummary": "$14 / 1k req",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 on the Foundry web search and Bing tools pages, the Grounding with Bing pricing page or the terms of use (checked 2026-11-06). Billing runs through the Azure subscription.",
        "endpoints": []
      },
      "toolCount": 3,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/azure/foundry/agents/how-to/tools/web-search",
      "capabilities": [
        "web.search",
        "search.answer"
      ],
      "tags": [
        "hosted",
        "usage-priced",
        "closed-source",
        "enterprise",
        "card-required",
        "status-page",
        "python",
        "typescript"
      ],
      "lastRelease": "2026-11-02",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.7,
        "grade": "B",
        "agentReady": false,
        "rank": 502,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 15,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 61,
          "maintenance": 80,
          "payments": 20,
          "reliability": 68,
          "schema": 68,
          "security": 79,
          "transparency": 66
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "First-party Bing grounding inside Foundry Agent Service, called with Entra ID so the agent never holds a search key, at a published $14 per 1,000 transactions. The tools return a model's answer with citations, never the raw results, and data sent to them falls outside Microsoft's Data Protection Addendum and Azure's compliance boundary.",
        "bestFor": "Teams already building on Foundry Agent Service who want cited answers from Bing without handling a search key.",
        "strengths": [
          "Callers authenticate with Microsoft Entra ID and Foundry RBAC roles, and the Bing resource key stays in a project connection",
          "Price and limits published without a login, $14 per 1,000 transactions, 150 a second and 1 million a day",
          "Count, freshness, market and language parameters, and a Custom Search variant that limits grounding to chosen domains",
          "Docs say to treat web search results as untrusted input, and admins can turn web search off for a whole subscription"
        ],
        "weaknesses": [
          "The Bing tools never return raw results to developers, only a model-written answer with citation links",
          "The Data Protection Addendum does not apply and query data leaves the Azure compliance and geographic boundary",
          "No free tier, and a first call needs an Azure subscription, a Foundry project, a model deployment and, for bing_grounding, a paid Bing resource",
          "Terms forbid using Bing output to train or evaluate AI models and limit storing or caching it"
        ],
        "agentNotes": [
          "Use the citations in the response annotations as the sources; the tool output itself is not returned, and the terms require showing the URLs and the Bing query link",
          "Expect each run to bill one transaction per tool call at $14 per 1,000, plus model tokens, and set count and freshness in the tool configuration",
          "Treat cited page text as untrusted input and don't put secrets or personal data in prompts, since queries leave the Azure compliance boundary",
          "On 429 back off exponentially; no Retry-After header is documented for the tool"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.7
          }
        ],
        "editorialScores": {
          "ergonomics": 61,
          "maintenance": 80,
          "payments": 20,
          "reliability": 68,
          "schema": 68,
          "security": 79,
          "transparency": 45
        },
        "provenanceScore": 87,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install azure-ai-projects azure-identity",
        "http": "curl -X POST \"$FOUNDRY_PROJECT_ENDPOINT/openai/v1/responses\" \\\n  -H \"Authorization: Bearer $AGENT_TOKEN\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"model\":\"'$FOUNDRY_MODEL_DEPLOYMENT_NAME'\",\"input\":\"How does Wikipedia explain Euler identity?\",\"tool_choice\":\"required\",\"tools\":[{\"type\":\"bing_grounding\",\"bing_grounding\":{\"search_configurations\":[{\"project_connection_id\":\"'$BING_PROJECT_CONNECTION_ID'\",\"count\":7,\"market\":\"en-US\",\"set_lang\":\"en\",\"freshness\":\"week\"}]}}]}'"
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/bing-grounding"
      },
      "sameCompany": [
        "azure-openai",
        "azure-foundry-fine-tuning",
        "azure-ai-content-safety",
        "azure-speech-to-text",
        "azure-text-to-speech",
        "microsoft-agent-framework",
        "microsoft-execution-containers",
        "microsoft-entra-agent-id",
        "azure-key-vault",
        "azure-document-intelligence",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "tokeneconomizer",
        "playwright-mcp",
        "azure-mcp",
        "azure-maps",
        "azure-translator",
        "microsoft-graph-calendar",
        "azure-blob-storage",
        "onedrive-sharepoint",
        "microsoft-teams",
        "dynamics-365-sales",
        "copilot-studio-mcp",
        "power-automate",
        "foundry-local",
        "microsoft-decision-1",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph",
        "microsoft-graph-people",
        "mage-vl-cowork"
      ],
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Grounding with Bing Search transaction",
          "unit": "1k-requests",
          "usd": 14,
          "note": "Counted as tool calls per run, plus the model deployment's token charges"
        },
        {
          "item": "Grounding with Bing Custom Search transaction",
          "unit": "1k-requests",
          "usd": 14,
          "note": "Same limits, 150 a second and 1 million a day"
        }
      ],
      "provenance": {
        "legalEntity": "Microsoft Corporation",
        "domain": "microsoft.com",
        "domainRegistered": "1991-05-02",
        "endpointOnVendorDomain": true,
        "terms": "https://www.microsoft.com/bing/apis/grounding-legal-enterprise",
        "privacy": "https://privacy.microsoft.com/en-us/privacystatement",
        "statusPage": "https://azure.status.microsoft/en-us/status",
        "changelog": "https://learn.microsoft.com/en-us/azure/foundry/whats-new-foundry",
        "securityTxt": "expired",
        "checked": "2026-11-06",
        "notes": [
          "The Foundry project endpoint is on services.ai.azure.com, a Microsoft domain. Domain registration date carried from the Azure listings' provenance.",
          "The Grounding with Bing terms of use (updated November 2025) are subject to the customer's Microsoft agreement (MCA, MBSA or MOSA) and name no separate contracting entity. They forbid using output on sites that block the customer's crawler, using links for crawling or scraping, and bypassing transaction limits.",
          "www.microsoft.com/.well-known/security.txt still carries Expires 2026-09-23T16:00:00.000Z on 6 November 2026.",
          "learn.microsoft.com/robots.txt allows the documentation paths read. The Azure status history page lists post-incident reviews for five years."
        ],
        "score": 87
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/bing-grounding.json",
      "live": {
        "slug": "bing-grounding",
        "probe": {
          "target": "https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses",
          "method": "get",
          "lastAt": "2026-11-07T18:20:13.927615013Z",
          "lastOk": false,
          "lastStatus": 0,
          "lastMs": 0,
          "lastNote": "invalid character \"{\" in host name",
          "authRequired": false,
          "uptime24h": 0,
          "uptime30d": 0,
          "p50ms24h": 0,
          "p95ms24h": 0,
          "samples24h": 200,
          "samples30d": 200,
          "days": [
            {
              "date": "2026-11-06",
              "probes": 13,
              "ok": 0
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 0
            }
          ],
          "outages": [
            {
              "start": "2026-11-06T22:45:07.390416052Z",
              "end": "0001-01-01T00:00:00Z",
              "note": "invalid character \"{\" in host name"
            }
          ]
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@azure/ai-projects",
            "version": "2.10.0",
            "seenAt": "2026-11-06T23:11:06.900508365Z"
          },
          {
            "registry": "pypi",
            "name": "azure-ai-projects",
            "version": "2.10.0",
            "released": "2026-10-30",
            "seenAt": "2026-11-06T23:11:05.00335007Z"
          }
        ],
        "npmWeekly": 1368538,
        "pypiWeekly": 1896178,
        "securityTxt": {
          "url": "https://microsoft.com/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-27T16:00:00.000Z",
          "checkedAt": "2026-11-07T16:02:01.196666056Z"
        },
        "pages": [
          {
            "url": "https://www.microsoft.com/bing/apis/grounding-legal-enterprise",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:31:40.128456318Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "ddf25722851a"
          }
        ],
        "updatedAt": "2026-11-07T18:20:13.927615013Z"
      }
    },
    "answer": "Exa API + MCP scores 67.8 (B) on agent readiness against Grounding with Bing Search's 63.7 (B), and leads in 5 of 7 scored categories. Grounding with Bing Search leads on security \u0026 auth and transparency \u0026 trust.",
    "b": {
      "slug": "exa-mcp",
      "name": "Exa API + MCP",
      "vendor": "Exa",
      "vendorUrl": "https://exa.ai",
      "kind": "mcp",
      "category": "search",
      "summary": "Exa's REST API over its own web index, with the official MCP server in front of it.",
      "url": "https://www.anchorterminal.com/tools/exa-mcp",
      "markdownUrl": "https://www.anchorterminal.com/tools/exa-mcp.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/exa-mcp.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/exa-mcp.json",
      "dns": "exa-mcp.grade.anchorterminal.com",
      "repo": "https://github.com/exa-labs/exa-mcp-server",
      "license": "MIT",
      "transports": [
        "stdio",
        "streamable-http",
        "http"
      ],
      "remoteUrl": "https://mcp.exa.ai/mcp",
      "packages": [
        {
          "registry": "npm",
          "name": "exa-js"
        },
        {
          "registry": "pypi",
          "name": "exa-py"
        },
        {
          "registry": "npm",
          "name": "exa-mcp-server"
        }
      ],
      "auth": "mixed",
      "authNotes": "API key as `Authorization: Bearer` or `x-api-key` header, created at dashboard.exa.ai. POST /search and /contents also accept an x402 `PAYMENT-SIGNATURE` header instead of a key. MCP server: Anonymous use with rate limits; optional API key via ?exaApiKey=, Authorization: Bearer or x-api-key header; OAuth login at https://mcp.exa.ai/mcp?login.",
      "pricing": "freemium",
      "pricingNotes": "$10 free credit a month (resets on the 1st) plus a one-time $10 sign-up bonus, no payment method required. Pay as you go per 1,000 requests, lite search $4, auto $7, deep-lite and deep $12, each with up to 10 results and $1 per 1,000 extra results. Legacy types keep their prices, instant $4, fast $7, deep-reasoning $15. Contents $1 per 1,000 pages per content type, answer $5 per 1,000, monitors $15 per 1,000. Agent API $0.012 to $1.00 a run by effort, ultra usage-based. Dynamic Highlights and the 19 October index additions at no extra charge. Enterprise volume pricing by quote (https://exa.ai/pricing).",
      "priceSummary": "$0.007 / call",
      "where": "both",
      "x402": {
        "level": "yes",
        "evidence": "Official 'Pay with x402' guide. POST /search and /contents accept x402 with USDC on Arc, Base (eip155:8453), World Chain or Solana, including Circle Gateway nanopayments, and the guide prices `lite` at $0.004 a request. An unpaid POST /search returned 402 on 2026-09-30; the guide was re-read on 2026-10-21 without a probe (https://exa.ai/docs/integrations/payments/x402/quickstart.md)",
        "endpoints": [
          {
            "url": "https://api.exa.ai/search",
            "priceUsd": 0.007,
            "network": "eip155:8453"
          },
          {
            "url": "https://api.exa.ai/contents",
            "priceUsd": 0.001,
            "network": "eip155:8453"
          }
        ]
      },
      "toolCount": 4,
      "popularity": {
        "githubStars": 4900,
        "npmWeekly": 1076635,
        "pypiWeekly": 1406207,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://exa.ai/docs",
      "llmsTxt": "https://exa.ai/docs/llms.txt",
      "openapi": "https://exa.ai/docs/exa-spec.yaml",
      "registryName": "ai.exa/exa",
      "capabilities": [
        "web.search",
        "web.fetch",
        "web.extract",
        "search.answer",
        "search.research",
        "search.news"
      ],
      "tags": [
        "official",
        "hosted",
        "local",
        "open-source",
        "x402",
        "freemium",
        "llms-txt",
        "no-card",
        "openapi",
        "python",
        "typescript",
        "enterprise",
        "webhooks",
        "mcp"
      ],
      "lastRelease": "2026-10-30",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.8,
        "grade": "B",
        "agentReady": false,
        "rank": 303,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 8,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 96,
          "maintenance": 88,
          "payments": 90,
          "reliability": 77,
          "schema": 86,
          "security": 43,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": -9,
        "negativeNotes": [
          "2026-04-15. Exa's own fix (#292) says Agnost analytics on the hosted MCP captured headers, query parameters and full URLs from every request and sent them to api.agnost.ai, which leaked user API keys passed as `x-api-key` or `?exaApiKey=`. Fixed the same day, but disclosed only in the commit message, with no advisory or rotation notice that we found. Decayed for the fix, so -6 (https://github.com/exa-labs/exa-mcp-server/commit/49797a5376217da506853b12163f21db9f9c95b8)",
          "2026-10-01. The MCP server calls Agnost's `trackMCP` on startup in both the hosted and the npm stdio builds, with no README mention and no opt-out. Inputs, outputs and errors are switched off, so the events are tool names and timings. -3 (https://github.com/exa-labs/exa-mcp-server/blob/main/src/mcp-handler.ts)"
        ],
        "verdict": "x402 on /search and /contents in USDC on Arc, Base, World Chain or Solana, so an agent can pay per call with no account. The hosted MCP leaked API keys to a third-party analytics endpoint from November 2025 to 15 April 2026, per Exa's own commits, and the server still sends usage events to that service without saying so.",
        "bestFor": "Agents that search in natural language and want short highlights or page text in the same call, and for keyless or wallet-paid use.",
        "strengths": [
          "x402 on /search and /contents in USDC on Arc, Base, World Chain or Solana, so an agent can pay per call with no account",
          "Two default MCP tools for keyless use, about 1,250 characters of descriptions, and every tool marked read-only",
          "Keys can be minted by API with their own rate limit and budget",
          "Public OpenAPI, llms.txt, an error-codes page, and search warnings for request fields that have no effect",
          "$10 of credit a month with no payment method, and `lite` search at $4 per 1,000"
        ],
        "weaknesses": [
          "The hosted MCP leaked API keys to a third-party analytics endpoint from November 2025 to 15 April 2026, per Exa's own commits",
          "Agnost usage analytics in the MCP server with no disclosure or opt-out",
          "The privacy policy says query data trains Exa's models and gives no retention period",
          "No security.txt, no SECURITY.md and no prompt-injection guidance",
          "Agents API had 4 hours 56 minutes of elevated run failures on 21 to 22 September, though it read partial"
        ],
        "agentNotes": [
          "Send the key as `x-api-key` or a Bearer header, never `?exaApiKey=` in the MCP URL",
          "Ask for highlights rather than full text, and cap `maxCharacters` on `web_fetch_exa`",
          "Request only the results you'll read. More than 10 costs extra, and x402 calls stop at 10",
          "On 429, honour `Retry-After`. The QPS limit is shared by every key on the team",
          "Use `type: \"lite\"` for cheap searches, and `auto` when you need summaries, live fetches or other parameters `lite` rejects",
          "Dynamic Highlights still needs the `Exa-Beta: dynamic-highlights-2026-08-28` header per the docs, despite the GA announcement",
          "Set `budget.maxCostDollars` on `agent_run`, which a keyed MCP connection may now expose by default"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 4.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.8
          }
        ],
        "editorialScores": {
          "ergonomics": 96,
          "maintenance": 88,
          "payments": 90,
          "reliability": 77,
          "schema": 86,
          "security": 43,
          "transparency": 44
        },
        "provenanceScore": 78,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -s -X POST https://api.exa.ai/search \\\n  -H \"Authorization: Bearer $EXA_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"query\":\"recent techniques for improving retrieval in RAG systems\",\"type\":\"auto\",\"contents\":{\"highlights\":true}}'",
        "claudeCode": "claude mcp add --transport http exa https://mcp.exa.ai/mcp",
        "config": {
          "mcpServers": {
            "exa": {
              "url": "https://mcp.exa.ai/mcp"
            }
          }
        },
        "x402": "curl -s https://api.exa.ai/search -H 'content-type: application/json' -d '{\"query\":\"x402 facilitators\",\"numResults\":5}' -i\n# HTTP/1.1 402 Payment Required\n# PAYMENT-REQUIRED: \u003cbase64 JSON: accepts[{scheme:\"exact\",network:\"eip155:8453\",amount:\"7000\",asset:USDC,payTo:...}]\u003e\n# retry with PAYMENT-SIGNATURE: \u003cbase64 signed authorization\u003e"
      },
      "letme": {
        "capability": "https://letme.dev/web.search",
        "tool": "https://letme.dev/exa-mcp"
      },
      "area": "web-data",
      "unitPrices": [
        {
          "item": "Search, auto",
          "unit": "1k-requests",
          "usd": 7,
          "note": "up to 10 results; legacy fast at the same price"
        },
        {
          "item": "Search, lite",
          "unit": "1k-requests",
          "usd": 4,
          "note": "up to 10 results, cached content only; legacy instant at the same price"
        },
        {
          "item": "Search, deep",
          "unit": "1k-requests",
          "usd": 12
        },
        {
          "item": "Contents",
          "unit": "1k-pages",
          "usd": 1,
          "note": "per content type"
        },
        {
          "item": "Answer",
          "unit": "1k-requests",
          "usd": 5
        }
      ],
      "provenance": {
        "legalEntity": "Exa Labs Inc.",
        "domain": "exa.ai",
        "domainRegistered": "2017-12-16",
        "endpointOnVendorDomain": true,
        "terms": "https://exa.ai/assets/Exa_Labs_Terms_of_Service.pdf",
        "privacy": "https://exa.ai/privacy-policy",
        "statusPage": "https://status.exa.ai",
        "changelog": "https://exa.ai/docs/changelog",
        "securityTxt": "none",
        "checked": "2026-11-01",
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/exa-mcp.json",
      "live": {
        "slug": "exa-mcp",
        "probe": {
          "target": "https://mcp.exa.ai/mcp",
          "method": "mcp-initialize",
          "lastAt": "2026-11-07T18:20:23.74519558Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 216,
          "lastNote": "initialize answered",
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 196,
          "p95ms24h": 282,
          "samples24h": 239,
          "samples30d": 7910,
          "days": [
            {
              "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": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ],
          "outages": [
            {
              "start": "2026-10-04T18:58:14.45236595Z",
              "end": "2026-10-04T19:19:43.996268604Z",
              "note": "HTTP 503 server error"
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.exa.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:47:44.8033304Z"
        },
        "versions": [
          {
            "registry": "mcp-registry",
            "name": "ai.exa/exa",
            "version": "3.4.1",
            "seenAt": "2026-11-07T18:16:28.95801333Z"
          },
          {
            "registry": "npm",
            "name": "exa-js",
            "version": "2.28.0",
            "seenAt": "2026-11-06T23:24:46.769729434Z"
          },
          {
            "registry": "npm",
            "name": "exa-mcp-server",
            "version": "3.4.3",
            "seenAt": "2026-11-06T23:24:47.103957165Z"
          },
          {
            "registry": "pypi",
            "name": "exa-py",
            "version": "2.28.0",
            "released": "2026-11-06",
            "seenAt": "2026-11-06T23:24:46.995373694Z"
          }
        ],
        "githubStars": 5217,
        "npmWeekly": 1284133,
        "pypiWeekly": 1742613,
        "securityTxt": {
          "url": "https://exa.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:26.705262529Z"
        },
        "llmsTxt": {
          "url": "https://exa.ai/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:26.530117736Z"
        },
        "domain": {
          "domain": "exa.ai",
          "registered": "2017-12-16",
          "source": "https://rdap.identitydigital.services/rdap/domain/exa.ai",
          "checkedAt": "2026-11-01T14:09:42.785389124Z"
        },
        "pages": [
          {
            "url": "https://exa.ai/docs/changelog",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:26.291664584Z",
            "changedAt": "2026-10-31T06:12:14.620098073Z",
            "fingerprint": "5b93588655e5"
          },
          {
            "url": "https://raw.githubusercontent.com/exa-labs/exa-js/master/CHANGELOG.md",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:20:46.052371042Z",
            "changedAt": "2026-11-07T14:20:46.052371042Z",
            "fingerprint": "84da85c45d54"
          },
          {
            "url": "https://exa.ai/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:28.728957066Z",
            "changedAt": "2026-11-05T12:33:03.85120504Z",
            "fingerprint": "106c5a929e0c"
          },
          {
            "url": "https://exa.ai/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:09:30.414400698Z",
            "changedAt": "2026-11-04T08:23:41.374682103Z",
            "fingerprint": "79a6a0daee52"
          }
        ],
        "mcpTools": {
          "url": "https://mcp.exa.ai/mcp",
          "checkedAt": "2026-11-07T01:44:17.887674793Z",
          "status": "ok",
          "protocol": "2025-11-25",
          "tools": [
            {
              "name": "web_search_exa",
              "title": "Web Search",
              "description": "Search the web for any topic and get clean, ready-to-use content.\n\n      Best for: Finding current information, news, facts, people, companies, or answering questions about any topic.\n      Returns: Clean text content from top search results.\n\n      Query tips:\n      describe the ideal page, not keywords. \"blog post comparing React and Vue performance\" not \"React vs Vue\".\n      Use category:people / category:company to search through Linkedin profiles / companies respectively.\n      If highlights are insufficient, follow up with web_fetch_exa on the best URLs.",
              "inputSchema": {
                "$schema": "http://json-schema.org/draft-07/schema#",
                "additionalProperties": false,
                "properties": {
                  "numResults": {
                    "description": "Number of search results to return (default: 10).",
                    "type": "number"
                  },
                  "objective": {
                    "description": "Goal for this search turn; say which documents should rank first, which should be excluded, and what specific facts or figures to pull from them.",
                    "maxLength": 4096,
                    "minLength": 1,
                    "type": "string"
                  },
                  "query": {
                    "description": "Natural language search query. Should be a semantically rich description of the ideal page, not just keywords. Optionally include category:\u003ctype\u003e (company, people) to focus results — e.g. 'category:people John Doe software engineer'.",
                    "minLength": 1,
                    "type": "string"
                  }
                },
                "required": [
                  "query",
                  "objective"
                ],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "idempotentHint": true,
                "openWorldHint": true,
                "readOnlyHint": true
              }
            },
            {
              "name": "web_fetch_exa",
              "title": "Fetch Web Pages",
              "description": "Read a webpage's full content as clean markdown. Use after web_search_exa when highlights are insufficient or to read any URL.\n\nBest for: Extracting full content from known URLs. Batch multiple URLs in one call.\nReturns: Clean text content and metadata from the page(s).",
              "inputSchema": {
                "$schema": "http://json-schema.org/draft-07/schema#",
                "additionalProperties": false,
                "properties": {
                  "maxCharacters": {
                    "description": "Maximum characters to extract per page (default: 3000)",
                    "minimum": 1,
                    "type": "number"
                  },
                  "urls": {
                    "description": "URLs to read. Batch multiple URLs in one call.",
                    "items": {
                      "type": "string"
                    },
                    "type": "array"
                  }
                },
                "required": [
                  "urls"
                ],
                "type": "object"
              },
              "annotations": {
                "destructiveHint": false,
                "idempotentHint": true,
                "openWorldHint": true,
                "readOnlyHint": true
              }
            }
          ],
          "schemaTokens": 605,
          "changedAt": "2026-09-28T21:55:38.894181746Z",
          "check": {
            "checker": "anchor-check/1.0",
            "totalTokens": 605,
            "counts": {
              "error": 0,
              "note": 1,
              "warn": 0
            },
            "findings": [
              {
                "rule": "TC24",
                "severity": "note",
                "message": "2 of 2 tools have no outputSchema",
                "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
              }
            ]
          }
        },
        "github": {
          "repo": "exa-labs/exa-mcp-server",
          "checkedAt": "2026-11-02T08:46:58.334507141Z",
          "stars": 5208,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T01:26:06Z",
          "openIssues": 5,
          "openPRs": 3,
          "issuesOpened90d": 29,
          "issuesClosed90d": 36,
          "prsMerged90d": 22,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 47,
            "failure": 3,
            "other": 0,
            "latest": "success",
            "latestAt": "2026-11-02T01:26:32Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 4,
            "medianDays": 29.6
          }
        },
        "updatedAt": "2026-11-07T18:20:23.74519558Z"
      }
    },
    "edges": [
      {
        "by": 70,
        "category": "payments",
        "leads": "exa-mcp",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). $14 per 1,000 transactions for Grounding with Bing Search and Custom Search, published on microsoft.com without a login (20). No free tier for Grounding with Bing, and an Azure subscription needs a card, as on the Azure Translator listing (0). A person signs up for Azure, creates a Foundry project and, for bing_grounding, a Bing resource (0).",
          "b": "x402 on POST /search and /contents, USDC on Arc, Base, World Chain or Solana, including Circle Gateway nanopayments, not on answer, Agent runs, monitors or Websets, so partial (30). Per-call prices published without login, $0.004 for `lite` (and legacy `instant`) to $0.015 for legacy deep-reasoning per search (20). $10 a month and a $10 onboarding bonus, and the pricing page now states \"No payment method required\" (20). An agent can pay by x402 with no account, and the hosted MCP works anonymously within rate limits (20)."
        },
        "scores": {
          "a": 20,
          "b": 90
        }
      },
      {
        "by": 36,
        "category": "security",
        "leads": "bing-grounding",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Callers authenticate to the Foundry project with Microsoft Entra ID tokens and RBAC roles (Foundry User to run agents, Foundry Project Manager to add connections), with just-in-time Contributor through Entra PIM for provisioning. The Bing resource key sits in a project connection and the agent never holds it. No key in a URL (28 of 30). The tools only read. Custom Search confines grounding to configured public domains, and an admin can turn web search off for a whole subscription. There is no per-agent read-only toggle to set, since the tools have no write path (15 of 20). The web search page tells developers to treat web search results as untrusted input and to keep secrets and personal data out of prompts, and the tool best practices page says the same of all tool outputs. Raw results are not passed back to the caller (10 of 15). Run steps show each tool call and the Bing query sent, and Azure's activity log covers resource changes. No per-query audit log for Bing was found (10 of 15). Microsoft runs a coordinated vulnerability disclosure policy and bounty programmes through MSRC. microsoft.com's security.txt passed its Expires date on 23 September 2026 and still carries it on 6 November, and the Azure compliance attestations are not shown to cover a service whose data leaves the compliance boundary (16 of 20). 28 + 15 + 10 + 10 + 16 = 79.",
          "b": "Bearer or `x-api-key` keys, and a team-management API creates keys with their own rate limit and budget. The hosted MCP also takes OAuth. The README documents `?exaApiKey=` in the URL, so 25 less 10 (15). Every tool is read-only and annotated so, and `?tools=` limits the set. Agent runs spend credit but change nothing. Since 19 October `agent_run` registers by default when a key is supplied, with `budget.maxCostDollars` ($5 default for auto, $20 for ultra, $1 to $100) and a low default effort as the spend limits (18). Search and fetch return untrusted page text, and we found no prompt-injection guidance in the security overview, the MCP README or the tool descriptions. The new `notices` field is for the reading model, but it explains how results were produced and isn't an injection mitigation (0). No audit log found (0). SOC 2 Type II with reports in a trust centre. No security.txt (404 on 21 October), no SECURITY.md, no bug bounty and no GitHub advisories. The April 2026 key leak below was handled in a commit message only (10)."
        },
        "scores": {
          "a": 79,
          "b": 43
        }
      },
      {
        "by": 35,
        "category": "ergonomics",
        "leads": "exa-mcp",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Read as a server-side search tool inside an agent run. The tools return a model's answer with citations rather than raw results, and `search_context_size` sets how much context web search uses. A caller can't size or inspect the result set itself, since the Bing tools never return their output. Custom Search confines grounding to chosen domains without code (18 of 25). `count`, freshness, market and language filters, and domain restriction through Custom Search. No pagination or offset (13 of 20). Troubleshooting tables give causes and fixes for connection ID, RBAC and 429 problems, but the tools document no error codes (8 of 20). Searches only read, so a retry is safe apart from the per-transaction charge. No MCP annotations are documented for the toolbox's web search tool (10 of 20). The web_search route needs only a project, a model deployment and the Foundry User role. bing_grounding also needs a paid Bing resource and a project connection. SDKs in Python, C#, JavaScript and Java (12 of 15). Prompt caching gets no hits with the Bing tools, because they add a timestamp to every request. 18 + 13 + 8 + 10 + 12 = 61.",
          "b": "On a keyless connection two tools are on by default, `web_search_exa` and `web_fetch_exa`, about 1,250 characters of descriptions between them. Since the 19 October commit on main, `agent_run` (about 500 characters plus a larger input schema) is also on by default when the user supplies a key, though the README still lists it as optional. `?tools=` turns on `web_search_advanced_exa` and picks the set (25). `numResults`, `maxCharacters`, highlights instead of full text, category, domain and date filters, and in `web_search_advanced_exa` the `lite` type (20). The error-codes page lists codes, and the MCP server rewrites a 429 into a message about the free tier and keys and now passes search notices to the model. Errors reach the model as text rather than a code (16). Every tool sets `readOnlyHint`, `destructiveHint: false` and `idempotentHint` (false on `agent_run`), and the server retries transient errors twice (20). Only `query` is required. Python and TypeScript SDKs (15)."
        },
        "scores": {
          "a": 61,
          "b": 96
        }
      },
      {
        "by": 18,
        "category": "schema",
        "leads": "exa-mcp",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "The tools are typed in the official SDKs (BingGroundingTool, BingCustomSearchPreviewTool, WebSearchTool) in Python, C#, JavaScript and Java, and the toolbox exposes web search as an MCP tool. No public OpenAPI description of the Responses tool types was confirmed from the pages read (10 of 25). Microsoft Learn serves each page as Markdown with `accept=text/markdown`, though learn.microsoft.com/llms.txt answers 404 (10). The pages say what each of four web grounding routes is for and when to choose it, when to use Custom Search instead, and not to ask the model to summarise a whole page (17 of 20). Parameters are typed with defaults and limits in prose, `count` 1 to 50 with default 5, freshness values and a date-range form, market and language formats, `search_context_size` low, medium or high (11 of 15). Examples in Python, C#, TypeScript, Java and REST with expected output, and troubleshooting tables for connection ID, authentication and 429 problems, but no error codes or bodies for the tools (10 of 15). Requests carry `api-version=v1` on the toolbox, SDK changelogs are dated and a monthly What's New page lists new articles, the latest for August 2026 (10 of 15). 10 + 10 + 17 + 11 + 10 + 10 = 68.",
          "b": "OpenAPI at exa.ai/docs/exa-spec.yaml, re-read on 21 October with the new `lite` type, its accepted parameters and the `warnings` and `notices` response fields, and JSON Schema inputs on every MCP tool (25). llms.txt and Markdown docs (10). `web_search_exa` tells the model how to phrase a query and when to follow up with `web_fetch_exa`, and deprecated tools name their replacement. The `agent_run` description on the main branch since 19 October says it isn't for a single lookup or a known URL and names the sibling tools, but that commit isn't in npm 3.4.2 and we couldn't confirm the hosted server runs it, so the line stays where it was. Nothing else says when not to use a tool (15). Inputs coerce loosely. `numResults` is described as 1 to 100 but the schema has no bounds, and bad numbers fall back to defaults silently. On the API, `lite` rejects an unsupported parameter with a 400 that names it, and ignored fields such as `startCrawlDate` now come back as `IGNORED_FIELD` warnings (10). An error-codes page and examples on every endpoint page (13). Dated changelog with deprecations, the latest entry 19 October. The MCP repository has no tags, so versions show only in package.json and the registry (13)."
        },
        "scores": {
          "a": 68,
          "b": 86
        }
      },
      {
        "by": 9,
        "category": "reliability",
        "leads": "exa-mcp",
        "name": "Reliability",
        "reasons": {
          "a": "Graded on the hosted lines, for the Foundry Agent Service tools agents call. Azure status page with post-incident reviews and a Foundry Agent Service component (20). The history page read on 6 November lists one review in the 90 days from 8 August that names Foundry Agent Service, intermittent failures and latency in Sweden Central from 10:03 to 15:58 UTC on 29 September 2026. It was one region and partial, and the review doesn't name Grounding with Bing, so minor only, the reading the Azure Translator listing got for the same review (20). The pricing page publishes 150 transactions a second and 1 million a day for each Grounding with Bing resource (15). The web search troubleshooting table says to answer 429 with exponential backoff and retries. No Retry-After or tool-specific overload guidance was found, and searches have no side effects (8 of 15). No SLA naming Grounding with Bing was found. The terms make it a First Party Consumption Service apart from the Online Services terms, and the Online Services SLA document wasn't opened (0). Grounding with Bing Custom Search is marked preview and Grounding with Bing Search is not, but no page read states general availability for it or for the web_search tool, and the .NET SDK is in preview (5 of 10). 20 + 20 + 15 + 8 + 0 + 5 = 68.",
          "b": "Instatus page at status.exa.ai with Search API, Exa MCP, Agents API and Websets components and dated history (20). In the 90 days to 1 November, history/1 shows the Search API's 1-minute blip (16 September), a 1 hour 24 minute latency incident (18 September) and 2 hours 21 minutes of elevated latency with some failed requests (21 September), and the Agents API's 25 minutes of runs failing to start (18 September, labelled major) and 4 hours 56 minutes in which 'some agent runs may fail to start or complete' (21 to 22 September). August is per the 21 October check, not re-read on 1 November (history/2 answers 404 again), with a 10-minute Search API major outage on 14 August and a 53-minute latency incident. No notices in October or November. By this run's reading each hit one product or a subset of requests and none was an hour of a core API down, so all are minor (20, up from 10, where the 21 to 22 September Agents API incident had been counted as a major). Rate limits published per endpoint, 10 QPS search and answer, 5 QPS deep, 100 QPS contents, 5 QPS and 50 active Agent runs (15). 429 with `Retry-After` when available and exponential backoff advice. We found no idempotency guidance for creating Agent runs, which cost money (12). No SLA found. The pricing page lists \"Enterprise SLAs\" on the contract plan, with no terms published (0). Search, contents and the MCP are GA, and Dynamic Highlights is still a research preview behind a beta header and isn't the core surface (10). 20 + 20 + 15 + 12 + 0 + 10 = 77."
        },
        "scores": {
          "a": 68,
          "b": 77
        }
      },
      {
        "by": 8,
        "category": "maintenance",
        "leads": "exa-mcp",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service with official SDKs, as the other Azure listings are. The web search page was updated on 2 November 2026 and the Bing tools page on 12 October, and azure-ai-projects 2.10.0 shipped on PyPI and npm on 30 October 2026, the SDK that carries the tool types (30). azure-ai-projects released 2.6.0 (4 September), 2.6.1, 2.7.0, 2.8.0 (5 October), 2.9.0 (17 October) and 2.10.0 in the 90 days from 8 August. Their changelogs weren't read for web search changes, so they count as SDK releases (20). Microsoft Learn feedback, Microsoft Q\u0026A and the Azure SDK issue trackers, whose reply times weren't sampled (10 of 15). Current official SDKs in Python, JavaScript, .NET and Java, the .NET one in preview (15). The SDKs live in the azure-sdk monorepos and CI wasn't checked (5 of 10). 30 + 20 + 10 + 15 + 5 = 80.",
          "b": "exa-py and exa-js 2.27.0 tagged on 30 October 2026, after 2.26.0 and the API changelog entry of 19 October (30). 14 tags of each SDK from v2.17.0 (7 August) to v2.27.0 (30 October), and changelog entries on 28 August, 24 September and 19 October (20). 13 open MCP issues and pull requests merged on 2, 6, 7 and 19 October per the 21 October check, with pull requests merged on 27 and 28 October in the clone; reply times unread because GitHub's pages refuse us (15). Official registry entry ai.exa/exa under Exa's own domain, latest 3.4.1 (published 23 September), and current Python and TypeScript SDKs (15). CI typechecks and tests the MCP server on every push. The npm package (3.4.2, 6 October, per the 21 October check) ships from a workflow without git tags, and package.json on main is still 3.4.2 on 1 November (8)."
        },
        "scores": {
          "a": 80,
          "b": 88
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "MCP server",
        "name": "Kind"
      },
      {
        "a": "Microsoft",
        "b": "Exa",
        "name": "Vendor"
      },
      {
        "a": "https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses",
        "b": "https://mcp.exa.ai/mcp",
        "name": "Hosted endpoint"
      },
      {
        "a": "Streamable HTTP",
        "b": "stdio, Streamable HTTP, HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "$14 per 1,000 requests",
        "b": "$4 per 1,000 requests",
        "name": "Price for web search"
      },
      {
        "a": "no",
        "b": "yes, from $0.007/call",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the customer's Microsoft agreement and the separate Grounding with Bing terms of use, which exclude it from the Microsoft Data Protection Addendum",
        "b": "MIT",
        "name": "Licence"
      },
      {
        "a": "3",
        "b": "4",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "not listed",
        "b": "ai.exa/exa",
        "name": "MCP registry"
      },
      {
        "a": "2026-11-02",
        "b": "2026-10-30",
        "name": "Last release"
      },
      {
        "a": "2025-11-01",
        "b": "not read yet",
        "name": "Terms last updated"
      },
      {
        "a": "2026-09-01",
        "b": "2026-06-29",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not read yet",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not read yet",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "4.9k stars, 1.1M npm/wk, 1.4M PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "4.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Exa API + MCP scores 67.8 (B) on agent readiness against Grounding with Bing Search's 63.7 (B), and leads in 5 of 7 scored categories. Grounding with Bing Search leads on security \u0026 auth and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Grounding with Bing Search or Exa API + MCP?"
      },
      {
        "answer": "Exa API + MCP, at $4 per 1,000 requests against $14 per 1,000 requests for Grounding with Bing Search. These are the vendors' published prices for the job.",
        "question": "Which is cheaper for web search, Grounding with Bing Search or Exa API + MCP?"
      },
      {
        "answer": "Grounding with Bing Search uses an OAuth sign-in. Exa API + MCP takes an API key or an OAuth sign-in. An agent can also pay Exa API + MCP per call over x402, with no account.",
        "question": "Do Grounding with Bing Search and Exa API + MCP need an API key?"
      },
      {
        "answer": "Yes. Grounding with Bing Search has a hosted endpoint at https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses and Exa API + MCP at https://mcp.exa.ai/mcp.",
        "question": "Can an agent call Grounding with Bing Search and Exa API + MCP without installing anything?"
      },
      {
        "answer": "No open-source release is listed for Grounding with Bing Search. Exa API + MCP is open source (MIT).",
        "question": "Are Grounding with Bing Search and Exa API + MCP open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 79 against 43",
          "Transparency \u0026 trust, 66 against 61"
        ],
        "also": [
          "No incidents deducted, where Exa API + MCP loses 9 points for them"
        ],
        "goodFor": "Teams already building on Foundry Agent Service who want cited answers from Bing without handling a search key.",
        "slug": "bing-grounding",
        "watchFor": "The Bing tools never return raw results to developers, only a model-written answer with citation links"
      },
      {
        "aheadOn": [
          "Reliability, 77 against 68",
          "Schema \u0026 documentation, 86 against 68",
          "Agent ergonomics, 96 against 61",
          "Payments \u0026 pricing, 90 against 20",
          "Maintenance \u0026 community, 88 against 80"
        ],
        "also": [
          "Cheaper for web search, $4 against $14 per 1,000 requests",
          "An agent can pay per call over x402, with no account",
          "Runs on your own machine",
          "Free to start without a card",
          "Open source"
        ],
        "goodFor": "Agents that search in natural language and want short highlights or page text in the same call, and for keyless or wallet-paid use.",
        "slug": "exa-mcp",
        "watchFor": "The hosted MCP leaked API keys to a third-party analytics endpoint from November 2025 to 15 April 2026, per Exa's own commits"
      }
    ],
    "history": {
      "bing-grounding": null,
      "exa-mcp": [
        {
          "causes": [
            "correction"
          ],
          "date": "2026-11-01",
          "delta": 2,
          "from": 65.8,
          "fromGrade": "B",
          "to": 67.8,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-30",
          "delta": -0.3,
          "from": 66.1,
          "fromGrade": "B",
          "to": 65.8,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 66,
          "fromGrade": "B",
          "to": 66.1,
          "toGrade": "B"
        }
      ]
    },
    "job": {
      "capability": "web.search",
      "name": "Web search"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-bing-grounding.json",
        "title": "Web Search Tool on Amazon Bedrock AgentCore vs Grounding with Bing Search",
        "url": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-bing-grounding"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-exa-mcp.json",
        "title": "Web Search Tool on Amazon Bedrock AgentCore vs Exa API + MCP",
        "url": "https://www.anchorterminal.com/compare/agentcore-web-search-vs-exa-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcmira-vs-bing-grounding.json",
        "title": "Arcmira vs Grounding with Bing Search",
        "url": "https://www.anchorterminal.com/compare/arcmira-vs-bing-grounding"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-brave-search-mcp.json",
        "title": "Grounding with Bing Search vs Brave Search API + MCP",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-brave-search-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-cloudflare-web-search.json",
        "title": "Grounding with Bing Search vs Cloudflare Web Search API",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-cloudflare-web-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-deepseek-search-api.json",
        "title": "Grounding with Bing Search vs DeepSeek Search and Fetch API",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-deepseek-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-firecrawl-mcp.json",
        "title": "Grounding with Bing Search vs Firecrawl MCP",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-firecrawl-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-kagi-search.json",
        "title": "Grounding with Bing Search vs Kagi Search API",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-kagi-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-linkup.json",
        "title": "Grounding with Bing Search vs Linkup",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-linkup"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-mojeek.json",
        "title": "Grounding with Bing Search vs Mojeek Web Search API",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-mojeek"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-newscatcher.json",
        "title": "Grounding with Bing Search vs NewsCatcher",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-newscatcher"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-parallel-search-api.json",
        "title": "Grounding with Bing Search vs Parallel Search and Task APIs",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-parallel-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-perplexity-search-api.json",
        "title": "Grounding with Bing Search vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-searchapi-io.json",
        "title": "Grounding with Bing Search vs SearchAPI.io",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-searchapi-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-serpapi.json",
        "title": "Grounding with Bing Search vs SerpApi",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-serpapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-serper.json",
        "title": "Grounding with Bing Search vs Serper",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-serper"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-serphouse.json",
        "title": "Grounding with Bing Search vs SERPHouse",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-serphouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-serpkite.json",
        "title": "Grounding with Bing Search vs SerpKite",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-serpkite"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-specstream.json",
        "title": "Grounding with Bing Search vs SpecStream",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-specstream"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-tavily-mcp.json",
        "title": "Grounding with Bing Search vs Tavily API + MCP",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-tavily-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-tinyfish-search.json",
        "title": "Grounding with Bing Search vs TinyFish Search",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-tinyfish-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-valyu.json",
        "title": "Grounding with Bing Search vs Valyu",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-valyu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-you-com-api.json",
        "title": "Grounding with Bing Search vs You.com APIs",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-you-com-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-exa-mcp.json",
        "title": "Brave Search API + MCP vs Exa API + MCP",
        "url": "https://www.anchorterminal.com/compare/brave-search-mcp-vs-exa-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-exa-mcp.json",
        "title": "Cloudflare Web Search API vs Exa API + MCP",
        "url": "https://www.anchorterminal.com/compare/cloudflare-web-search-vs-exa-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-search-api-vs-exa-mcp.json",
        "title": "DeepSeek Search and Fetch API vs Exa API + MCP",
        "url": "https://www.anchorterminal.com/compare/deepseek-search-api-vs-exa-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-firecrawl-mcp.json",
        "title": "Exa API + MCP vs Firecrawl MCP",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-firecrawl-mcp"
      },
      {
        "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-linkup.json",
        "title": "Exa API + MCP vs Linkup",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-linkup"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-mojeek.json",
        "title": "Exa API + MCP vs Mojeek Web Search API",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-mojeek"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-newscatcher.json",
        "title": "Exa API + MCP vs NewsCatcher",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-newscatcher"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-parallel-search-api.json",
        "title": "Exa API + MCP vs Parallel Search and Task APIs",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-parallel-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-perplexity-search-api.json",
        "title": "Exa API + MCP vs Perplexity Search API",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-perplexity-search-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-searchapi-io.json",
        "title": "Exa API + MCP vs SearchAPI.io",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-searchapi-io"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-serpapi.json",
        "title": "Exa API + MCP vs SerpApi",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-serpapi"
      },
      {
        "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/exa-mcp-vs-serphouse.json",
        "title": "Exa API + MCP vs SERPHouse",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-serphouse"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-serpkite.json",
        "title": "Exa API + MCP vs SerpKite",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-serpkite"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-specstream.json",
        "title": "Exa API + MCP vs SpecStream",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-specstream"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-tavily-mcp.json",
        "title": "Exa API + MCP vs Tavily API + MCP",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-tavily-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-tinyfish-search.json",
        "title": "Exa API + MCP vs TinyFish Search",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-tinyfish-search"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-valyu.json",
        "title": "Exa API + MCP vs Valyu",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-valyu"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-you-com-api.json",
        "title": "Exa API + MCP vs You.com APIs",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-you-com-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/arcmira-vs-exa-mcp.json",
        "title": "Arcmira vs Exa API + MCP",
        "url": "https://www.anchorterminal.com/compare/arcmira-vs-exa-mcp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-grep-ai.json",
        "title": "Exa API + MCP vs Grep AI",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-grep-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/exa-mcp-vs-fetch-reference-server.json",
        "title": "Exa API + MCP vs Fetch (MCP reference server)",
        "url": "https://www.anchorterminal.com/compare/exa-mcp-vs-fetch-reference-server"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-grep-ai.json",
        "title": "Grounding with Bing Search vs Grep AI",
        "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-grep-ai"
      }
    ],
    "panel": null,
    "scores": [
      {
        "bing-grounding": 68,
        "by": 9,
        "edge": "exa-mcp",
        "exa-mcp": 77,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "bing-grounding": 68,
        "by": 18,
        "edge": "exa-mcp",
        "exa-mcp": 86,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "bing-grounding": 61,
        "by": 35,
        "edge": "exa-mcp",
        "exa-mcp": 96,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "bing-grounding": 79,
        "by": 36,
        "edge": "bing-grounding",
        "exa-mcp": 43,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "bing-grounding": 20,
        "by": 70,
        "edge": "exa-mcp",
        "exa-mcp": 90,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "bing-grounding": 80,
        "by": 8,
        "edge": "exa-mcp",
        "exa-mcp": 88,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "bing-grounding": 66,
        "by": 5,
        "edge": "bing-grounding",
        "exa-mcp": 61,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Exa API + MCP scores 67.8 (B) on agent readiness against Grounding with Bing Search's 63.7 (B), and leads in 5 of 7 scored categories. Grounding with Bing Search leads on security \u0026 auth and transparency \u0026 trust. Both do web search. Exa API + MCP is cheaper for web search, $4 against $14 per 1,000 requests. Exa API + MCP accepts x402. Grounding with Bing Search doesn't.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "bing-grounding": "First-party Bing grounding inside Foundry Agent Service, called with Entra ID so the agent never holds a search key, at a published $14 per 1,000 transactions. The tools return a model's answer with citations, never the raw results, and data sent to them falls outside Microsoft's Data Protection Addendum and Azure's compliance boundary.",
      "exa-mcp": "x402 on /search and /contents in USDC on Arc, Base, World Chain or Solana, so an agent can pay per call with no account. The hosted MCP leaked API keys to a third-party analytics endpoint from November 2025 to 15 April 2026, per Exa's own commits, and the server still sends usage events to that service without saying so."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp",
    "json": "https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp.min.md"
  },
  "markdown": "Exa API + MCP scores 67.8 (B) on agent readiness against Grounding with Bing Search's 63.7 (B), and leads in 5 of 7 scored categories. Grounding with Bing Search leads on security \u0026 auth and transparency \u0026 trust. Both do web search. Exa API + MCP is cheaper for web search, $4 against $14 per 1,000 requests. Exa API + MCP accepts x402. Grounding with Bing Search doesn't.\n\n- Grounding with Bing Search: grade B, 63.7/100, rank #502 of 1486. Markdown https://www.anchorterminal.com/tools/bing-grounding.md · JSON https://www.anchorterminal.com/api/v1/tools/bing-grounding.json\n- Exa API + MCP: grade B, 67.8/100, rank #303 of 1486. Markdown https://www.anchorterminal.com/tools/exa-mcp.md · JSON https://www.anchorterminal.com/api/v1/tools/exa-mcp.json\n- Best web search APIs for AI agents: https://www.anchorterminal.com/best/search/index.md\n- All 308 search comparisons: https://www.anchorterminal.com/compare/search/index.md\n\n## Which one, for what\n\n### Grounding with Bing Search (B)\n\nGood for: Teams already building on Foundry Agent Service who want cited answers from Bing without handling a search key.\n\nAhead on:\n- Security \u0026 auth, 79 against 43\n- Transparency \u0026 trust, 66 against 61\n\nAlso in its favour:\n- No incidents deducted, where Exa API + MCP loses 9 points for them\n\nWatch for: The Bing tools never return raw results to developers, only a model-written answer with citation links\n\n### Exa API + MCP (B)\n\nGood for: Agents that search in natural language and want short highlights or page text in the same call, and for keyless or wallet-paid use.\n\nAhead on:\n- Reliability, 77 against 68\n- Schema \u0026 documentation, 86 against 68\n- Agent ergonomics, 96 against 61\n- Payments \u0026 pricing, 90 against 20\n- Maintenance \u0026 community, 88 against 80\n\nAlso in its favour:\n- Cheaper for web search, $4 against $14 per 1,000 requests\n- An agent can pay per call over x402, with no account\n- Runs on your own machine\n- Free to start without a card\n- Open source\n\nWatch for: The hosted MCP leaked API keys to a third-party analytics endpoint from November 2025 to 15 April 2026, per Exa's own commits\n\n\n## Why the edge\n\n### Payments \u0026 pricing: Exa API + MCP +70\n\n- Grounding with Bing Search (20): No x402, MPP or L402 (0). $14 per 1,000 transactions for Grounding with Bing Search and Custom Search, published on microsoft.com without a login (20). No free tier for Grounding with Bing, and an Azure subscription needs a card, as on the Azure Translator listing (0). A person signs up for Azure, creates a Foundry project and, for bing_grounding, a Bing resource (0).\n- Exa API + MCP (90): x402 on POST /search and /contents, USDC on Arc, Base, World Chain or Solana, including Circle Gateway nanopayments, not on answer, Agent runs, monitors or Websets, so partial (30). Per-call prices published without login, $0.004 for `lite` (and legacy `instant`) to $0.015 for legacy deep-reasoning per search (20). $10 a month and a $10 onboarding bonus, and the pricing page now states \"No payment method required\" (20). An agent can pay by x402 with no account, and the hosted MCP works anonymously within rate limits (20).\n\n### Security \u0026 auth: Grounding with Bing Search +36\n\n- Grounding with Bing Search (79): Callers authenticate to the Foundry project with Microsoft Entra ID tokens and RBAC roles (Foundry User to run agents, Foundry Project Manager to add connections), with just-in-time Contributor through Entra PIM for provisioning. The Bing resource key sits in a project connection and the agent never holds it. No key in a URL (28 of 30). The tools only read. Custom Search confines grounding to configured public domains, and an admin can turn web search off for a whole subscription. There is no per-agent read-only toggle to set, since the tools have no write path (15 of 20). The web search page tells developers to treat web search results as untrusted input and to keep secrets and personal data out of prompts, and the tool best practices page says the same of all tool outputs. Raw results are not passed back to the caller (10 of 15). Run steps show each tool call and the Bing query sent, and Azure's activity log covers resource changes. No per-query audit log for Bing was found (10 of 15). Microsoft runs a coordinated vulnerability disclosure policy and bounty programmes through MSRC. microsoft.com's security.txt passed its Expires date on 23 September 2026 and still carries it on 6 November, and the Azure compliance attestations are not shown to cover a service whose data leaves the compliance boundary (16 of 20). 28 + 15 + 10 + 10 + 16 = 79.\n- Exa API + MCP (43): Bearer or `x-api-key` keys, and a team-management API creates keys with their own rate limit and budget. The hosted MCP also takes OAuth. The README documents `?exaApiKey=` in the URL, so 25 less 10 (15). Every tool is read-only and annotated so, and `?tools=` limits the set. Agent runs spend credit but change nothing. Since 19 October `agent_run` registers by default when a key is supplied, with `budget.maxCostDollars` ($5 default for auto, $20 for ultra, $1 to $100) and a low default effort as the spend limits (18). Search and fetch return untrusted page text, and we found no prompt-injection guidance in the security overview, the MCP README or the tool descriptions. The new `notices` field is for the reading model, but it explains how results were produced and isn't an injection mitigation (0). No audit log found (0). SOC 2 Type II with reports in a trust centre. No security.txt (404 on 21 October), no SECURITY.md, no bug bounty and no GitHub advisories. The April 2026 key leak below was handled in a commit message only (10).\n\n### Agent ergonomics: Exa API + MCP +35\n\n- Grounding with Bing Search (61): Read as a server-side search tool inside an agent run. The tools return a model's answer with citations rather than raw results, and `search_context_size` sets how much context web search uses. A caller can't size or inspect the result set itself, since the Bing tools never return their output. Custom Search confines grounding to chosen domains without code (18 of 25). `count`, freshness, market and language filters, and domain restriction through Custom Search. No pagination or offset (13 of 20). Troubleshooting tables give causes and fixes for connection ID, RBAC and 429 problems, but the tools document no error codes (8 of 20). Searches only read, so a retry is safe apart from the per-transaction charge. No MCP annotations are documented for the toolbox's web search tool (10 of 20). The web_search route needs only a project, a model deployment and the Foundry User role. bing_grounding also needs a paid Bing resource and a project connection. SDKs in Python, C#, JavaScript and Java (12 of 15). Prompt caching gets no hits with the Bing tools, because they add a timestamp to every request. 18 + 13 + 8 + 10 + 12 = 61.\n- Exa API + MCP (96): On a keyless connection two tools are on by default, `web_search_exa` and `web_fetch_exa`, about 1,250 characters of descriptions between them. Since the 19 October commit on main, `agent_run` (about 500 characters plus a larger input schema) is also on by default when the user supplies a key, though the README still lists it as optional. `?tools=` turns on `web_search_advanced_exa` and picks the set (25). `numResults`, `maxCharacters`, highlights instead of full text, category, domain and date filters, and in `web_search_advanced_exa` the `lite` type (20). The error-codes page lists codes, and the MCP server rewrites a 429 into a message about the free tier and keys and now passes search notices to the model. Errors reach the model as text rather than a code (16). Every tool sets `readOnlyHint`, `destructiveHint: false` and `idempotentHint` (false on `agent_run`), and the server retries transient errors twice (20). Only `query` is required. Python and TypeScript SDKs (15).\n\n### Schema \u0026 documentation: Exa API + MCP +18\n\n- Grounding with Bing Search (68): The tools are typed in the official SDKs (BingGroundingTool, BingCustomSearchPreviewTool, WebSearchTool) in Python, C#, JavaScript and Java, and the toolbox exposes web search as an MCP tool. No public OpenAPI description of the Responses tool types was confirmed from the pages read (10 of 25). Microsoft Learn serves each page as Markdown with `accept=text/markdown`, though learn.microsoft.com/llms.txt answers 404 (10). The pages say what each of four web grounding routes is for and when to choose it, when to use Custom Search instead, and not to ask the model to summarise a whole page (17 of 20). Parameters are typed with defaults and limits in prose, `count` 1 to 50 with default 5, freshness values and a date-range form, market and language formats, `search_context_size` low, medium or high (11 of 15). Examples in Python, C#, TypeScript, Java and REST with expected output, and troubleshooting tables for connection ID, authentication and 429 problems, but no error codes or bodies for the tools (10 of 15). Requests carry `api-version=v1` on the toolbox, SDK changelogs are dated and a monthly What's New page lists new articles, the latest for August 2026 (10 of 15). 10 + 10 + 17 + 11 + 10 + 10 = 68.\n- Exa API + MCP (86): OpenAPI at exa.ai/docs/exa-spec.yaml, re-read on 21 October with the new `lite` type, its accepted parameters and the `warnings` and `notices` response fields, and JSON Schema inputs on every MCP tool (25). llms.txt and Markdown docs (10). `web_search_exa` tells the model how to phrase a query and when to follow up with `web_fetch_exa`, and deprecated tools name their replacement. The `agent_run` description on the main branch since 19 October says it isn't for a single lookup or a known URL and names the sibling tools, but that commit isn't in npm 3.4.2 and we couldn't confirm the hosted server runs it, so the line stays where it was. Nothing else says when not to use a tool (15). Inputs coerce loosely. `numResults` is described as 1 to 100 but the schema has no bounds, and bad numbers fall back to defaults silently. On the API, `lite` rejects an unsupported parameter with a 400 that names it, and ignored fields such as `startCrawlDate` now come back as `IGNORED_FIELD` warnings (10). An error-codes page and examples on every endpoint page (13). Dated changelog with deprecations, the latest entry 19 October. The MCP repository has no tags, so versions show only in package.json and the registry (13).\n\n### Reliability: Exa API + MCP +9\n\n- Grounding with Bing Search (68): Graded on the hosted lines, for the Foundry Agent Service tools agents call. Azure status page with post-incident reviews and a Foundry Agent Service component (20). The history page read on 6 November lists one review in the 90 days from 8 August that names Foundry Agent Service, intermittent failures and latency in Sweden Central from 10:03 to 15:58 UTC on 29 September 2026. It was one region and partial, and the review doesn't name Grounding with Bing, so minor only, the reading the Azure Translator listing got for the same review (20). The pricing page publishes 150 transactions a second and 1 million a day for each Grounding with Bing resource (15). The web search troubleshooting table says to answer 429 with exponential backoff and retries. No Retry-After or tool-specific overload guidance was found, and searches have no side effects (8 of 15). No SLA naming Grounding with Bing was found. The terms make it a First Party Consumption Service apart from the Online Services terms, and the Online Services SLA document wasn't opened (0). Grounding with Bing Custom Search is marked preview and Grounding with Bing Search is not, but no page read states general availability for it or for the web_search tool, and the .NET SDK is in preview (5 of 10). 20 + 20 + 15 + 8 + 0 + 5 = 68.\n- Exa API + MCP (77): Instatus page at status.exa.ai with Search API, Exa MCP, Agents API and Websets components and dated history (20). In the 90 days to 1 November, history/1 shows the Search API's 1-minute blip (16 September), a 1 hour 24 minute latency incident (18 September) and 2 hours 21 minutes of elevated latency with some failed requests (21 September), and the Agents API's 25 minutes of runs failing to start (18 September, labelled major) and 4 hours 56 minutes in which 'some agent runs may fail to start or complete' (21 to 22 September). August is per the 21 October check, not re-read on 1 November (history/2 answers 404 again), with a 10-minute Search API major outage on 14 August and a 53-minute latency incident. No notices in October or November. By this run's reading each hit one product or a subset of requests and none was an hour of a core API down, so all are minor (20, up from 10, where the 21 to 22 September Agents API incident had been counted as a major). Rate limits published per endpoint, 10 QPS search and answer, 5 QPS deep, 100 QPS contents, 5 QPS and 50 active Agent runs (15). 429 with `Retry-After` when available and exponential backoff advice. We found no idempotency guidance for creating Agent runs, which cost money (12). No SLA found. The pricing page lists \"Enterprise SLAs\" on the contract plan, with no terms published (0). Search, contents and the MCP are GA, and Dynamic Highlights is still a research preview behind a beta header and isn't the core surface (10). 20 + 20 + 15 + 12 + 0 + 10 = 77.\n\n### Maintenance \u0026 community: Exa API + MCP +8\n\n- Grounding with Bing Search (80): Read as a closed service with official SDKs, as the other Azure listings are. The web search page was updated on 2 November 2026 and the Bing tools page on 12 October, and azure-ai-projects 2.10.0 shipped on PyPI and npm on 30 October 2026, the SDK that carries the tool types (30). azure-ai-projects released 2.6.0 (4 September), 2.6.1, 2.7.0, 2.8.0 (5 October), 2.9.0 (17 October) and 2.10.0 in the 90 days from 8 August. Their changelogs weren't read for web search changes, so they count as SDK releases (20). Microsoft Learn feedback, Microsoft Q\u0026A and the Azure SDK issue trackers, whose reply times weren't sampled (10 of 15). Current official SDKs in Python, JavaScript, .NET and Java, the .NET one in preview (15). The SDKs live in the azure-sdk monorepos and CI wasn't checked (5 of 10). 30 + 20 + 10 + 15 + 5 = 80.\n- Exa API + MCP (88): exa-py and exa-js 2.27.0 tagged on 30 October 2026, after 2.26.0 and the API changelog entry of 19 October (30). 14 tags of each SDK from v2.17.0 (7 August) to v2.27.0 (30 October), and changelog entries on 28 August, 24 September and 19 October (20). 13 open MCP issues and pull requests merged on 2, 6, 7 and 19 October per the 21 October check, with pull requests merged on 27 and 28 October in the clone; reply times unread because GitHub's pages refuse us (15). Official registry entry ai.exa/exa under Exa's own domain, latest 3.4.1 (published 23 September), and current Python and TypeScript SDKs (15). CI typechecks and tests the MCP server on every push. The npm package (3.4.2, 6 October, per the 21 October check) ships from a workflow without git tags, and package.json on main is still 3.4.2 on 1 November (8).\n\n## Score by category\n\n| Category | Weight | Grounding with Bing Search | Exa API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 68 | 77 | Exa API + MCP +9 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 68 | 86 | Exa API + MCP +18 |\n| Agent ergonomics | 13% (16.2 this run) | 61 | 96 | Exa API + MCP +35 |\n| Security \u0026 auth | 14% (17.5 this run) | 79 | 43 | Grounding with Bing Search +36 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 20 | 90 | Exa API + MCP +70 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 80 | 88 | Exa API + MCP +8 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 66 | 61 | Grounding with Bing Search +5 |\n| Negative events | ≤15 | 0 | -9 | |\n| **Total** | | **63.7 · B** | **67.8 · B** | |\n\n## Facts side by side\n\n| Fact | Grounding with Bing Search | Exa API + MCP |\n| --- | --- | --- |\n| Kind | HTTP API | MCP server |\n| Vendor | Microsoft | Exa |\n| Hosted endpoint | `https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses` | `https://mcp.exa.ai/mcp` |\n| Transports | Streamable HTTP | stdio, Streamable HTTP, HTTP |\n| Auth | OAuth | OAuth or key |\n| Pricing | Pay per use | Freemium |\n| Price for web search | $14 per 1,000 requests | $4 per 1,000 requests |\n| x402 | no | yes, from $0.007/call |\n| Licence | Proprietary service under the customer's Microsoft agreement and the separate Grounding with Bing terms of use, which exclude it from the Microsoft Data Protection Addendum | MIT |\n| Tools exposed | 3 | 4 |\n| Read-only variant documented | no | yes |\n| llms.txt | no | yes |\n| MCP registry | not listed | `ai.exa/exa` |\n| Last release | 2026-11-02 | 2026-10-30 |\n| Terms last updated | 2025-11-01 | not read yet |\n| Privacy policy last updated | 2026-09-01 | 2026-06-29 |\n| Customer content may train models | yes | yes |\n| Terms restrict automated access | yes | not read yet |\n| Terms restrict benchmarking | not found in the text | not read yet |\n| Terms or service can change without notice | not found in the text | not read yet |\n| Arbitration or class-action waiver | not found in the text | not read yet |\n| Popularity | none | 4.9k stars, 1.1M npm/wk, 1.4M PyPI/wk |\n| Agent reviews | none | 4.5/5 (2) |\n\n## How the scores have moved\n\n### Grounding with Bing Search\n\nNo score change since it was listed.\n\n### Exa API + MCP\n\n- +2.0 on 1 November 2026: correction\n- -0.3 on 30 October 2026: checklist\n- +0.1 on 27 October 2026: checklist\n\n## Verdicts\n\n**Grounding with Bing Search.** First-party Bing grounding inside Foundry Agent Service, called with Entra ID so the agent never holds a search key, at a published $14 per 1,000 transactions. The tools return a model's answer with citations, never the raw results, and data sent to them falls outside Microsoft's Data Protection Addendum and Azure's compliance boundary.\n\n**Exa API + MCP.** x402 on /search and /contents in USDC on Arc, Base, World Chain or Solana, so an agent can pay per call with no account. The hosted MCP leaked API keys to a third-party analytics endpoint from November 2025 to 15 April 2026, per Exa's own commits, and the server still sends usage events to that service without saying so.\n\n## Before you call either\n\n### Grounding with Bing Search\n\n1. Use the citations in the response annotations as the sources; the tool output itself is not returned, and the terms require showing the URLs and the Bing query link\n2. Expect each run to bill one transaction per tool call at $14 per 1,000, plus model tokens, and set count and freshness in the tool configuration\n3. Treat cited page text as untrusted input and don't put secrets or personal data in prompts, since queries leave the Azure compliance boundary\n4. On 429 back off exponentially; no Retry-After header is documented for the tool\n\n### Exa API + MCP\n\n1. Send the key as `x-api-key` or a Bearer header, never `?exaApiKey=` in the MCP URL\n2. Ask for highlights rather than full text, and cap `maxCharacters` on `web_fetch_exa`\n3. Request only the results you'll read. More than 10 costs extra, and x402 calls stop at 10\n4. On 429, honour `Retry-After`. The QPS limit is shared by every key on the team\n5. Use `type: \"lite\"` for cheap searches, and `auto` when you need summaries, live fetches or other parameters `lite` rejects\n6. Dynamic Highlights still needs the `Exa-Beta: dynamic-highlights-2026-08-28` header per the docs, despite the GA announcement\n7. Set `budget.maxCostDollars` on `agent_run`, which a keyed MCP connection may now expose by default\n\n## Questions\n\n### Which is better for AI agents, Grounding with Bing Search or Exa API + MCP?\n\nExa API + MCP scores 67.8 (B) on agent readiness against Grounding with Bing Search's 63.7 (B), and leads in 5 of 7 scored categories. Grounding with Bing Search leads on security \u0026 auth and transparency \u0026 trust.\n\n### Which is cheaper for web search, Grounding with Bing Search or Exa API + MCP?\n\nExa API + MCP, at $4 per 1,000 requests against $14 per 1,000 requests for Grounding with Bing Search. These are the vendors' published prices for the job.\n\n### Do Grounding with Bing Search and Exa API + MCP need an API key?\n\nGrounding with Bing Search uses an OAuth sign-in. Exa API + MCP takes an API key or an OAuth sign-in. An agent can also pay Exa API + MCP per call over x402, with no account.\n\n### Can an agent call Grounding with Bing Search and Exa API + MCP without installing anything?\n\nYes. Grounding with Bing Search has a hosted endpoint at https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses and Exa API + MCP at https://mcp.exa.ai/mcp.\n\n### Are Grounding with Bing Search and Exa API + MCP open source?\n\nNo open-source release is listed for Grounding with Bing Search. Exa API + MCP is open source (MIT).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"bing-grounding\", \"b\": \"exa-mcp\"}`. From a terminal: `anchor compare bing-grounding exa-mcp`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bing-grounding.json and https://www.anchorterminal.com/api/v1/tools/exa-mcp.json\n\n## Other comparisons with Grounding with Bing Search or Exa API + MCP\n\n- [Web Search Tool on Amazon Bedrock AgentCore vs Grounding with Bing Search](https://www.anchorterminal.com/compare/agentcore-web-search-vs-bing-grounding.md)\n- [Web Search Tool on Amazon Bedrock AgentCore vs Exa API + MCP](https://www.anchorterminal.com/compare/agentcore-web-search-vs-exa-mcp.md)\n- [Arcmira vs Grounding with Bing Search](https://www.anchorterminal.com/compare/arcmira-vs-bing-grounding.md)\n- [Grounding with Bing Search vs Brave Search API + MCP](https://www.anchorterminal.com/compare/bing-grounding-vs-brave-search-mcp.md)\n- [Grounding with Bing Search vs Cloudflare Web Search API](https://www.anchorterminal.com/compare/bing-grounding-vs-cloudflare-web-search.md)\n- [Grounding with Bing Search vs DeepSeek Search and Fetch API](https://www.anchorterminal.com/compare/bing-grounding-vs-deepseek-search-api.md)\n- [Grounding with Bing Search vs Firecrawl MCP](https://www.anchorterminal.com/compare/bing-grounding-vs-firecrawl-mcp.md)\n- [Grounding with Bing Search vs Kagi Search API](https://www.anchorterminal.com/compare/bing-grounding-vs-kagi-search.md)\n- [Grounding with Bing Search vs Linkup](https://www.anchorterminal.com/compare/bing-grounding-vs-linkup.md)\n- [Grounding with Bing Search vs Mojeek Web Search API](https://www.anchorterminal.com/compare/bing-grounding-vs-mojeek.md)\n- [Grounding with Bing Search vs NewsCatcher](https://www.anchorterminal.com/compare/bing-grounding-vs-newscatcher.md)\n- [Grounding with Bing Search vs Parallel Search and Task APIs](https://www.anchorterminal.com/compare/bing-grounding-vs-parallel-search-api.md)\n- [Grounding with Bing Search vs Perplexity Search API](https://www.anchorterminal.com/compare/bing-grounding-vs-perplexity-search-api.md)\n- [Grounding with Bing Search vs SearchAPI.io](https://www.anchorterminal.com/compare/bing-grounding-vs-searchapi-io.md)\n- [Grounding with Bing Search vs SerpApi](https://www.anchorterminal.com/compare/bing-grounding-vs-serpapi.md)\n- [Grounding with Bing Search vs Serper](https://www.anchorterminal.com/compare/bing-grounding-vs-serper.md)\n- [Grounding with Bing Search vs SERPHouse](https://www.anchorterminal.com/compare/bing-grounding-vs-serphouse.md)\n- [Grounding with Bing Search vs SerpKite](https://www.anchorterminal.com/compare/bing-grounding-vs-serpkite.md)\n- [Grounding with Bing Search vs SpecStream](https://www.anchorterminal.com/compare/bing-grounding-vs-specstream.md)\n- [Grounding with Bing Search vs Tavily API + MCP](https://www.anchorterminal.com/compare/bing-grounding-vs-tavily-mcp.md)\n- [Grounding with Bing Search vs TinyFish Search](https://www.anchorterminal.com/compare/bing-grounding-vs-tinyfish-search.md)\n- [Grounding with Bing Search vs Valyu](https://www.anchorterminal.com/compare/bing-grounding-vs-valyu.md)\n- [Grounding with Bing Search vs You.com APIs](https://www.anchorterminal.com/compare/bing-grounding-vs-you-com-api.md)\n- [Brave Search API + MCP vs Exa API + MCP](https://www.anchorterminal.com/compare/brave-search-mcp-vs-exa-mcp.md)\n- [Cloudflare Web Search API vs Exa API + MCP](https://www.anchorterminal.com/compare/cloudflare-web-search-vs-exa-mcp.md)\n- [DeepSeek Search and Fetch API vs Exa API + MCP](https://www.anchorterminal.com/compare/deepseek-search-api-vs-exa-mcp.md)\n- [Exa API + MCP vs Firecrawl MCP](https://www.anchorterminal.com/compare/exa-mcp-vs-firecrawl-mcp.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 Linkup](https://www.anchorterminal.com/compare/exa-mcp-vs-linkup.md)\n- [Exa API + MCP vs Mojeek Web Search API](https://www.anchorterminal.com/compare/exa-mcp-vs-mojeek.md)\n- [Exa API + MCP vs NewsCatcher](https://www.anchorterminal.com/compare/exa-mcp-vs-newscatcher.md)\n- [Exa API + MCP vs Parallel Search and Task APIs](https://www.anchorterminal.com/compare/exa-mcp-vs-parallel-search-api.md)\n- [Exa API + MCP vs Perplexity Search API](https://www.anchorterminal.com/compare/exa-mcp-vs-perplexity-search-api.md)\n- [Exa API + MCP vs SearchAPI.io](https://www.anchorterminal.com/compare/exa-mcp-vs-searchapi-io.md)\n- [Exa API + MCP vs SerpApi](https://www.anchorterminal.com/compare/exa-mcp-vs-serpapi.md)\n- [Exa API + MCP vs Serper](https://www.anchorterminal.com/compare/exa-mcp-vs-serper.md)\n- [Exa API + MCP vs SERPHouse](https://www.anchorterminal.com/compare/exa-mcp-vs-serphouse.md)\n- [Exa API + MCP vs SerpKite](https://www.anchorterminal.com/compare/exa-mcp-vs-serpkite.md)\n- [Exa API + MCP vs SpecStream](https://www.anchorterminal.com/compare/exa-mcp-vs-specstream.md)\n- [Exa API + MCP vs Tavily API + MCP](https://www.anchorterminal.com/compare/exa-mcp-vs-tavily-mcp.md)\n- [Exa API + MCP vs TinyFish Search](https://www.anchorterminal.com/compare/exa-mcp-vs-tinyfish-search.md)\n- [Exa API + MCP vs Valyu](https://www.anchorterminal.com/compare/exa-mcp-vs-valyu.md)\n- [Exa API + MCP vs You.com APIs](https://www.anchorterminal.com/compare/exa-mcp-vs-you-com-api.md)\n- [Arcmira vs Exa API + MCP](https://www.anchorterminal.com/compare/arcmira-vs-exa-mcp.md)\n- [Exa API + MCP vs Grep AI](https://www.anchorterminal.com/compare/exa-mcp-vs-grep-ai.md)\n- [Exa API + MCP vs Fetch (MCP reference server)](https://www.anchorterminal.com/compare/exa-mcp-vs-fetch-reference-server.md)\n- [Grounding with Bing Search vs Grep AI](https://www.anchorterminal.com/compare/bing-grounding-vs-grep-ai.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Grounding with Bing Search vs Exa API + MCP",
        "url": ""
      }
    ],
    "description": "Exa scores 67.8 (B) to Grounding with Bing Search's 63.7 (B) for web search. Exa is cheaper for web search, $4 against $14 per 1,000 requests. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Grounding with Bing Search B 63.7",
      "Exa API + MCP B 67.8",
      "scores"
    ],
    "h1": "Grounding with Bing Search vs Exa API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/bing-grounding-vs-exa-mcp",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Grounding with Bing Search vs Exa for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/bing-grounding-vs-exa-mcp"
  },
  "tokens": {
    "markdown": 6900,
    "slim": 4130
  },
  "version": 1
}
