There is no API key because there is no API underneath — it automates Perplexity's own interface, so its stability tracks that site's markup rather than a versioned contract. That is a fair trade for personal research, and the developer-shaped tools (documentation lookup, API discovery, deprecation checks) are more useful in an editor than a generic search box. Just do not build anything load-bearing on it.
A research server that drives Perplexity's web interface rather than its API, which is why there is no key to obtain and no per-query cost. Conversation history is stored locally in SQLite, so a thread survives between calls.
- `search` — research queries with configurable depth, returning raw text results
- `get_documentation` — technical documentation with examples, returned structured
- `find_apis` — discover APIs that fit a development need, with descriptions
- `check_deprecated_code` — analyse a snippet for outdated patterns and get a report
- `extract_url_content` — clean article extraction, with GitHub repository URLs handled specially
- `chat_perplexity` — a persistent conversation with its context history, returned as JSON
The Bun runtime, and Node.js 18+ for the TypeScript build. Clone, `bun install`, `bun run build`, then point the client at `bun /absolute/path/to/build/main.js` with a timeout of 300. The package is `perplexity-mcp-zerver` and the licence is GNU GPL v3.0. A Perplexity Pro subscription is optional: `bun run login` opens a browser once and saves the session, with `PERPLEXITY_BROWSER_DATA_DIR` (default `~/.perplexity-mcp`) and `PERPLEXITY_PERSISTENT_PROFILE` controlling the profile. Email login is the reliable path; SSO is documented as less so.
