# Perplexity Search API (slim)

> Perplexity's Search API returns ranked web results with extracted page text as JSON from Perplexity's own index, through POST /search. The same key reaches the Agent API's web_search tool for cited answers, and a hosted MCP server wraps both.

- Full: https://www.anchorterminal.com/tools/perplexity-search-api.md (~9,000 tokens) · this version ~1,880 tokens · JSON https://www.anchorterminal.com/tools/perplexity-search-api.json · canonical https://www.anchorterminal.com/tools/perplexity-search-api
- Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-11-07 · pricing https://www.anchorterminal.com/tools/perplexity-search-api#pricing · reviews https://www.anchorterminal.com/tools/perplexity-search-api#reviews
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)

**BB · 70.2/100 · rank #210 of 1486 · #5 in Web search APIs · agent-ready · confidence medium**


Assessment: Raw ranked results with token-capped page text from Perplexity's own index, $5 per 1,000 requests or $1 with Fast Search, an OpenAPI description and a hosted MCP server with read-only annotations. Uptime is not guaranteed, there is no free allowance, keys carry no scopes, and no guidance on untrusted page text was found.

## Facts

- Kind: HTTP API · vendor: Perplexity · category: Web search APIs · legal entity: Perplexity AI, Inc. · provenance 80/100
- Endpoint: `https://api.perplexity.ai/mcp` (Streamable HTTP, stdio)
- Auth: OAuth or key · pricing: Pay per use · x402: no · licence: Proprietary service under the Perplexity API Terms of Service. The MCP server is MIT and the official SDKs Apache-2.0
- Benchmark probes: not run yet, so Performance is pending
- Live, from our pollers (not part of the score): up at 2026-11-07 18:20 UTC · uptime 30 days 100.0% (200 probes) · p50 164 ms · p95 262 ms over 24 hours
- Vendor status page: no problems reported, All Systems Operational (2026-11-07 18:21 UTC)
- Surface listed: `POST https://api.perplexity.ai/search` and the hosted MCP server at api.perplexity.ai/mcp, with the Agent API's web_search tool as the answer route. Read from docs.perplexity.ai, its OpenAPI description, the status feed, the API terms, the DPA and the MCP server repository on 6 November 2026. No account was made and no call was sent
- Request controls: `query` (a string or up to five strings), `max_results` 1 to 20 (50 for people search), `search_type` web, fast or people, `max_tokens` and `max_tokens_per_page` 1 to 1,000,000, up to 20 domains to include or exclude, up to 20 languages, a recency filter, publication and update date windows, and `country`
- Agent API: `POST /v1/agent` runs a model from Perplexity or a third party with built-in tools (web_search, fetch_url, image_search, people_search, finance_search, sandbox, MCP) and returns a typed output with a `search_results` item. Billed per token plus tool fees. It replaced Sonar Chat Completions
- MCP tools: perplexity_search (raw results), perplexity_ask (fast effort), perplexity_reason (medium) and perplexity_research (high). The local stdio server is `@perplexity-ai/mcp-server` 1.3.0 on npm; the repository's 1.4.0 (16 October) was not on npm on 6 November
- Other routes: The `pplx search web` command in the Perplexity CLI, a Python Search SDK, and a console playground that needs no API key
- Other Perplexity listings: The Decisions API is listed as pplx-decider and pplx-decider-flash, and SPACE as perplexity-space. The Embeddings and Orchestrator APIs are not part of this listing
- Terms: API Terms of Service updated 23 January 2026 under California law. Customers own Output, may display it only within their own applications, and Perplexity will not use Customer Content to train generative models
- Prices: Search API request $5 per 1,000 requests; Search API request with Fast Search $1 per 1,000 requests; Agent API web_search call $2.50 per 1,000 tool calls; Agent API fetch_url call $0.50 per 1,000 tool calls

- Scores: Reliability 80, Performance pending, Schema & documentation 89, Agent ergonomics 85, Security & auth 56, Payments & pricing 25, Task success pending, Maintenance & community 82, Transparency & trust 66 · total over the 7 assessed categories
- Why: Reliability, Graded on the hosted lines, for `POST /search` and the hosted MCP server. · Schema & documentation, OpenAPI 3.1.0 at docs.perplexity.ai/openapi.json describes `POST /search` with typed request and response schemas, listed in llms.txt (25). · Agent ergonomics, `max_results` 1 to 20, `max_tokens` and `max_tokens_per_page` cap the extracted text, and results are title, url, snippet and two dates. · Security & auth, Project API keys, shown once, revocable, and generated and revoked through two documented endpoints with a rotation guide. · Payments & pricing, No x402, MPP or L402 in the docs, pricing page, OpenAPI or llms.txt (0). · Maintenance & community, Read as a closed service with official SDKs and an open-source MCP server. · Transparency & trust, Closed service under terms naming Perplexity AI, Inc.
- Sources: 19, open questions: 7, both in the full twin
- Capabilities: web.search, search.answer, search.research
- JSON: https://www.anchorterminal.com/api/v1/tools/perplexity-search-api.json
- Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/perplexity-search-api.svg` or a link to https://www.anchorterminal.com/tools/perplexity-search-api from a page on perplexity.ai or one of its subdomains, or the README at the root of github.com/perplexityai/modelcontextprotocol, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin.
- Support: Discord https://discord.com/invite/perplexity-ai; api@perplexity.ai; https://docs.perplexity.ai/docs/resources/discussions; https://github.com/perplexityai/modelcontextprotocol/issues; more in the full twin

## Before you call it

1. Set `max_tokens_per_page` and `max_tokens` before calling; extracted text otherwise fills the context, and the price does not change with size
2. Skip results with an empty `snippet` and dedupe by `url` when sending a `query` array; each query costs one rate-limit unit
3. Use `search_type: "fast"` for $1 per 1,000 when latency and cost matter more than depth
4. On 429 wait for Retry-After, then back off; on 402 stop and ask the user to add credits
5. Use the Search API for sources and the Agent API's web_search tool for a written answer with citations

## Connect

```bash
pip install perplexityai
```

```bash
curl -X POST https://api.perplexity.ai/search \
  -H "Authorization: Bearer $PERPLEXITY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "renewable energy technologies", "max_results": 10, "max_tokens": 50000, "max_tokens_per_page": 4096}'
```

```bash
claude mcp add --transport http perplexity https://api.perplexity.ai/mcp
```
Full config and headless snippets are in the full page. Through letme (picks today, calling later): https://letme.dev/perplexity-search-api

## Similar tools

| Tool | Grade | Score | Shared capabilities | Slim |
| --- | --- | --- | --- | --- |
| Tavily API + MCP | BB | 77.1 | web.search, search.answer, search.research | https://www.anchorterminal.com/tools/tavily-mcp.min.md |
| You.com APIs | BB | 76.1 | web.search, search.answer, search.research | https://www.anchorterminal.com/tools/you-com-api.min.md |
| Parallel Search and Task APIs | BB | 75 | web.search, search.answer, search.research | https://www.anchorterminal.com/tools/parallel-search-api.min.md |
| Valyu | B | 69.3 | web.search, search.answer, search.research | https://www.anchorterminal.com/tools/valyu.min.md |
| Linkup | B | 68 | web.search, search.answer, search.research | https://www.anchorterminal.com/tools/linkup.min.md |


## Panel reviews (0, desk reviews from public material, no calls made)

