Perplexity Advanced MCP
Perplexity Advanced MCP
Überblick
Perplexity Advanced MCP ist ein erweitertes Integrationspaket, das die OpenRouter- und Perplexity -APIs nutzt, um erweiterte Abfrageverarbeitungsfunktionen bereitzustellen. Mit einer intuitiven Befehlszeilenschnittstelle und einem robusten API-Client ermöglicht dieses Paket die nahtlose Interaktion mit KI-Modellen für einfache und komplexe Abfragen.
Related MCP server: Perplexity MCP Server
Vergleich mit Perplexity-MCP
Während perplexity-mcp grundlegende Websuchfunktionen mithilfe der API von Perplexity AI bereitstellt, bietet Perplexity Advanced MCP mehrere zusätzliche Funktionen:
Multi-Vendor-Support: Unterstützt sowohl Perplexity- als auch OpenRouter -APIs und bietet Ihnen Flexibilität bei der Wahl Ihres Anbieters
Abfragetypoptimierung: Unterscheidet zwischen einfachen und komplexen Abfragen und optimiert so Kosten und Leistung
Unterstützung von Dateianhängen: Ermöglicht das Einbeziehen von Dateiinhalten als Kontext in Ihre Abfragen und ermöglicht so präzisere und kontextbezogenere Antworten
Verbesserte Wiederholungslogik: Implementiert robuste Wiederholungsmechanismen für verbesserte Zuverlässigkeit
Insgesamt ist dies das am besten geeignete MCP für die Handhabung von Codebasen bei Integration mit Editoren wie Cline oder Cursor .
Merkmale
Einheitlicher API-Client: Unterstützt sowohl OpenRouter- als auch Perplexity -APIs mit konfigurierbaren Modellen zur Verarbeitung einfacher und komplexer Abfragen.
Befehlszeilenschnittstelle (CLI): Verwalten Sie die API-Schlüsselkonfiguration und führen Sie den MCP-Server mit Typer aus.
Erweiterte Abfrageverarbeitung: Enthält die Verarbeitung von Dateianhängen, sodass Sie Kontextdaten in Ihre Abfragen einbeziehen können.
Robuster Wiederholungsmechanismus: Nutzt Tenacity für die Wiederholungslogik, um eine konsistente und zuverlässige API-Kommunikation sicherzustellen.
Anpassbare Protokollierung: Flexible Protokollierungskonfiguration für detailliertes Debuggen und Laufzeitüberwachung.
Optimale KI-Konfiguration
Für die beste Erfahrung mit KI-Assistenten (z. B. Cursor , Claude für Desktop ) empfehle ich, Ihren Projektanweisungen oder KI-Regeln die folgende Konfiguration hinzuzufügen:
<perplexity-advanced-mcp>
<description>
Perplexity is an LLM that can search the internet, gather information, and answer users' queries.
For example, let's suppose we want to find out the latest version of Python.
1. You would search on Google.
2. Then read the top two or three results directly to verify.
Perplexity does that work for you.
To answer a user's query, Perplexity searches, opens the top search results, finds information on those websites, and then provides the answer.
Perplexity can be used with two types of queries: simple and complex. Choosing the right query type to fulfill the user's request is most important.
</description>
<simple-query>
<description>
It's cheap and fast. However, it's not suitable for complex queries. On average, it's more than 10 times cheaper and 3 times faster than complex queries.
Use it for simple questions such as "What is the latest version of Python?"
</description>
<pricing>
$1/M input tokens
$1/M output tokens
</pricing>
</simple-query>
<complex-query>
<description>
It's slower and more expensive. Compared to simple queries, it's on average more than 10 times more expensive and 3 times slower.
Use it for more complex requests like "Analyze the attached code to examine the current status of a specific library and create a migration plan."
</description>
<pricing>
$1/M input tokens
$5/M output tokens
</pricing>
</complex-query>
<instruction>
When reviewing the user's request, if you find anything unexpected, uncertain, or questionable, **and you think you can get answer from the internet**, do not hesitate to use the "ask_perplexity" tool to consult Perplexity. However, if the internet is not required to satisfy users' request, it's meaningless to ask to perplexity.
Since Perplexity is also an LLM, prompt engineering techniques are paramount.
Remember the basics of prompt engineering, such as providing clear instructions, sufficient context, and examples
Include as much context and relevant files as possible to smoothly fulfill the user's request. When adding files as attachments, make sure they are absolute paths.
</instruction>
</perplexity-advanced-mcp>Diese Konfiguration hilft KI-Assistenten dabei, besser zu verstehen, wann und wie die Perplexity-Suchfunktion verwendet werden soll, und optimiert so sowohl die Kosten als auch die Leistung.
Verwendung
Installation über Smithery
So installieren Sie Perplexity Advanced MCP für Claude Desktop automatisch über Smithery :
npx -y @smithery/cli install @code-yeongyu/perplexity-advanced-mcp --client claudeSchnellstart mit uvx
Der einfachste Weg, den MCP-Server auszuführen, ist die Verwendung von uvx :
uvx perplexity-advanced-mcp -o <openrouter_api_key> # or -p <perplexity_api_key>Sie können die API-Schlüssel auch mithilfe von Umgebungsvariablen konfigurieren:
export OPENROUTER_API_KEY="your_key_here"
# or
export PERPLEXITY_API_KEY="your_key_here"
uvx perplexity-advanced-mcpNotiz:
Die gleichzeitige Angabe von OpenRouter- und Perplexity-API-Schlüsseln führt zu einem Fehler
Wenn sowohl CLI-Argumente als auch Umgebungsvariablen angegeben werden, haben CLI-Argumente Vorrang
Die CLI ist mit Typer erstellt und gewährleistet eine benutzerfreundliche Befehlszeilenerfahrung.
MCP-Suchtool
Das Paket enthält ein MCP-Suchtool, das über die Funktion ask_perplexity integriert ist. Es unterstützt sowohl einfache als auch komplexe Abfragen und verarbeitet Dateianhänge, um zusätzlichen Kontext bereitzustellen.
Einfache Abfragen: Bietet schnelle, effiziente Antworten.
Komplexe Abfragen: Ermöglicht detailliertes Denken und unterstützt Dateianhänge im XML-Format.
Konfiguration
API-Schlüssel: Konfigurieren Sie entweder
OPENROUTER_API_KEYoderPERPLEXITY_API_KEYüber Befehlszeilenoptionen oder Umgebungsvariablen.Modellauswahl: Die Konfiguration (in
src/perplexity_advanced_mcp/config.py) ordnet Abfragetypen bestimmten Modellen zu:Einfache Abfragen:
perplexity/sonarKomplexe Abfragen:
perplexity/sonar-reasoning
Einfache Abfragen:
sonar-proKomplexe Abfragen:
sonar-reasoning-pro
Entwicklungshintergrund und -philosophie
Dieses Projekt entstand aus meiner persönlichen Neugier und Experimentierfreude. Dem aktuellen „Vibe-Coding“ -Trend folgend, wurden über 95 % des Codes mit Cline + Cursor IDE geschrieben. Man sagt ja: „Reden ist billig, zeig mir den Code!“ – und mit der Spracherkennungs-Magie von Wispr Flow musste ich einfach nur reden, und der Code erschien! Der Großteil der Entwicklung erfolgte durch meine Worte wie „Schreib mir den Code für xyz, behebe den Fehler hier xyz“ und das Drücken der Eingabetaste. Bemerkenswerterweise dauerte die Erstellung dieses voll funktionsfähigen Projekts weniger als ein paar Stunden.
Vom Projekt-Scaffolding bis zur Dateistruktur wurde alles über LLM geschrieben und überprüft. Sogar der GitHub Actions-Workflow für die PyPI-Veröffentlichung und der Release-Freigabeprozess wurden über Cursor abgewickelt. Als menschlicher Entwickler bestand meine Aufgabe darin:
Starten und Stoppen des MCP-Servers, um der KI die Durchführung ordnungsgemäßer Tests zu erleichtern
Kopieren und Bereitstellen von Fehlerprotokollen bei aufgetretenen Problemen
Suchen und Bereitstellen von Python MCP SDK -Dokumentation und Beispielen aus dem Internet
Anfordern von Änderungen für Code, der nicht korrekt erscheint
In der heutigen Welt, in der vieles automatisiert und ersetzt werden kann, hoffe ich, dass dieses MCP Entwicklern wie Ihnen, die es nutzen, dabei helfen kann, Mehrwerte zu entdecken, die über das bloße Schreiben von Code hinausgehen. Möge dieses Tool Sie dabei unterstützen, ein Entwickler der neuen Ära zu werden, der Entscheidungen und Überlegungen auf höherer Ebene treffen kann.
Entwicklung
So tragen Sie zu diesem Paket bei oder ändern es:
1. Klonen Sie das Repository:
gh repo clone code-yeongyu/perplexity-advanced-mcp2. Abhängigkeiten installieren:
uv sync3. Beitragen:
Beiträge sind willkommen! Bitte beachten Sie den bestehenden Codestil und die Commit-Richtlinien.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
Available Tools
1 toolask_perplexityA
Perplexity is fundamentally an LLM that can search the internet, gather information, and answer users' queries.
For example, let's suppose we want to find out the latest version of Python.
1. You would search on Google.
2. Then read the top two or three results directly to verify.
Perplexity does that work for you.
To answer a user's query, Perplexity searches, opens the top search results, finds information on those websites, and then provides the answer.
Perplexity can be used with two types of queries: simple and complex. Choosing the right query type to fulfill the user's request is most important.
SIMPLE Query:
- Cheap and fast (on average, 10x cheaper and 3x faster than complex queries).
- Suitable for straightforward questions such as "What is the latest version of Python?"
- Pricing: $1/M input tokens, $1/M output tokens.
COMPLEX Query:
- Slower and more expensive (on average, 10x more expensive and 3x slower).
- Suitable for tasks requiring multiple steps of reasoning or deep analysis, such as "Analyze the attached code to examine the current status of a specific library and create a migration plan."
- Pricing: $1/M input tokens, $5/M output tokens.
Instructions:
- When reviewing the user's request, if you find anything unexpected, uncertain, or questionable, do not hesitate to use the "ask_perplexity" tool to consult Perplexity.
- Since Perplexity is also an LLM, prompt engineering techniques are paramount.
- Remember the basics of prompt engineering, such as providing clear instructions, sufficient context, and examples.
- Include as much context and relevant files as possible to smoothly fulfill the user's request.
- IMPORTANT: When adding files as attachments, you MUST use absolute paths (e.g., '/absolute/path/to/file.py'). Relative paths will not work.
Note: All queries must be in English for optimal results.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The query to search for | |
| query_type | Yes | Type of query to determine model selection | |
| attachment_paths | Yes | An optional list of absolute file paths to attach as context for the search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It explains the search process (searches, opens top results, finds info, provides answer), pricing/speed trade-offs, and prompt engineering requirements. However, it does not explicitly state that the tool is read-only or idempotent, though implied.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is overly verbose, including examples and pricing details that could be streamlined. While front-loaded with purpose, it contains redundant elaboration (e.g., step-by-step hypothetical) that increases length without proportional benefit.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three required parameters and no output schema, the description is highly comprehensive. It covers all parameter semantics, usage guidelines, behavioral traits, and even prompt engineering tips, making it fully complete for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline 3. Description adds significant value: explains query_type enum choices with detailed use cases, and mandates absolute paths for attachment_paths. Also notes English-only for query, which is not in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states that Perplexity is an LLM that searches the internet to answer queries, with explicit examples (e.g., latest Python version) and differentiation between simple and complex queries. The verb 'ask' plus resource 'perplexity' is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit when-to-use guidance: use when uncertain or questionable, and instructions for choosing query type (simple for straightforward, complex for multi-step analysis). Also mandates English queries and absolute paths for attachments, leaving no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
ask_perplexity
TDQS
Scored across 1 tool
Only one tool exists, so there is no possibility of confusion with other tools. The tool's purpose is clearly defined.
With a single tool, naming consistency is trivially satisfied. The name 'ask_perplexity' follows a clear verb_noun pattern in snake_case.
A single tool is borderline for a server claiming to offer a 'toolkit'. However, the tool is versatile and handles both simple and complex queries, justifying its singular existence.
The domain is to answer user queries by searching the internet. The single tool covers all necessary functionality (simple and complex queries) without obvious gaps.
Maintenance
Related MCP Connectors
Real-time web search, reasoning, and research through Perplexity's API
Enable AI assistants to perform web searches using Perplexity's Sonar Pro.
Provides AI assistants with access to Seltz's powerful Web Search capabilities.
Web search, fetch, extract, and research for AI agents. Markdown output + AI-synthesized answers.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides AI-powered search, research, and reasoning capabilities through integration with Perplexity.ai, offering three specialized tools: general conversational AI, deep research with citations, and advanced reasoning.24 npm2MIT
- AlicenseAqualityDmaintenanceIntegrates Perplexity AI's chat capabilities with real-time web search, enabling users to ask questions and receive AI-powered answers with up-to-date information and citations from verified web sources.159 npm1Apache 2.0
- AlicenseAqualityDmaintenanceEnables advanced web search across multiple search engines (Brave, DuckDuckGo, Google, Bing, Yandex) with intelligent backend selection, full content extraction, and advanced filtering by time, language, geography, and content type.3MIT
- AlicenseBqualityDmaintenanceEnables web search using Perplexity AI's API, allowing users to search the web with optional recency filters and integration with Claude, Cursor, and other MCP clients.1MIT