Obsah

Perplexity MCP Zerver

Perplexity MCP Zerver je MCP server, který umožňuje AI nástrojům (jako Claude, Cursor nebo OpenCode) prohledávat web prostřednictvím Perplexity – bez nutnosti API klíče. Místo toho využívá browserovou automatizaci a napojuje se přímo na existující předplatné Perplexity Pro.

Dostupné nástroje

Server poskytuje tyto nástroje:

Instalace

Je potřeba mít nainstalovaný runtime Bun a Node.js 18+.

git clone https://github.com/wysh3/perplexity-mcp-zerver.git
cd perplexity-mcp-zerver
bun install
bun run build

Bun v PATH

Pokud má být možné spouštět Bun zkráceně jako bun, přidej do .bashrc:

export BUN_INSTALL="$HOME/.bun"
export PATH="$BUN_INSTALL/bin:$PATH"

Potom načti konfiguraci shellu:

source ~/.bashrc

Pozor: .bashrc se běžně načítá jen pro interaktivní Bash shell. MCP klient nebo služba nemusí tuto konfiguraci zdědit. Pro stabilní konfiguraci MCP serveru je proto bezpečnější používat absolutní cestu k Bunu, například /home/aiwork/.bun/bin/bun, nebo nastavit PATH přímo v prostředí daného MCP klienta.

Alpine Linux / ARM64

Na Alpine Linuxu na ARM64 (aarch64) může Puppeteer stáhnout nebo použít nekompatibilní Chrome for Testing binárku. Typický projev je chyba:

ENOEXEC: unknown error, posix_spawn '/home/aiwork/.cache/puppeteer/chrome/linux_arm-.../chrome-linux64/chrome'

Příčina je, že runtime běží na aarch64, ale cached Chrome binárka je x86-64. Operační systém ji proto odmítne spustit jako neplatný formát binárky.

Best practice na Alpine je nepoužívat ručně stažený Chrome for Testing zip, ale nainstalovat systémový Chromium z repozitáře community:

apk add --no-cache chromium

Balíček poskytuje zejména:

Do konfigurace MCP serveru pak nastav cestu k systémovému Chromium přes PUPPETEER_EXECUTABLE_PATH. V OpenCode konfiguraci to může vypadat například takto:

"perplexity": {
  "type": "local",
  "command": [
    "bun",
    "/home/aiwork/tools/perplexity-mcp-zerver/build/main.js"
  ],
  "environment": {
    "PUPPETEER_EXECUTABLE_PATH": "/usr/bin/chromium"
  },
  "timeout": 360000,
  "enabled": true
}

Alternativně lze použít menší balíček chromium-headless-shell:

apk add --no-cache chromium-headless-shell

Pak je potřeba nastavit:

PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-headless-shell

Pro Perplexity MCP Zerver je ale bezpečnější začít běžným balíčkem chromium, protože Puppeteer standardně očekává plný Chrome/Chromium a kompatibilita bývá lepší. Po nastavení PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium a restartu OpenCode bylo ověřeno, že perplexity_search i extract_url_content fungují a původní Puppeteer cache s x86-64 Chrome se už nepoužívá.

Konfigurace

Do konfiguračního souboru MCP klienta se přidá:

{
  "mcpServers": {
    "perplexity-server": {
      "command": "bun",
      "args": ["/absolutní/cesta/k/build/main.js"],
      "timeout": 300
    }
  }
}

Timeout jsem v konfiguraci nenastavoval, ale protože Perplexity může odpovídat pomaleji, doporučuji nastavit ho na vyšší hodnotu, než je výchozí v daném MCP klientovi. Hodnota 300 sekund z README je dobrý základ.

Přihlášení a Pro předplatné

Aby server mohl využívat Perplexity Pro předplatné – s přístupem k lepším modelům a vyššími limity – je nutné provést jednorázové přihlášení:

bun run login

Příkaz otevře okno prohlížeče. Doporučuje se přihlásit e-mailem, přihlášení přes Google/SSO může být méně spolehlivé. Po přihlášení se relace uloží do složky ~/.perplexity-mcp v domovském adresáři.

Přihlášení při použití Dockeru

Pokud AI nástroj běží v Dockeru a přímé přihlášení uvnitř kontejneru není možné, lze se přihlásit na hostitelském systému a session data pak do kontejneru překopírovat:

  1. Na hostu spustit přihlášení: bun run login
  2. Po úspěšném přihlášení zkopírovat složku .perplexity-mcp z domovského adresáře hostitele do domovského adresáře uvnitř kontejneru.

Server si session při startu načte automaticky.

Alternativní MCP servery s Perplexity API

Následující servery na rozdíl od Perplexity MCP Zerveru nevyužívají browserovou automatizaci, ale připojují se přímo k Perplexity API přes API klíč. Některé z nich podporují i hluboký výzkum (deep research).

Oficiální Perplexity MCP server

perplexityai/modelcontextprotocol je oficiální implementace od Perplexity AI. Poskytuje čtyři nástroje:

Instalace přes npx bez nutnosti klonovat repozitář. Konfigurace v Claude Code:

claude mcp add perplexity --env PERPLEXITY_API_KEY="váš_klíč" -- npx -y @perplexity-ai/mcp-server

Vyžaduje proměnnou prostředí PERPLEXITY_API_KEY. Volitelný parametr strip_thinking u nástrojů perplexity_research a perplexity_reason odstraní z odpovědi <think> tagy a ušetří tokeny.

perplexity-mcp (jsonallen)

jsonallen/perplexity-mcp je jednoduchý Python server s jedním nástrojem perplexity_search_web. Volitelný parametr recency umožňuje omezit výsledky na den, týden, měsíc nebo rok. Výběrem modelu sonar-deep-research přes proměnnou PERPLEXITY_MODEL server podporuje hluboký výzkum.

Instalace přes Smithery:

npx -y @smithery/cli install perplexity-mcp --client claude

Vyžaduje proměnné prostředí PERPLEXITY_API_KEY a volitelně PERPLEXITY_MODEL (výchozí: sonar).

perplexity-mcp-server (cyanheads)

cyanheads/perplexity-mcp-server je Node.js server se dvěma nástroji:

Deep research může trvat déle; doporučený timeout je 180 sekund. Server odhaduje i náklady volání API na základě spotřebovaných tokenů.

Instalace:

git clone https://github.com/cyanheads/perplexity-mcp-server.git
npm install
npm run build

Vyžaduje proměnnou prostředí PERPLEXITY_API_KEY.

Zdroje