perplexity-mcp-go
If you are the rightful owner of perplexity-mcp-go and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
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).
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%\AppData\Roaming\Claude\claude_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 file for details.
Acknowledgments
- Model Context Protocol for the MCP specification
- MCP-Go for the Go MCP implementation
- Perplexity for their search API