LP

laodev1/perplexity-mcp-server

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

6 stars 3 forks 质量 54 趋势 14

A server that implements the MCP protocol to bring perplexity API into context.

概览

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. The server currently implements two main tools: Advanced chat completion tool with full message history support. Simplified single-query interface for quick questions. To add this server to Claude Desktop, update your claude_desktop_config.json: 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 Start the development server with automatic recompilation:

README

以下为原文 README 节选,完整内容请查看原文。

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

  1. Clone the repository:

    git clone https://github.com/yourusername/perplexity-mcp-server.git
    cd perplexity-mcp-server
    
  2. Install dependencies:

    npm install
    
  3. Create .env file:

    PERPLEXITY_API_KEY=your-api-key-here
    
  4. 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

  1. PerplexityServer Class

    • Implements MCP server protocol
    • Handles tool registration and execution
    • Manages error handling and server lifecycle
  2. Tools System

    • Modular tool definitions
    • Type-safe tool handlers
    • Structured input validation

Technical Details

  • Built with TypeScript for type safety
在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "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... } }