Perplexica MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PERPLEXICA_BASE_URL | No | Base URL of Perplexica instance (default: http://localhost:3000) | |
| PERPLEXICA_CUSTOM_OPENAI_KEY | No | Optional OpenAI API key for enhanced search capabilities | |
| PERPLEXICA_OPTIMIZATION_MODE | No | Optimization mode (e.g., balanced) | |
| PERPLEXICA_DEFAULT_CHAT_MODEL | No | Default chat model (e.g., gpt-4.1) | |
| PERPLEXICA_DEFAULT_CHAT_PROVIDER | No | Default chat provider (e.g., custom_openai) | |
| PERPLEXICA_CUSTOM_OPENAI_BASE_URL | No | Base URL for custom OpenAI API | |
| PERPLEXICA_DEFAULT_EMBEDDING_MODEL | No | Default embedding model (e.g., xenova-bge-small-en-v1.5) | |
| PERPLEXICA_DEFAULT_EMBEDDING_PROVIDER | No | Default embedding provider (e.g., transformers) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_webB | Search the web using Perplexica's AI-powered search engine. Args: query: The search query or question chat_provider: Chat model provider (optional, uses env config if not provided) chat_model: Specific chat model to use (optional, uses env config if not provided) embedding_provider: Embedding model provider (optional, uses env config if not provided) embedding_model: Specific embedding model to use (optional, uses env config if not provided) optimization_mode: Speed vs quality tradeoff (optional, uses env config if not provided) output_format: Output format - "formatted" for human-readable text or "json" for raw JSON Returns: Formatted text with AI response and sources, or JSON if output_format="json" |
| search_academicC | Search academic sources using Perplexica's academic search mode. Args: query: The academic search query chat_provider: Chat model provider (optional, uses env config if not provided) chat_model: Specific chat model to use (optional, uses env config if not provided) embedding_provider: Embedding model provider (optional, uses env config if not provided) embedding_model: Specific embedding model to use (optional, uses env config if not provided) optimization_mode: Speed vs quality tradeoff (optional, uses env config if not provided) output_format: Output format - "formatted" for human-readable text or "json" for raw JSON Returns: Formatted text with AI response and sources, or JSON if output_format="json" |
| search_youtubeB | Search YouTube videos using Perplexica. Args: query: The YouTube search query chat_provider: Chat model provider (optional, uses env config if not provided) chat_model: Specific chat model to use (optional, uses env config if not provided) optimization_mode: Speed vs quality tradeoff (optional, uses env config if not provided) output_format: Output format - "formatted" for human-readable text or "json" for raw JSON Returns: Formatted text with AI response and sources, or JSON if output_format="json" |
| search_redditB | Search Reddit discussions using Perplexica. Args: query: The Reddit search query chat_provider: Chat model provider (optional, uses env config if not provided) chat_model: Specific chat model to use (optional, uses env config if not provided) optimization_mode: Speed vs quality tradeoff (optional, uses env config if not provided) output_format: Output format - "formatted" for human-readable text or "json" for raw JSON Returns: Formatted text with AI response and sources, or JSON if output_format="json" |
| writing_assistantC | Use Perplexica's writing assistant mode for writing help and research. Args: query: The writing-related query or request chat_provider: Chat model provider (optional, uses env config if not provided) chat_model: Specific chat model to use (optional, uses env config if not provided) optimization_mode: Speed vs quality tradeoff (optional, uses env config if not provided) output_format: Output format - "formatted" for human-readable text or "json" for raw JSON Returns: Formatted text with AI response and sources, or JSON if output_format="json" |
| get_available_modelsA | Get available chat and embedding models from Perplexica. Returns: JSON string containing available models |
| health_checkA | Check if Perplexica API is healthy and accessible. Returns: JSON string with health status |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_config | Get current Perplexica configuration. |
| get_status | Get Perplexica service status. |
TDQS
Scored across 7 tools
Each tool targets a clearly distinct functionality: health check, available models, and four different search sources (web, academic, Reddit, YouTube) plus a writing assistant. An agent can easily differentiate them.
All tool names follow a consistent snake_case pattern with verb-noun structure (e.g., get_available_models, search_web) or clear noun phrases (e.g., health_check, writing_assistant). No mixing of conventions.
With 7 tools, the set is well-scoped for a search and writing assistant server. It covers essential operations without being overwhelming or too sparse.
The tool surface covers the main search modes (web, academic, Reddit, YouTube), utility functions, and writing assistance. A minor gap is the lack of specific modes like image or news search, but the core workflow is well-supported.