使用说明
困惑MCP服务器
使用Perplexity的搜索API增强您的人工智能代理!
一个MCP(模型上下文协议)服务器,提供对困惑AI API的全面访问。它使LLM和AI代理能够通过标准化、安全且易于集成的协议执行快速的搜索增强查询,并进行详尽的多源深度研究。
建立在 cyanheads/mcp-ts-template,此服务器遵循模块化架构,具有强大的错误处理、日志记录和安全功能。
🚀 核心功能:困惑工具🛠️
该服务器为您的AI配备了专门的工具,以利用Perplexity的独特功能:
| 工具名称 | 描述 | 主要功能 |
|---|---|---|
perplexity_search |
使用Perplexity API执行快速的搜索改进查询。非常适合快速提问和实时信息检索。 | -按新旧程度过滤(day, week, month, year).-按域或日期范围筛选。 -优先考虑学术资源 academic 模式。-可选地包括模型的内部推理( showThinking). |
perplexity_deep_research |
对复杂主题进行详尽的多源调查,并提供详细的报告。 | -非常适合进行深入分析和生成报告。 -控制研究深度和成本 reasoning_effort (low, medium, high). |
备注:对于深度研究工具,我建议通过像Cline这样的MCP客户端允许更长的超时时间(例如180秒)。其他客户可能会在60秒后超时,这不足以进行深入研究。
目录
| 概述 | 特性 | 安装 |
|---|---|---|
| 配置 | 项目结构 | |
| 工具 | 发展 | 许可证 |
概述
困惑MCP服务器充当桥梁,允许理解模型上下文协议(MCP)的应用程序(MCP客户端)(如高级人工智能助手(LLM)、IDE扩展或自定义研究工具)与困惑人工智能API直接有效地交互。
您的工具可以利用此服务器来:
- 自动化研究:使代理能够以编程方式执行快速查找或深入研究。
- 增强人工智能推理:向法学硕士提供来自网络的最新、可验证的信息,以支持他们的回应。
- 将搜索集成到工作流中:将搜索增强生成无缝添加到任何AI驱动的任务中。
建立在坚固的基础上 mcp-ts-template,此服务器提供了一种标准化、安全且高效的方式,通过MCP标准公开Perplexity的功能。
开发者说明:此存储库包括 .微规则 该文件作为LLM编码代理的开发人员备忘单,可快速参考代码库模式、文件位置和代码片段。
特性
核心公用设施
利用 mcp-ts-template:
- 日志记录:结构化、可配置的日志记录,带有文件轮换和可选的MCP通知。
- 错误处理:集中错误处理,标准化
McpError类型。 - 配置:环境变量加载(
dotenv)通过Zod验证。 - 输入验证/消毒:用途
zod用于模式验证和专用的净化实用程序。 - 请求上下文:通过使用唯一的请求ID进行操作跟踪和关联
AsyncLocalStorage. - 类型安全:TypeScript和Zod模式强制执行强类型。
- HTTP传输:使用高性能HTTP服务器 荣誉,具有会话管理和CORS支持。
- 认证:支持JWT和OAuth 2.1的强大身份验证层。
困惑整合
- 双重API支持:与标准聊天功能API完全集成(
perplexity_search)以及更深入的研究模型(perplexity_deep_research). - 高级搜索控制:对搜索参数进行细粒度控制,包括最近度、域过滤和学术源优先级。
- 成本跟踪:一种根据令牌使用情况和模型估计API调用成本的实用程序,有助于管理费用。
- 弹性API客户端:用于与困惑API交互的专用服务,具有内置错误处理和请求/响应日志记录功能。
安装
先决条件
- Node.js(>=18.0.0)
- npm (附带Node.js)
- A. 困惑API密钥 - 从您的困惑帐户设置中获取一个
设置
-
克隆存储库:
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 |
必修的。 您的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 auth。 安全密钥(最少32个字符)。 |
"" |
MCP客户端设置
将以下内容添加到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 # Entry point: Initializes and starts the server
├── config/ # Configuration loading (env vars, package info)
│ └── index.ts
├── mcp-server/ # Core MCP server logic and capability registration
│ ├── server.ts # Server setup, capability registration
│ ├── transports/ # Transport handling (stdio, http)
│ └── tools/ # MCP Tool implementations (subdirs per tool)
├── services/ # External service integrations (Perplexity API client)
├── types-global/ # Shared TypeScript type definitions
└── utils/ # Common utility functions (logger, error handler, etc.)
要查看详细的文件树,请运行 npm run tree 或查看 docs/tree.md.
工具
困惑MCP服务器为与困惑API交互提供了两个主要工具。
| 工具名称 | 描述 | 关键参数 |
|---|---|---|
perplexity_search |
执行快速的搜索增强查询。 | query, search_recency_filter?, search_domain_filter?, search_mode?, showThinking? |
perplexity_deep_research |
进行详尽的多源研究查询。 | query, reasoning_effort? |
注意:所有工具都支持全面的错误处理和返回结构化JSON响应。
发展
构建和测试
# Build the project (compile TS to JS in dist/)
npm run build
# Clean build artifacts
npm run clean
# Generate a file tree representation for documentation
npm run tree
# Clean build artifacts and then rebuild the project
npm run rebuild
# Start the server using stdio (default)
npm start
许可证
此项目根据Apache许可证2.0获得许可-请参阅 许可证 文件以获取详细信息。
Built with the Model Context Protocol