Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

perplexity-mcp-zerver

MCP.Pizza Chef: wysh3

Perplexity MCP Zerver is a TypeScript-based MCP server that enables AI-driven web search and research by interacting directly with the Perplexity website. It requires no API keys, leveraging Puppeteer for browser automation to perform searches, retrieve documentation, and analyze code. It supports persistent chat history for conversational context and offers multiple response detail levels, making it ideal for research and development workflows.

Use This MCP server To

Perform web searches via Perplexity without API key restrictions Retrieve technology documentation and usage examples automatically Maintain conversational context with persistent chat history Analyze code snippets using AI-powered web search Automate research workflows with detailed or brief search results Integrate web search capabilities into AI agents or copilots

README

Perplexity MCP Zerver 📋

A research level Model Context Protocol (MCP) server implementation providing AI-powered research capabilities by interacting with the Perplexity website without requiring an API key.

Features

  • 🔍 Web search integration via Perplexity's web interface.
  • 💬 Persistent chat history for conversational context.
  • 📄 Tools for documentation retrieval, API finding, and code analysis.
  • 🚫 No API Key required (relies on web interaction).
  • 🛠️ TypeScript-first implementation.
  • 🌐 Uses Puppeteer for browser automation.

Tools

1. Search (search)

Performs a search query on Perplexity.ai. Supports brief, normal, or detailed responses. Returns raw text output.

2. Get Documentation (get_documentation)

Asks Perplexity to provide documentation and examples for a technology/library, optionally focusing on specific context. Returns raw text output.

3. Find APIs (find_apis)

Asks Perplexity to find and evaluate APIs based on requirements and context. Returns raw text output.

4. Check Deprecated Code (check_deprecated_code)

Asks Perplexity to analyze a code snippet for deprecated features within a specific technology context. Returns raw text output.

5. Extract URL Content (extract_url_content)

Extracts main article text content from URLs using browser automation and Mozilla's Readability. Handles GitHub repositories via gitingest.com. Supports recursive link exploration up to depth. Returns structured JSON with content and metadata.

6. Chat (chat_perplexity)

Maintains ongoing conversations with Perplexity AI. Stores chat history locally in chat_history.db within the project directory. Returns a stringified JSON object containing chat_id and response.

Installation

just copy 📋 and paste the readme and let the AI take care of the rest

  1. Clone or download this repository:
git clone https://github.com/wysh3/perplexity-mcp-zerver.git
cd perplexity-mcp-zerver
  1. Install dependencies:
npm install
  1. Build the server:
npm run build

Important: Ensure you have Node.js installed. Puppeteer will download a compatible browser version if needed during installation. Restart your IDE/Application after building and configuring the project for changes to take effect.

Configuration

Add the server to your MCP configuration file (e.g., cline_mcp_settings.json for the VS Code extension or claude_desktop_config.json for the desktop app).

Important: Replace /path/to/perplexity-mcp-zerver/build/index.js with the absolute path to the built index.js file on your system.

Example for Cline/RooCode Extension:

{
  "mcpServers": {
    "perplexity-server": {
      "command": "node",
      "args": [
        "/full/path/to/your/perplexity-mcp-zerver/build/index.js" // <-- Replace this path! (in case of windows for ex: "C:\\Users\\$USER\\Documents\\Cline\\MCP\\perplexity-mcp-zerver\\build\\index.js"
      ],
      "env": {},
      "disabled": false,
      "alwaysAllow": [],
      "autoApprove": [],
      "timeout": 300
    }
  }
}

Example for Claude Desktop:

{
  "mcpServers": {
    "perplexity-server": {
      "command": "node",
      "args": [
        "/full/path/to/your/perplexity-mcp-zerver/build/index.js" // <-- Replace this path!
      ],
      "env": {},
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

Usage

  1. Ensure the server is configured correctly in your MCP settings file.
  2. Restart your IDE (like VS Code with the Cline/RooCode extension) or the Claude Desktop application.
  3. The MCP client should automatically connect to the server.
  4. You can now ask the connected AI assistant (like Claude) to use the tools, e.g.:
    • "Use perplexity-server search to find the latest news on AI."
    • "Ask perplexity-server get_documentation about React hooks."
    • "Start a chat with perplexity-server about quantum computing."

Credits

Thanks DaInfernalCoder:

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE.md file for details.

Disclaimer

This project interacts with the Perplexity website via web automation (Puppeteer). It is intended for educational and research purposes only. Web scraping and automation may be against the terms of service of the target website. The author does not endorse or encourage any unauthorized automation or violation of terms of service. Use responsibly and ethically. The stability of this server depends on the Perplexity website's structure remaining consistent.

perplexity-mcp-zerver FAQ

How does Perplexity MCP Zerver perform searches without API keys?
It uses Puppeteer to automate browser interactions with the Perplexity website, bypassing the need for API keys.
What types of search responses does this MCP server support?
It supports brief, normal, and detailed response formats for search queries.
Can it maintain context across multiple queries?
Yes, it supports persistent chat history to maintain conversational context.
What programming language is this MCP server implemented in?
It is implemented in TypeScript for robust and maintainable code.
Does it support retrieving documentation for specific technologies?
Yes, it can query Perplexity to provide documentation and examples for various technologies and libraries.
What are the main dependencies for running this MCP server?
It primarily depends on Puppeteer for browser automation and a Node.js environment for execution.
Is this MCP server limited to Perplexity or can it be extended?
Currently, it is designed specifically for Perplexity web interaction but can be extended with additional modules.
How secure is the interaction with Perplexity via Puppeteer?
The server scopes interactions to the Perplexity website only, minimizing security risks while automating browser tasks.