Perplexity
官方一个连接到Perplexity的Sonar API的MCP服务器,能够在对话式AI中实现实时的全网研究。
你可以用 Perplexity MCP 做什么?
- 实时网络搜索 — 通过
perplexity_search获取当前信息,支持可选的时效性过滤和域名限制。 - 带实时来源的快速问答 — 使用
perplexity_ask获取基于实时网络搜索的对话式回答。 - 深度研究报告 — 通过
perplexity_research请求详尽的多步骤分析,该工具会为长时间运行的任务流式传输进度。 - 复杂推理任务 — 利用
perplexity_reason进行高级问题解决和分析工作。 - 自定义部署选项 — 在本地、通过 Docker 或作为自托管 HTTP 服务运行服务器,并支持可配置的代理和安全设置。
文档
Perplexity API 平台 MCP 服务器
这是 Perplexity API 平台的官方 MCP 服务器实现,通过 Agent API 和 Search API 为 AI 助手提供实时网络搜索、推理和研究能力。
远程 MCP 服务器
远程 MCP 服务器由 Perplexity 托管,是开始使用的最简单方式:工具相同,无需安装或更新任何内容。本页顶部的 Cursor 和 VS Code 按钮可一键连接。如果您的 MCP 客户端尚不支持远程服务器,请跳至下方的本地服务器设置。通过 Streamable HTTP 使用您的 Perplexity API 密钥 连接:
https://api.perplexity.ai/mcp
对于 Claude Code:
claude mcp add --transport http perplexity https://api.perplexity.ai/mcp --header "Authorization: Bearer YOUR_API_KEY"
有关手动 Cursor/VS Code 配置、从 Anthropic API 使用以及其他客户端的设置,请参阅 MCP 集成文档。
本地 MCP 服务器
获取您的 API 密钥
- 从 API 门户 获取您的 Perplexity API 密钥
- 将下方配置中的
your_key_here替换为您的 API 密钥 - (可选)设置超时时间:
PERPLEXITY_TIMEOUT_MS=600000(默认:5 分钟) - (可选)设置自定义基础 URL:
PERPLEXITY_BASE_URL=https://your-custom-url.com(默认:https://api.perplexity.ai) - (可选)设置日志级别:
PERPLEXITY_LOG_LEVEL=DEBUG|INFO|WARN|ERROR(默认:ERROR)
Claude Code
claude mcp add perplexity --env PERPLEXITY_API_KEY="your_key_here" -- npx -y @perplexity-ai/mcp-server
或通过插件安装:
export PERPLEXITY_API_KEY="your_key_here"
claude
# Then run: /plugin marketplace add perplexityai/modelcontextprotocol
# Then run: /plugin install perplexity
Codex
codex mcp add perplexity --env PERPLEXITY_API_KEY="your_key_here" -- npx -y @perplexity-ai/mcp-server
其他 MCP 客户端
大多数客户端可以使用相同的 mcpServers 包装器在其客户端配置中手动配置(如 Cursor 所示)。如果客户端使用不同的模式,请查阅其文档以了解确切的包装器格式。
对于手动设置,这些客户端都使用相同的 mcpServers 结构:
| 客户端 | 配置文件 |
|---|---|
| Cursor | ~/.cursor/mcp.json |
| Claude Desktop | claude_desktop_config.json |
| Kiro | .kiro/settings/mcp.json |
| Windsurf | ~/.codeium/windsurf/mcp_config.json |
| VS Code | .vscode/mcp.json |
{
"mcpServers": {
"perplexity": {
"command": "npx",
"args": ["-y", "@perplexity-ai/mcp-server"],
"env": {
"PERPLEXITY_API_KEY": "your_key_here"
}
}
}
}
代理设置(适用于企业网络)
如果您在工作场所运行此服务器——尤其是在公司防火墙或代理后面——您可能需要告知程序如何通过网络代理发送互联网流量。请按照以下步骤操作:
1. 获取您的代理详细信息
- 向您的 IT 部门询问您的 HTTPS 代理地址和端口。
- 您可能还需要用户名和密码。
2. 设置代理环境变量
对于 Perplexity MCP,最简单且最可靠的方法是使用 PERPLEXITY_PROXY。例如:
export PERPLEXITY_PROXY=https://your-proxy-host:8080
如果您的代理需要用户名和密码,请使用:
export PERPLEXITY_PROXY=https://username:password@your-proxy-host:8080
3. 备选方案:标准环境变量
如果您更愿意使用标准变量,我们支持 HTTPS_PROXY 和 HTTP_PROXY。
[!NOTE] 服务器按以下顺序检查代理设置:
PERPLEXITY_PROXY→HTTPS_PROXY→HTTP_PROXY。如果均未设置,则直接连接互联网。 URL 必须包含https://。典型端口为8080、3128和80。
自托管 HTTP 模式
对于云部署或共享部署,请在 HTTP 模式下运行服务器。
环境变量
| 变量 | 描述 | 默认值 |
|---|---|---|
PERPLEXITY_API_KEY | 您的 Perplexity API 密钥 | 必填 |
PERPLEXITY_BASE_URL | API 请求的自定义基础 URL | https://api.perplexity.ai |
PORT | HTTP 服务器端口 | 8080 |
BIND_ADDRESS | 要绑定的网络接口。默认为回环地址。设置为 0.0.0.0 以在所有接口上公开。 | 127.0.0.1 |
ALLOWED_ORIGINS | CORS 来源(逗号分隔)。默认为空(不允许跨域浏览器请求)。设置为明确的允许列表(例如 https://app.example.com)或设置为 * 以允许任何来源。 | (空) |
ALLOWED_HOSTS | 要接受的额外 Host 标头值(逗号分隔)。PORT 上的回环主机始终被允许。绑定到 0.0.0.0 时,请添加公共主机名。 | (仅回环) |
Docker
docker build -t perplexity-mcp-server .
docker run -p 8080:8080 -e PERPLEXITY_API_KEY=your_key_here perplexity-mcp-server
Node.js
export PERPLEXITY_API_KEY=your_key_here
npm install && npm run build && npm run start:http
服务器将在 http://localhost:8080/mcp 可访问
可用工具
perplexity_search
使用 Perplexity Search API 进行直接网络搜索。返回带有元数据的排名搜索结果,非常适合查找当前信息。支持时效过滤器(search_recency_filter)和域名限制(search_domain_filter)。
perplexity_ask
具有实时网络搜索功能的多用途对话式 AI,由 Agent API fast 预设提供支持。非常适合快速提问和日常搜索。
perplexity_research
由 Agent API high 预设支持的深度、全面研究。非常适合深入分析和详细报告。运行可能需要数分钟;服务器会流式传输运行过程,并向请求的客户端报告进度。
perplexity_reason
由 Agent API medium 预设支持的高级推理和问题解决。非常适合复杂的分析任务。
[!NOTE] 预设是 Perplexity 持续调优的托管配置(模型、搜索设置、步骤预算);请参阅预设指南。此服务器的早期版本调用旧版
sonar-pro、sonar-reasoning-pro和sonar-deep-research模型,并接受strip_thinking/reasoning_effort参数。这些参数不再属于工具模式的一部分,如果发送则会被忽略;Agent API 不生成<think>标签。
作为库使用
该包还导出了服务器工厂,用于嵌入您自己的 Node 进程:
import { createPerplexityServer } from "@perplexity-ai/mcp-server";
// Single-tenant: reads PERPLEXITY_API_KEY from the environment.
const server = createPerplexityServer("my-service");
// Multi-tenant hosts resolve the key per call instead. When a provider is
// set, the environment variable is never consulted, and a provider that
// returns no key fails the call rather than falling back.
const tenantServer = createPerplexityServer("my-service", {
apiKey: () => currentRequestApiKey,
});
将返回的服务器挂载到任何 MCP 传输层(stdio、streamable HTTP、内存)。
故障排除
- API 密钥问题:确保
PERPLEXITY_API_KEY设置正确 - 连接错误:检查您的互联网连接和 API 密钥有效性
- 找不到工具:确保包已安装且命令路径正确
- 超时错误:对于非常长的研究查询,请将
PERPLEXITY_TIMEOUT_MS设置为更高的值 - 代理问题:验证您的
PERPLEXITY_PROXY或HTTPS_PROXY设置,并确保api.perplexity.ai未被防火墙阻止。 - EOF / 初始化错误:某些严格的 MCP 客户端会失败,因为
npx将安装消息写入 stdout。请使用npx -yq代替npx -y以抑制此输出。
如需支持,请访问 community.perplexity.ai 或提交问题。