Perplexity Sonar MCP Server
by felores
An MCP server implementation that brings the power of Perplexity's Sonar models to Claude Desktop and other MCP clients. It provides access to Perplexity's advanced AI models with web search capabilities, allowing Claude to perform real-time web searches and provide up-to-date information during conversations.
Last updated: N/A
Perplexity Sonar MCP Server
An MCP server implementation that brings the power of Perplexity's Sonar models to Claude Desktop and other MCP clients. Unlike traditional MCP servers, this implementation provides access to Perplexity's advanced AI models with web search capabilities, allowing Claude to perform real-time web searches and provide up-to-date information during conversations.
Why Perplexity Sonar MCP?
- Real-time Web Search: Access current information from the web during conversations
- Multiple Models: Choose from various Sonar models to fit your needs:
sonar
: Balanced model for general usesonar-pro
: Enhanced capabilities for complex taskssonar-reasoning
: Specialized in logical reasoning and analysissonar-deep-research
: In-depth research with comprehensive citations
- Rich Parameters: Fine-tune your queries with extensive parameters:
- Control search domains and recency
- Adjust response format (markdown/JSON)
- Manage temperature and token generation
- Get related questions and images
- Seamless Integration: Works natively with Claude Desktop and other MCP clients
Requirements
- Node.js 18.0.0 or higher
- A Perplexity API key (get one at https://www.perplexity.ai/account/api)
- Claude Desktop (for desktop integration)
To verify your Node.js installation:
node --version # Should be 18.0.0 or higher
If Node.js is not installed or needs updating:
- Download from nodejs.org
- Follow the installation instructions for your operating system
- Restart your terminal after installation
Usage
With Claude Desktop
-
Edit your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the following configuration:
{ "mcpServers": { "perplexity": { "command": "npx", "args": [ "-y", "@felores/perplexity-sonar-mcp" ], "env": { "PERPLEXITY_API_KEY": "your_api_key_here" } } } }
-
Restart Claude Desktop
Standalone Mode
You can also run the server in standalone mode with HTTP/SSE support:
PERPLEXITY_API_KEY=your_api_key_here perplexity-sonar-mcp
This will start the server on port 3000 by default. You can specify a different port:
PERPLEXITY_API_KEY=your_api_key_here PORT=8080 perplexity-sonar-mcp
API Reference
The server exposes the following MCP tool:
perplexity-chat
Parameters:
model
(optional): Model to use (default: "sonar")- Options:
sonar
: Balanced model for general usesonar-pro
: Enhanced capabilities for complex taskssonar-reasoning
: Specialized in logical reasoningsonar-deep-research
: In-depth research with citations
- Options:
messages
: Array of message objects with:role
: "system" | "user" | "assistant"content
: string
temperature
(optional): Controls randomness (0-2)- Lower values (e.g., 0.3) for more focused responses
- Higher values (e.g., 0.8) for more creative responses
max_tokens
(optional): Maximum tokens to generatetop_p
(optional): Controls diversity via nucleus sampling (0-1)search_domain_filter
(optional): Array of domains to limit citations to- Example: ["wikipedia.org", "github.com"]
return_images
(optional): Whether to return images from search resultsreturn_related_questions
(optional): Whether to return related questionssearch_recency_filter
(optional): Filter search results by recency- Options: "month", "week", "day", "hour"
top_k
(optional): Maximum number of search results to considerstream
(optional): Whether to stream the responsepresence_penalty
(optional): Penalizes token presencefrequency_penalty
(optional): Penalizes token frequencyoutput_format
(optional): Response format ("json" or "markdown", default: "markdown")
Example Queries
Here are some examples of what you can ask Claude using this server:
-
Basic search with default model: "What are the latest developments in quantum computing?"
-
Deep research with citations: "Using sonar-deep-research, explain the current state of fusion energy."
-
Domain-specific search: "Search only on arxiv.org and nature.com for recent papers about large language models."
-
Recent news search: "What happened in AI research this week? Use search_recency_filter: 'week'"
Development
-
Clone the repository:
git clone https://github.com/felores/perplexity-sonar-mcp.git cd perplexity-sonar-mcp
-
Install dependencies:
npm install
-
Build the project:
npm run build
-
Run in development mode:
npm run dev
Troubleshooting
If you encounter issues:
- Verify your API key is correct
- Check Node.js version compatibility
- Look for errors in Claude Desktop logs:
- macOS:
~/Library/Logs/Claude/mcp.log
- Windows:
%APPDATA%\Claude\logs\mcp.log
- macOS:
- Try running in standalone mode to isolate issues
License
MIT