Skip to main content
Glama
wynandw87

Perplexity MCP Server

by wynandw87

Perplexity MCP Server

MCP server that brings Perplexity to Claude Code — AI-powered web search, deep research, reasoning, brainstorming, code review, explanations, and file analysis. All with real-time web grounding and citations. Supports Sonar, Sonar Pro, Sonar Reasoning Pro, and Sonar Deep Research models.

Quick Start

Step 1: Get Your API Key

  1. Go to Perplexity API Settings

  2. Create an account or sign in

  3. Generate an API key

  4. Copy the key (you'll need it in Step 3)

Step 2: Install Prerequisites

Step 3: Install the MCP Server

3.1 Clone the repository

git clone https://github.com/wynandw87/claude-code-perplexity-mcp.git
cd claude-code-perplexity-mcp

3.2 Install dependencies

macOS / Linux / Windows:

npm install

Note: Dependencies are installed and the server is built automatically in one step.

3.3 Register with Claude Code

Choose your install scope:

Scope

Flag

Who can use it

User (recommended)

-s user

You, in any project

Project

-s project

Anyone who clones this repo

Local

-s local

Only in current directory

Replace YOUR_API_KEY with your actual Perplexity API key, and use the full path to dist/index.js.

Tip: To get the full path, run this from the cloned directory:

  • macOS/Linux: echo "$(pwd)/dist/index.js"

  • Windows: echo %cd%\dist\index.js

macOS / Linux:

claude mcp add -s user Perplexity -e PERPLEXITY_API_KEY=YOUR_API_KEY -- node /full/path/to/dist/index.js

Windows (CMD):

claude mcp add -s user Perplexity -e "PERPLEXITY_API_KEY=YOUR_API_KEY" -- node "C:\full\path\to\dist\index.js"

Windows (PowerShell):

claude mcp add -s user Perplexity -e "PERPLEXITY_API_KEY=YOUR_API_KEY" '--' node "C:\full\path\to\dist\index.js"

Alternative: Use Setup Scripts

The setup scripts handle dependency installation, building, and registration automatically.

macOS / Linux:

chmod +x setup.sh
./setup.sh YOUR_API_KEY

Windows (PowerShell):

.\setup.ps1 -ApiKey YOUR_API_KEY

Or use the npm helper (if API key is set in environment):

export PERPLEXITY_API_KEY=YOUR_API_KEY
npm run install:claude

Step 4: Restart Claude Code

Close and reopen Claude Code for the changes to take effect.

Step 5: Verify Installation

claude mcp list

You should see Perplexity listed with a Connected status.


Related MCP server: Perplexity MCP Server

Features

Search & Research

  • Web Search (search_web) - AI-powered web search with domain filtering, recency filtering, and detailed citations

  • Deep Research (deep_research) - Exhaustive multi-step research using sonar-deep-research

  • Reasoning + Search (search_with_reasoning) - Step-by-step reasoning combined with live web search

  • Raw Search (search) - Ranked search results with titles, URLs, and snippets

Text & Analysis

  • General Queries (ask) - Web-grounded Q&A with automatic citations

  • Brainstorming (brainstorm) - Creative ideation informed by real-time web data

  • Code Review (code_review) - Code analysis with web-grounded best practices

  • Explanations (explain) - Clear concept explanations with web-grounded accuracy

Files

  • File Upload (upload_file) - Upload documents and images for analysis (text files, images)


Usage

Once installed, use trigger phrases to invoke Perplexity:

Trigger

Tool

Example

use perplexity, ask perplexity

Ask

"ask perplexity about quantum computing"

perplexity search, perplexity web search

Web Search

"perplexity search: latest React 19 features"

perplexity research, perplexity deep research

Deep Research

"perplexity deep research on Rust vs Go for microservices"

perplexity reason, perplexity think

Reasoning

"perplexity reason about RSC vs traditional SSR performance"

perplexity raw search, perplexity search results

Raw Search

"perplexity raw search for MCP server TypeScript examples"

perplexity review, have perplexity review

Code Review

"perplexity review this function for security"

perplexity brainstorm, perplexity ideas

Brainstorm

"perplexity brainstorm ideas for authentication"

perplexity explain

Explain

"perplexity explain how WebSockets work"

perplexity upload file

Upload File

"perplexity upload ./report.py and review it"

Or ask naturally:

  • "Ask Perplexity what the latest best practices are for Next.js"

  • "Have Perplexity review this code for security issues"

  • "Brainstorm with Perplexity about scaling strategies"

  • "Perplexity search the web for the latest news on AI"

  • "Do a deep research with Perplexity on the state of WebAssembly"

  • "Perplexity reason through the tradeoffs of microservices vs monolith"

  • "Upload this CSV to Perplexity and ask it to summarize the data"


Tool Reference

ask

Query Perplexity with web-grounded answers and citations.

Parameters:

  • prompt (string, required) - The question or instruction

  • model (string, optional) - Model identifier (defaults to sonar-pro)

  • search (boolean, optional) - Enable web search grounding (default: true)

search_web

Search the web with domain and recency filtering. Best-in-class AI search.

Parameters:

  • query (string, required) - The search query or question

  • allowed_domains (string[], optional) - Only include results from these domains (max 5)

  • excluded_domains (string[], optional) - Exclude these domains from search (max 5)

  • recency (string, optional) - "hour", "day", "week", "month"

  • detail (string, optional) - Search depth: "low", "medium", "high"

deep_research

Conduct exhaustive, multi-step research on a topic. May take 30-60+ seconds.

Parameters:

  • query (string, required) - The research question or topic to investigate

search_with_reasoning

Step-by-step reasoning combined with live web search.

Parameters:

  • prompt (string, required) - The question or problem requiring deep reasoning

  • allowed_domains (string[], optional) - Only include results from these domains (max 5)

  • recency (string, optional) - "hour", "day", "week", "month"

Get raw ranked search results without AI synthesis.

Parameters:

  • query (string, required) - The search query

  • max_results (integer, optional) - Number of results (1-50, default: 10)

  • domain_filter (string[], optional) - Filter to these domains only (max 5)

  • recency (string, optional) - "hour", "day", "week", "month"

code_review

Code review with web-grounded current best practices.

Parameters:

  • code (string, required) - The code to review

  • focus (string, optional) - Specific focus area (e.g., "security", "performance")

brainstorm

Brainstorming informed by real-time web data and current trends.

Parameters:

  • topic (string, required) - The subject to brainstorm about

  • context (string, optional) - Additional context

explain

Clear explanations with web-grounded accuracy.

Parameters:

  • concept (string, required) - What to explain

upload_file

Upload a document or image for analysis.

Parameters:

  • file_path (string, required) - Absolute path to the file to upload

  • query (string, optional) - Question to ask about the file immediately after upload

  • model (string, optional) - Model identifier (defaults to sonar-pro)

Supports text files (.txt, .md, .py, .js, .ts, .csv, .json, etc.) and images (.png, .jpg, .gif, .webp).


Supported Models

Model

Best For

sonar

Quick queries, summaries — fast and cost-effective

sonar-pro

Default — complex queries, citations, multi-step reasoning

sonar-reasoning-pro

Multi-step reasoning with live web search

sonar-deep-research

Exhaustive research, comprehensive reports

All models have 128K context windows and real-time web grounding.


Configuration

Environment Variables

Variable

Required

Default

Description

PERPLEXITY_API_KEY

Yes

Perplexity API key

PERPLEXITY_DEFAULT_MODEL

No

sonar-pro

Default model for text tools

PERPLEXITY_TIMEOUT

No

60000

API timeout in ms


How It Works

This MCP server uses the Perplexity REST API directly (Chat Completions and Search endpoints) with native fetch. No SDK dependency — just @modelcontextprotocol/sdk and zod. It connects to Claude Code via stdio transport.

Tools provided:

Tool

API

Default Model

ask

Chat Completions

Configurable (sonar-pro)

search_web

Chat Completions + domain/recency filters

sonar-pro

deep_research

Chat Completions

sonar-deep-research

search_with_reasoning

Chat Completions

sonar-reasoning-pro

search

Search API

code_review

Chat Completions

sonar-pro

brainstorm

Chat Completions

sonar-pro

explain

Chat Completions

sonar

upload_file

Chat Completions (inline/vision)

Configurable (sonar-pro)


Troubleshooting

Fix API Key

If you entered the wrong API key, remove and reinstall:

claude mcp remove Perplexity

Then reinstall using the command from Step 3.3 above (use the same scope you originally installed with).

MCP Server Not Showing Up

Check if the server is installed:

claude mcp list

If not listed, follow Step 3 to install it.

Server Won't Start

  1. Verify your API key is valid at Perplexity API Settings

  2. Check Node.js version (needs 18+):

    node --version
  3. Ensure the server was built — if dist/index.js is missing, run npm install again

Connection Errors

  1. Check that dist/index.js exists — if not, run npm install

  2. Verify the path is absolute in your claude mcp add command

  3. Restart Claude Code after any configuration changes

Timeout Errors

  • Deep research uses 5x base timeout — it's expected to take longer

  • Reasoning and search tools use 3x base timeout

  • Increase PERPLEXITY_TIMEOUT environment variable for slow connections

Deep Research Takes Too Long

sonar-deep-research can take 30-60+ seconds for comprehensive research. This is normal — it's doing multi-step investigation across many sources.

View Current Configuration

claude mcp list

Contributing

Pull requests welcome! Please keep it simple and beginner-friendly.

License

MIT


Made for the Claude Code community

Available Tools

9 tools
askA

Ask Perplexity a question with real-time web-grounded answers and citations. Trigger: 'use perplexity', 'ask perplexity', or 'perplexity:' followed by a question.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesThe question or prompt for Perplexity
modelNoModel identifier (optional, defaults to sonar-pro). Models: sonar, sonar-pro.
searchNoEnable web search grounding (default: true)

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It mentions 'real-time web-grounded answers and citations', which gives some behavioral context, but it lacks details on authentication, rate limits, or output format (e.g., how citations are presented). This is adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, consisting of two clear sentences with no extraneous information. The key purpose and triggers are front-loaded, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has three parameters (one required), no output schema, and no nested objects, the description covers the essential purpose and triggers. However, it could be slightly more complete by describing the return format (e.g., structure of citations) since there is no output schema to rely on.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers all three parameters with descriptions, achieving 100% schema coverage. The description adds trigger phrases and mentions 'web-grounded', which aligns with the 'search' parameter, but does not provide significant additional meaning beyond the schema. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'ask' and the resource 'Perplexity' with real-time web-grounded answers and citations. It also provides trigger phrases. However, it does not explicitly differentiate from sibling tools like 'search' or 'deep_research', making it less than perfect.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides trigger phrases for when to use this tool, such as 'use perplexity' or 'ask perplexity'. However, it does not mention when not to use it or suggest alternatives, leaving the usage context implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

brainstormB

Brainstorm solutions with Perplexity, informed by real-time web data and current trends. Trigger: 'perplexity brainstorm', 'brainstorm with perplexity', or 'perplexity ideas'.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYesThe topic to brainstorm about
contextNoAdditional context

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description mentions that the tool is 'informed by real-time web data and current trends', indicating it uses web search. However, without annotations, it lacks disclosure about potential external service dependencies, rate limits, or the nature of the AI-generated responses, which is important for a brainstorming tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with only two sentences plus a list of trigger phrases, and the purpose is front-loaded. Every sentence adds value, making it efficient and easy to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (brainstorming with external web data), the description is too brief. It does not explain the expected output format, the role of Perplexity, or any limitations of the brainstorming process. The absence of annotations and output schema makes the description feel incomplete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear descriptions for 'topic' and 'context' including max lengths. The description does not add additional meaning beyond the schema, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is for brainstorming with Perplexity using real-time web data, providing a specific verb and resource. However, it does not explicitly differentiate from sibling tools like 'ask' or 'search', which could have overlapping use cases.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes trigger phrases that imply when to use the tool, but it does not provide explicit guidance on when not to use it or suggest alternative tools for other scenarios. The usage context is implied but not formally stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

code_reviewB

Have Perplexity review code with web-grounded best practices and current documentation. Trigger: 'perplexity review', 'perplexity code review', or 'have perplexity review'.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYesThe code to review
focusNoSpecific focus area (security, performance, etc.)general

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description bears full responsibility. It mentions 'web-grounded best practices and current documentation', hinting at online research, but does not disclose limitations, side effects, or processing details. For a read-only analysis tool, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, consisting of one sentence plus trigger phrases with no waste. It is front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of an output schema and only two parameters, the description still lacks mention of output format or behavior when 'focus' is specified. It does not fully equip an agent to handle the tool without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with both parameters described in the schema. The tool's description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to review code with web-grounded best practices and current documentation. It specifies the resource (Perplexity) and action (review code), and distinguishes from sibling tools like 'explain' or 'ask' by focusing on code review with web grounding.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides trigger phrases for invocation, suggesting when to use the tool, but does not explicitly state when not to use it or compare it to alternatives like 'explain' or 'search'. The guidance is implied but lacks depth.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

deep_researchA

Conduct deep, exhaustive research on a topic using Perplexity's sonar-deep-research model. Best for comprehensive analysis, literature reviews, and multi-source synthesis. May take longer. Trigger: 'perplexity research', 'perplexity deep research', or 'deep research with perplexity'.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe research question or topic to investigate deeply

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry behavioral disclosure. It notes 'May take longer,' which is useful, but does not mention other traits like read-only nature, response format, or potential limits. Adequate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is two sentences plus trigger phrase, immediately stating the core function. Every sentence adds value with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one parameter, no output schema, and no annotations, the description covers purpose, model, use cases, triggers, and latency. Could mention result format but not essential. Reasonably complete for the tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear parameter description for 'query.' Description adds no extra parameter details; it repeats the tool's purpose. With full schema coverage, baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool conducts 'deep, exhaustive research' using a specific model, and specifies use cases like 'comprehensive analysis, literature reviews, and multi-source synthesis.' It distinguishes from sibling tools by emphasizing depth and exhaustive nature.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Description provides explicit usage context: 'Best for comprehensive analysis...' and trigger phrases, but does not explicitly state when not to use or mention alternatives. Slightly incomplete but sufficient for basic guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

explainB

Clear explanations of concepts, code, or technical topics using Perplexity with web-grounded accuracy. Trigger: 'perplexity explain'.

ParametersJSON Schema
NameRequiredDescriptionDefault
conceptYesWhat to explain (code, concept, or technical topic)

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions using Perplexity with web-grounded accuracy, which adds context, but does not disclose behavioral details like auth needs, rate limits, or side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise: two sentences, front-loaded with purpose and method, zero fluff. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema or annotations, the description is adequate but lacking detail on return format, depth of explanations, or examples. It covers the core but misses some completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema coverage, the schema already describes the 'concept' parameter. The description's mention of 'concepts, code, or technical topics' aligns with the schema but adds no new meaning beyond it, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: providing clear explanations of concepts, code, or technical topics using Perplexity with web-grounded accuracy. The verb 'explain' and resource types are specified, distinguishing it from siblings like 'ask' or 'deep_research', though not explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description includes a trigger phrase ('perplexity explain') which implies when to use it, but lacks explicit guidance on when not to use it or specific alternatives among siblings like 'search' or 'ask'.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_webB

Search the web using Perplexity with real-time results, domain filtering, recency filtering, and detailed citations. Best-in-class AI search. Trigger: 'perplexity search', 'perplexity web search', or 'search with perplexity'.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe search query or question to research on the web
allowed_domainsNoOnly include search results from these domains (max 5)
excluded_domainsNoExclude these domains from search (max 5). Cannot be combined with allowed_domains.
recencyNoFilter results by recency: "hour", "day", "week", "month"
detailNoSearch context size: "low" (faster), "medium" (balanced), "high" (most thorough)

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It mentions features but does not disclose behavioral traits like read-only nature, rate limits, or authentication needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, mostly efficient. The second sentence ('Best-in-class AI search') is slightly promotional but not harmful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers main features but lacks information on return format, limitations, or behavioral context. Adequate but with gaps given the number of parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description mentions features like domain filtering and recency filtering but does not add meaningful details beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches the web using Perplexity with specific features like real-time results and filtering. However, it does not differentiate from sibling tools 'search' and 'search_with_reasoning'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit trigger phrases for when to use this tool, but lacks guidance on when not to use it or alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_with_reasoningA

Search the web with step-by-step reasoning using Perplexity's sonar-reasoning-pro model. Best for complex questions requiring multi-step analysis with live web data. Trigger: 'perplexity reason', 'perplexity think', or 'reason with perplexity'.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesThe question or problem requiring deep reasoning with web search
allowed_domainsNoOnly include search results from these domains (max 5)
recencyNoFilter results by recency: "hour", "day", "week", "month"

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but only mentions the model and step-by-step reasoning. It lacks disclosure about output format, citations, rate limits, or any potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences, front-loaded with purpose, each earning its place. No unnecessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description should explain what the tool returns (e.g., reasoning steps, citations). It does not, leaving a significant gap for an agent to understand expected output.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are well-documented. The description adds model context to the prompt parameter but provides minimal extra meaning beyond the schema's own descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches the web with step-by-step reasoning using a specific model, and distinguishes from siblings by specifying it's for complex multi-step analysis.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description indicates it's best for complex questions requiring multi-step analysis, implying when to use it. However, it does not explicitly state when not to use it or mention alternative tools for simpler queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upload_fileA

Upload a document for Perplexity to analyze. Supports text files (txt, md, py, js, ts, csv, json, etc.) and images (png, jpg, gif, webp). Trigger: 'perplexity upload file', 'upload to perplexity'.

ParametersJSON Schema
NameRequiredDescriptionDefault
file_pathYesAbsolute path to the file to upload
queryNoOptional question to ask about the file immediately after upload
modelNoModel identifier (optional, defaults to sonar-pro)

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, and description only says 'upload' without disclosing behavioral traits such as whether it overwrites existing files, permissions required, or whether it is synchronous. Lacks key transparency for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is brief with two sentences plus a trigger line. No superfluous words; however, it could be more structured (e.g., separate sections).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, and description does not explain what the tool returns after upload (e.g., file ID, analysis result) or if it is asynchronous. Lacks information on post-upload behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers all 3 parameters with descriptions. The description adds value by listing supported file types, which is not in the schema. Baseline 3 increased to 4 due to this extra context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states 'Upload a document for Perplexity to analyze' and lists supported file types. Tool name and description align, and it is distinct from sibling tools (e.g., ask, search) which are text-based.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides trigger phrases like 'perplexity upload file' but does not explicitly state when to use this tool versus alternatives or mention when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A3.8/5.0
Disambiguation4/5

Most tools have distinct purposes, but ask and search_web both provide Q&A with citations, and search_with_reasoning adds step-by-step reasoning, causing minor potential confusion. However, descriptions and triggers help clarify differences.

Naming Consistency5/5

All tool names follow a consistent lowercase underscore-separated verb or verb_noun pattern (e.g., ask, brainstorm, search_web), making them predictable and easy to reason about.

Tool Count5/5

With 9 tools, the server covers a broad range of interactions with Perplexity without being overwhelming. Each tool serves a clear purpose, and the count feels well-scoped for an AI assistant.

Completeness4/5

The set covers core functionalities: Q&A, brainstorming, code review, deep research, explanations, raw search, web search, reasoning search, and file upload. Minor gaps like saving results or comparing sources are not essential for the domain.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    A powerful research assistant that integrates with Cline and Claude Desktop to leverage Perplexity AI for intelligent search, documentation retrieval, API discovery, and code modernization assistance while coding.
    4
    5
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    Integrates Perplexity AI's search-enhanced language models with Claude Desktop, providing three tools with different complexity levels for quick fact-checking, technical analysis, and deep research.
    3
    2
  • A
    license
    Not graded
    quality
    D
    maintenance
    Integrates the Sonar API to provide Claude with real-time web-wide research capabilities. Enables conversational web searches through Perplexity's AI-powered search engine for up-to-date information retrieval.
    1,826
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    Connects Claude to Perplexity Comet's agentic browser for autonomous web browsing, deep research, and real-time task monitoring. Enables Claude to delegate web research tasks and receive comprehensive results through multiple browsing modes.
    6
    90
    167
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wynandw87/claude-code-perplexity-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server