Perplexity MCP Server
A custom Model Context Protocol (MCP) implementation that adds Perplexity AI as a tool provider for Claude Desktop.
Features
- Seamless integration with Claude Desktop through MCP
- Access to Perplexity's powerful AI models
- Support for both single questions and multi-turn conversations
- Customizable model selection
Installation
Prerequisites
Option 1: Clone and Run Locally
-
Clone this repository:
git clone https://github.com/Family-IT-Guy/perplexity-mcp.git
cd perplexity-mcp
-
Install dependencies:
-
Create a .env file with your API key:
PERPLEXITY_API_KEY=your_api_key_here
-
Test the server:
Option 2: Install Globally
-
Clone and navigate to the repository as above
-
Install globally:
-
Now you can run the server from anywhere:
Claude Desktop Configuration
Add this configuration to your claude_desktop_config.json file:
Standard Configuration
{
"mcpServers": {
"perplexity": {
"command": "node",
"args": [
"/absolute/path/to/perplexity-mcp/server.js"
],
"env": {
"PERPLEXITY_API_KEY": "your_perplexity_api_key"
}
}
}
}
Global Installation Configuration
{
"mcpServers": {
"perplexity": {
"command": "npx",
"args": [
"perplexity-mcp"
],
"env": {
"PERPLEXITY_API_KEY": "your_perplexity_api_key"
}
}
}
}
NVM Users
If you're using Node Version Manager (NVM), you need absolute paths:
{
"mcpServers": {
"perplexity": {
"command": "/Users/username/.nvm/versions/node/v16.x.x/bin/node",
"args": [
"/Users/username/path/to/perplexity-mcp/server.js"
],
"env": {
"PERPLEXITY_API_KEY": "your_perplexity_api_key"
}
}
}
}
Available Tools
Once configured, Claude will have access to these tools:
-
perplexity_ask - Send a single question to Perplexity
- Parameters:
query (required): The question to ask
model (optional): Model name (default: llama-3.1-sonar-small-128k-online)
-
perplexity_chat - Have a multi-turn conversation
- Parameters:
messages (required): Array of conversation messages
model (optional): Model name (default: mixtral-8x7b-instruct)
Troubleshooting
- Check logs:
cat ~/.claude/logs/perplexity.log
- Ensure your API key is valid
- Verify your claude_desktop_config.json format
- Enable verbose logging by adding
"DEBUG": "1" to the env section
How It Works
This implementation uses the Model Context Protocol (MCP) created by Anthropic to extend Claude Desktop's capabilities. It:
- Creates an MCP server that communicates with Claude via stdio
- Registers Perplexity tools with Claude
- Proxies requests from Claude to the Perplexity API
- Returns responses back to Claude for display
License
This project is licensed under the ISC License - see the LICENSE file for details.