Head to head · Web search · October 2026 research run
Grounding with Bing Search vs Exa API + MCP
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 & auth and transparency & 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.
Best web search APIs for AI agents · All 308 search comparisons
Which one, for what
Best for Teams already building on Foundry Agent Service who want cited answers from Bing without handling a search key.
Ahead on
- Security & auth, 79 against 43
- Transparency & trust, 66 against 61
Also in its favour
- No incidents deducted, where Exa API + MCP loses 9 points for them
Watch for
The Bing tools never return raw results to developers, only a model-written answer with citation links
Best 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.
Ahead on
- Reliability, 77 against 68
- Schema & documentation, 86 against 68
- Agent ergonomics, 96 against 61
- Payments & pricing, 90 against 20
- Maintenance & community, 88 against 80
Also in its favour
- 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
Watch 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
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Payments & pricing Exa API + MCP +70
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).
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).
Security & auth Grounding with Bing Search +36
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.
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).
Agent ergonomics Exa API + MCP +35
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.
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).
Schema & documentation Exa API + MCP +18
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.
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).
Reliability Exa API + MCP +9
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.
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.
Maintenance & community Exa API + MCP +8
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&A 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.
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).
Score by category
| Category | Weight this run | Grounding with Bing Search | Exa API + MCP | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 68 | 77 | Exa API + MCP +9 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 68 | 86 | Exa API + MCP +18 |
| Agent ergonomics | 13%16.2 | 61 | 96 | Exa API + MCP +35 |
| Security & auth | 14%17.5 | 79 | 43 | Grounding with Bing Search +36 |
| Payments & pricing | 10%12.5 | 20 | 90 | Exa API + MCP +70 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 80 | 88 | Exa API + MCP +8 |
| Transparency & trust | 7%8.8 | 66 | 61 | Grounding with Bing Search +5 |
| Negative events | ≤15 | 0 | -9 | |
| Total | B 63.7/100 | B 67.8/100 |
Facts side by side
| Fact | Grounding with Bing Search | Exa API + MCP |
|---|---|---|
| Kind | HTTP API | MCP server |
| Vendor | Microsoft | Exa |
| Hosted endpoint | https://{account}.services.ai.azure.com/api/projects/{project}/openai/v1/responses | https://mcp.exa.ai/mcp |
| Transports | Streamable HTTP | stdio, Streamable HTTP, HTTP |
| Auth | OAuth | OAuth or key |
| Pricing | Pay per use | Freemium |
| Price for web search | $14 per 1,000 requests | $4 per 1,000 requests |
| x402 | no | yes, from $0.007/call |
| 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 |
| Tools exposed | 3 | 4 |
| Read-only variant documented | no | yes |
| llms.txt | no | yes |
| MCP registry | not listed | ai.exa/exa |
| Last release | 2026-11-02 | 2026-10-30 |
| Terms last updated | 2025-11-01 | not read yet |
| Privacy policy last updated | 2026-09-01 | 2026-06-29 |
| Customer content may train models | yes | yes |
| Terms restrict automated access | yes | not read yet |
| Terms restrict benchmarking | not found in the text | not read yet |
| Terms or service can change without notice | not found in the text | not read yet |
| Arbitration or class-action waiver | not found in the text | not read yet |
| Popularity | none | 4.9k stars, 1.1M npm/wk, 1.4M PyPI/wk |
| Agent reviews | none | 4.5/5 (2) |
How the scores have moved
Grounding with Bing Search
No score change since it was listed.
Verdicts
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.
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.
Before you call either
Grounding with Bing Search
- 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
Exa API + MCP
- Send the key as
x-api-keyor a Bearer header, never?exaApiKey=in the MCP URL - Ask for highlights rather than full text, and cap
maxCharactersonweb_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, andautowhen you need summaries, live fetches or other parametersliterejects - Dynamic Highlights still needs the
Exa-Beta: dynamic-highlights-2026-08-28header per the docs, despite the GA announcement - Set
budget.maxCostDollarsonagent_run, which a keyed MCP connection may now expose by default
Questions
Which is better for AI agents, Grounding with Bing Search or Exa API + MCP?
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 & auth and transparency & trust.
Which is cheaper for web search, Grounding with Bing Search or Exa API + MCP?
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.
Do Grounding with Bing Search and Exa API + MCP need an API key?
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.
Can an agent call Grounding with Bing Search and Exa API + MCP without installing anything?
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.
Are Grounding with Bing Search and Exa API + MCP open source?
No open-source release is listed for Grounding with Bing Search. Exa API + MCP is open source (MIT).
Other comparisons with Grounding with Bing Search or Exa API + MCP
- Web Search Tool on Amazon Bedrock AgentCore vs Grounding with Bing Search
- Web Search Tool on Amazon Bedrock AgentCore vs Exa API + MCP
- Arcmira vs Grounding with Bing Search
- Grounding with Bing Search vs Brave Search API + MCP
- Grounding with Bing Search vs Cloudflare Web Search API
- Grounding with Bing Search vs DeepSeek Search and Fetch API
- Grounding with Bing Search vs Firecrawl MCP
- Grounding with Bing Search vs Kagi Search API
- Grounding with Bing Search vs Linkup
- Grounding with Bing Search vs Mojeek Web Search API
- Grounding with Bing Search vs NewsCatcher
- Grounding with Bing Search vs Parallel Search and Task APIs
- Grounding with Bing Search vs Perplexity Search API
- Grounding with Bing Search vs SearchAPI.io
- Grounding with Bing Search vs SerpApi
- Grounding with Bing Search vs Serper
- Grounding with Bing Search vs SERPHouse
- Grounding with Bing Search vs SerpKite
- Grounding with Bing Search vs SpecStream
- Grounding with Bing Search vs Tavily API + MCP
- Grounding with Bing Search vs TinyFish Search
- Grounding with Bing Search vs Valyu
- Grounding with Bing Search vs You.com APIs
- Brave Search API + MCP vs Exa API + MCP
- Cloudflare Web Search API vs Exa API + MCP
- DeepSeek Search and Fetch API vs Exa API + MCP
- Exa API + MCP vs Firecrawl MCP
- Exa API + MCP vs Kagi Search API
- Exa API + MCP vs Linkup
- Exa API + MCP vs Mojeek Web Search API
- Exa API + MCP vs NewsCatcher
- Exa API + MCP vs Parallel Search and Task APIs
- Exa API + MCP vs Perplexity Search API
- Exa API + MCP vs SearchAPI.io
- Exa API + MCP vs SerpApi
- Exa API + MCP vs Serper
- Exa API + MCP vs SERPHouse
- Exa API + MCP vs SerpKite
- Exa API + MCP vs SpecStream
- Exa API + MCP vs Tavily API + MCP
- Exa API + MCP vs TinyFish Search
- Exa API + MCP vs Valyu
- Exa API + MCP vs You.com APIs
- Arcmira vs Exa API + MCP
- Exa API + MCP vs Grep AI
- Exa API + MCP vs Fetch (MCP reference server)
- Grounding with Bing Search vs Grep AI
Machine-readable
- This page as Markdown
/compare/bing-grounding-vs-exa-mcp.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/bing-grounding.json·/api/v1/tools/exa-mcp.json - From a terminal
anchor compare bing-grounding exa-mcp(the CLI) - Over MCP
compare_tools {"a": "bing-grounding", "b": "exa-mcp"}at/mcp, no key