通过Perplexity的搜索API增强您的AI代理!
这是一个MCP(模型上下文协议)服务器,提供全面访问Perplexity AI API的功能。它使大型语言模型(LLMs)和AI代理能够执行快速、增强搜索的查询,并进行详尽的多源深度研究,所有这些都通过一个标准化、安全且易于集成的协议实现。
基于cyanheads/mcp-ts-template,此服务器遵循模块化架构,具有强大的错误处理、日志记录和安全功能。
此服务器为您的AI配备了专门的工具,以利用Perplexity的独特功能:
| 工具名称 | 描述 | 关键特性 |
|---|---|---|
perplexity_search | 使用Perplexity API执行快速、增强搜索的查询。适用于快速问题和实时信息检索。 | - 按时间筛选(day,week,month,year)。<br/>- 按领域或日期范围筛选。<br/>- 使用academic模式优先学术来源。<br/>- 可选地包含模型内部推理(showThinking)。 |
perplexity_deep_research | 对复杂主题进行详尽的多源调查,提供详细的报告。 | - 适用于深入分析和报告生成。<br/>- 使用reasoning_effort(low,medium,high)控制研究深度和成本。 |
注意:对于深度研究工具,建议通过Cline等MCP客户端允许更长的超时时间(例如180秒)。其他客户端可能在60秒后超时,这不足以进行深度研究。
| 概述 | 功能 | 安装 |
|---|---|---|
| 配置 | 项目结构 | |
| 工具 | 开发 | 许可证 |
Perplexity MCP Server充当桥梁,允许理解模型上下文协议(MCP)的应用程序(如高级AI助手(LLMs)、IDE扩展或自定义研究工具)与Perplexity AI API直接高效地交互。
无需复杂的单次API集成,您的工具可以通过此服务器:
基于强大的mcp-ts-template,此服务器提供了一种标准化、安全且高效的暴露Perplexity功能的方法,通过MCP标准。
开发者提示:此存储库包括一个
.clinerules文件,作为开发者的速查表,为您的LLM编码代理提供代码库模式、文件位置和代码片段的快速参考。
利用mcp-ts-template提供的强大实用工具:
McpError类型的集中式错误处理。dotenv)并使用Zod进行验证。zod进行模式验证和专用清理工具。AsyncLocalStorage进行操作跟踪和关联。perplexity_search)和更密集的研究模型(perplexity_deep_research)。克隆仓库:
git clone https://github.com/cyanheads/perplexity-mcp-server.git
cd perplexity-mcp-server
安装依赖项:
npm install
构建项目:
npm run build
通过创建项目根目录下的.env文件来配置服务器(您可以复制.env.example)。这些变量也可以在您的MCP客户端配置中设置。
| 变量 | 描述 | 默认值 |
|---|---|---|
PERPLEXITY_API_KEY | 必需。 您的Perplexity API密钥。 | "" |
MCP_TRANSPORT_TYPE | 传输机制:stdio 或 http。 | stdio |
MCP_HTTP_PORT | HTTP服务器端口(如果MCP_TRANSPORT_TYPE=http)。 | 3010 |
MCP_HTTP_HOST | HTTP服务器主机地址。 | 127.0.0.1 |
MCP_LOG_LEVEL | 日志级别(debug,info,warn,error)。 | info |
MCP_AUTH_MODE | HTTP的身份验证方式:jwt 或 oauth。 | jwt |
MCP_AUTH_SECRET_KEY | 对于jwt认证必需。 安全的秘密密钥(至少32个字符)。 | "" |
在您的MCP客户端配置文件(例如cline_mcp_settings.json)中添加以下内容:
{
"mcpServers": {
"perplexity-mcp-server": {
"command": "node",
"args": ["/path/to/your/perplexity-mcp-server/dist/index.js"],
"env": {
"PERPLEXITY_API_KEY": "YOUR_PERPLEXITY_API_KEY_HERE"
}
}
}
}
代码库在src/目录内遵循模块化结构:
src/
├── index.ts # 入口点:初始化并启动服务器
├── config/ # 配置加载(环境变量,包信息)
│ └── index.ts
├── mcp-server/ # 核心MCP服务器逻辑和能力注册
│ ├── server.ts # 服务器设置,能力注册
│ ├── transports/ # 传输处理(stdio,http)
│ └── tools/ # MCP工具实现(每个工具子目录)
├── services/ # 外部服务集成(Perplexity API客户端)
├── types-global/ # 共享的TypeScript类型定义
└── utils/ # 常用工具函数(日志记录器,错误处理器等)
要查看详细的文件树,请运行npm run tree或参见docs/tree.md。
Perplexity MCP Server提供了两个主要工具来与Perplexity API交互。
| 工具名称 | 描述 | 关键参数 |
|---|---|---|
perplexity_search | 执行快速、增强搜索的查询。 | query,search_recency_filter?,search_domain_filter?,search_mode?,showThinking? |
perplexity_deep_research | 进行详尽的多源研究查询。 | query,reasoning_effort? |
注意:所有工具都支持全面的错误处理,并返回结构化的JSON响应。
# 构建项目(将TS编译为JS并放入dist/)
npm run build
# 清理构建工件
npm run clean
# 生成文件树表示以供文档使用
npm run tree
# 清理构建工件然后重新构建项目
npm run rebuild
# 使用stdio(默认)启动服务器
npm start
本项目采用Apache License 2.0许可 - 详情请参阅LICENSE文件。