Perplexity AI
An MCP server to interact with Perplexity AI's language models for search and conversational AI.
Perplexity MCP Server
Overview
The Perplexity MCP Server is a Node.js implementation of Anthropic's Model Context Protocol (MCP) that enables Claude to interact with Perplexity's language models. This server provides a secure bridge between Claude and Perplexity AI's capabilities, allowing for enhanced AI interactions through tool use.
Available Tools
The server currently implements two main tools:
1. perplexity_chat
Advanced chat completion tool with full message history support.
{
"name": "perplexity_chat",
"description": "Generate a chat completion using Perplexity AI",
"parameters": {
"model": "string (optional) - One of: llama-3.1-sonar-small-128k-online, llama-3.1-sonar-large-128k-online, llama-3.1-sonar-huge-128k-online",
"messages": "array of {role, content} objects - The conversation history",
"temperature": "number (optional) - Sampling temperature between 0-2"
}
}
2. perplexity_ask
Simplified single-query interface for quick questions.
{
"name": "perplexity_ask",
"description": "Send a simple query to Perplexity AI",
"parameters": {
"query": "string - The question or prompt to send",
"model": "string (optional) - One of: llama-3.1-sonar-small-128k-online, llama-3.1-sonar-large-128k-online, llama-3.1-sonar-huge-128k-online"
}
}
Installation
-
Clone the repository:
git clone https://github.com/yourusername/perplexity-mcp-server.git cd perplexity-mcp-server -
Install dependencies:
npm install -
Create
.envfile:PERPLEXITY_API_KEY=your-api-key-here -
Build the project:
npm run build
Claude Desktop Configuration
To add this server to Claude Desktop, update your claude_desktop_config.json:
{
"mcpServers": {
//more servers...
"perplexity": {
"command": "node",
"args": ["path\\to\\perplexity-mcp-server\\dist\\index.js"],
"env": {
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY"
}
}
//more servers...
}
}
The configuration file is typically located at:
- Windows:
%APPDATA%/Claude/config/claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/config/claude_desktop_config.json - Linux:
~/.config/Claude/config/claude_desktop_config.json
Development
Start the development server with automatic recompilation:
npm run dev
The server uses TypeScript and implements the MCP protocol using the @modelcontextprotocol/sdk package.
Architecture
Core Components
-
PerplexityServer Class
- Implements MCP server protocol
- Handles tool registration and execution
- Manages error handling and server lifecycle
-
Tools System
- Modular tool definitions
- Type-safe tool handlers
- Structured input validation
Technical Details
- Built with TypeScript for type safety
- Uses
@modelcontextprotocol/sdkfor MCP implementation - Communicates via stdio transport
- Environment-based configuration
Error Handling
The server implements comprehensive error handling:
- API error reporting
- Invalid tool requests handling
- Connection error management
- Process signal handling
Dependencies
@modelcontextprotocol/sdk: ^1.0.3dotenv: ^16.4.7isomorphic-fetch: ^3.0.0
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Security
- API keys are managed through environment variables
- Input validation for all tool parameters
- Error messages are sanitized before output
- Process isolation through MCP protocol
License
This project is licensed under the ISC License.
Troubleshooting
Common issues and solutions:
-
Server Not Found
- Verify the path in
claude_desktop_config.jsonis correct - Ensure the server is built (
npm run build) - Check if Node.js is in your PATH
- Verify the path in
-
Authentication Errors
- Verify your Perplexity API key in .env
- Check if the API key has the required permissions
-
Tool Execution Errors
- Verify the tool parameters match the schema
- Check network connectivity
- Review server logs for detailed error messages
Related Servers
newsmcp
Real-time world news for AI agents — events clustered from hundreds of sources, classified by 12 topics and 30+ regions, ranked by importance. Free, no API key.
Baidu Search
Provides web search capabilities using the Baidu Search API, with features for content fetching and parsing.
Polymarket Trading MCP
Trading intelligence tools for Polymarket prediction markets: Slippage estimation, liquidity scanning, arbitrage detection, price feeds, wallet intelligence, and portfolio risk.
arXiv Research Assistant
Interact with the arXiv.org paper database. Supports keyword search, paper lookups, author searches, and trend analysis.
LLM Jukebox
Enables LLMs to search, download, and extract information from YouTube music videos.
Ticketmaster
Discover events, venues, and attractions using the Ticketmaster Discovery API.
Marginalia Search
A search engine for non-commercial content and hidden gems of the internet.
企业风险分析洞察服务
Provides comprehensive enterprise risk analysis, including violation records, mortgage information, business anomalies, and judicial cases.
AgentBridge
A specialized gateway for AI agents to fetch and parse Chinese web content into clean Markdown. Pay-per-fetch via x402.
Open Brewery DB
Search and retrieve brewery data worldwide using the Open Brewery DB API.