Perplexity

官方

一个连接到Perplexity的Sonar API的MCP服务器,能够在对话式AI中实现实时的全网研究。

你可以用 Perplexity MCP 做什么?

  • 实时网络搜索 — 通过 perplexity_search 获取当前信息,支持可选的时效性过滤和域名限制。
  • 带实时来源的快速问答 — 使用 perplexity_ask 获取基于实时网络搜索的对话式回答。
  • 深度研究报告 — 通过 perplexity_research 请求详尽的多步骤分析,该工具会为长时间运行的任务流式传输进度。
  • 复杂推理任务 — 利用 perplexity_reason 进行高级问题解决和分析工作。
  • 自定义部署选项 — 在本地、通过 Docker 或作为自托管 HTTP 服务运行服务器,并支持可配置的代理和安全设置。

文档

Perplexity API 平台 MCP 服务器

Install in Cursor   Install in VS Code   Add to Kiro   npm version

这是 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 密钥

  1. API 门户 获取您的 Perplexity API 密钥
  2. 将下方配置中的 your_key_here 替换为您的 API 密钥
  3. (可选)设置超时时间:PERPLEXITY_TIMEOUT_MS=600000(默认:5 分钟)
  4. (可选)设置自定义基础 URL:PERPLEXITY_BASE_URL=https://your-custom-url.com(默认:https://api.perplexity.ai)
  5. (可选)设置日志级别: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 Desktopclaude_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_PROXYHTTP_PROXY

[!NOTE] 服务器按以下顺序检查代理设置:PERPLEXITY_PROXYHTTPS_PROXYHTTP_PROXY。如果均未设置,则直接连接互联网。 URL 必须包含 https://。典型端口为 8080312880

自托管 HTTP 模式

对于云部署或共享部署,请在 HTTP 模式下运行服务器。

环境变量

变量描述默认值
PERPLEXITY_API_KEY您的 Perplexity API 密钥必填
PERPLEXITY_BASE_URLAPI 请求的自定义基础 URLhttps://api.perplexity.ai
PORTHTTP 服务器端口8080
BIND_ADDRESS要绑定的网络接口。默认为回环地址。设置为 0.0.0.0 以在所有接口上公开。127.0.0.1
ALLOWED_ORIGINSCORS 来源(逗号分隔)。默认为空(不允许跨域浏览器请求)。设置为明确的允许列表(例如 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-prosonar-reasoning-prosonar-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_PROXYHTTPS_PROXY 设置,并确保 api.perplexity.ai 未被防火墙阻止。
  • EOF / 初始化错误:某些严格的 MCP 客户端会失败,因为 npx 将安装消息写入 stdout。请使用 npx -yq 代替 npx -y 以抑制此输出。

如需支持,请访问 community.perplexity.ai提交问题