Perplexity Search MCP Server
A Go implementation of a Perplexity Search MCP server that allows large language models (LLMs) to access the Perplexity search API through the Model Context Protocol (MCP).
Features
- perplexity_search: Perform web searches and return results, including citations
- Parameters:
query
(string, required): The search querysearch_recency_filter
(string, optional): Filter results by time (month
,week
,day
,hour
)max_tokens
(integer, optional): Maximum number of tokens to returntemperature
(number, optional, default: 0.2): Controls randomness in responsetop_p
(number, optional, default: 0.9): Nucleus sampling thresholdsearch_domain_filter
(array, optional): List of domains to limit search resultsreturn_images
(boolean, optional): Include image links in resultsreturn_related_questions
(boolean, optional): Include related questionstop_k
(number, optional, default: 0): Number of tokens for top-k filteringstream
(boolean, optional): Stream response incrementallypresence_penalty
(number, optional, default: 0): Adjust likelihood of new topicsfrequency_penalty
(number, optional, default: 1): Reduce repetitionweb_search_options
(object, optional): Configuration options for web search
- Parameters:
Setup & Usage
Installing via Smithery
To install Perplexity Search Golang for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @chenxilol/perplexity-mcp-go --client claude
Prerequisites
- Go 1.23 or higher
- Perplexity API key
Installation
- Clone the repository:
git clone https://github.com/chenxilol/perplexity-mcp-go.git
cd perplexity-mcp-go
- Build the application:
go build -o perplexity-search-mcp
Running Locally
- Set your Perplexity API key:
export PERPLEXITY_API_KEY="your-api-key-here"
- Run the server:
./perplexity-search-mcp
Integrating with Claude
Copy the provided
claude_desktop_config.json
to your Claude configuration directory:- Windows:
%USERPROFILE%AppDataRoamingClaudeclaude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- Windows:
Edit the configuration file to include your API key:
{
"mcpServers": {
"perplexity-search": {
"command": "/path/to/perplexity-search-mcp",
"env": {
"PERPLEXITY_API_KEY": "your-api-key-here"
}
}
}
}
Docker Support
- Build the Docker image:
docker build -t perplexity-search-mcp:latest .
- Run the container:
docker run -i --rm -e PERPLEXITY_API_KEY=your-api-key-here perplexity-search-mcp:latest
Example Usage
Once configured, Claude can use the perplexity_search tool via MCP to perform real-time web searches.
Example search with parameters:
{
"query": "latest AI research developments",
"search_recency_filter": "week",
"temperature": 0.5,
"return_related_questions": true,
"web_search_options": {
"search_context_size": "high"
}
}
Troubleshooting
If you encounter issues:
- Verify your API key is correctly set
- Check network connectivity
- Examine stderr logs for error messages
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Model Context Protocol for the MCP specification
- MCP-Go for the Go MCP implementation
- Perplexity for their search API
Perplexity Search Golang
Project Details
- chenxilol/perplexity-mcp-go
- MIT License
- Last Updated: 3/29/2025
Recomended MCP Servers
Twitter MCP Tool
Luma AI Video + Audio + Image Generation and RunwayML Video Generation from Image and Text
A Model Context Protocol (MCP) server for interacting with Shortcut (formerly Clubhouse)
IoT Model Context Protocol Server Repository
MCP server for fetching web page content with recursive exploration capability
This read-only MCP Server allows you to connect to SharePoint Excel Services data from Claude Desktop through CData...
Chat with OpenAI models from Claude Desktop